@DannyHamilton wrote great answer, so i'll just complement it.
can they pick any valid transactions with significantly low fee?
It's possible. In addition, they can choose to exclude specific transaction or even doesn't include any transaction. But in practice, miner and pool only do the latter (doesn't include any transaction) to make sure hashrate isn't wasted (usually only for few seconds) while their software choose transaction which should be included.
is it manually adding a list of transactions? or automatically?
It also could be both, where it's done automatically by default but they can add specific transaction manually. For example, luxor tech mining pool occasionally include non-standard (but valid) transaction on their mined block. Here's an example,
https://twitter.com/LuxorTechTeam/status/1620921129287430144.