Does it just download everything
? I don't keep every single installer and I always put games into folders with better/more complete naming than GOG does. I've ended up with a few games I hate and I want nothing to do with the galaxy installers, how does it handle this stuff?
By default it downloads only the non-Galaxy-embedded installers, ie. the so-called "classic installers". Someone recently made an alternative version of gogrepo where you can download the Galaxy-embedded installers too, if you want (but I have no idea why someone would want to do that, 120MB extra in all game installers...).
You can tell gogrepo to download or not to download extras (Game Goodies) too.
By default it downloads English Windows versions of games (+extras), but you can set it to download any OS versions (Windows, Mac and/or Linux) and language versions you wish. I personally download only English Windows versions with it.
If you don't want it to download certain games in your library, IIRC gogrepo has an option to skip downloading games which are hidden in your account. So hide the unwanted games/titles in your GOG account, and tell gogrepo not to download games which have the hidden flag active. (I haven't used this option with it yet, but al least the free demo versions of games are ones I want to skip, in case I have the full game already).
The only thing is that if you really want use your own subfolder names for games, that is a problem. gogrepo uses the default ones that GOG provides. If you start changing the default folders, then gogrepo will redownload those games the next time because it thinks the game is not yet downloaded (as its subdirectory that gogrepo recognizes is missing). Also the "gogrepo clean" command will consider your changed folders as obsolete folders, and move them into a special "!orphaned" directory. So yeah, with gogrepo it is expected that you are fine with the default folder names.
Not sure how many GOG games you have, but at least for me trying to manually keep track of 1378 GOG games, whether they are up to date or not, and then download the updated files and get rid of obsolete files... far too much work. gogrepo does all that for me, checks if there are any new or changed files for any games, downloads them, and cleans up by moving old obsolete files elsewhere (from where I can then delete them when I want; but I usually glance through them first).
Plus, GOG has often updated installers or extras without giving an update notification, so you might be surprised how many updates you have already missed. Whether all those updates are really relevant to you, that may be another discussion (because gogrepo detects all changes, even if it was merely adding a new language option in the game installer).
The main discussion for gogrepo.py: https://www.gog.com/forum/general/gogrepopy_python_script_for_regularly_backing_up_your_purchased_gog_collection_for_full_offline_e/page1
Some detailed instructions for first time users I wrote at some point on how to set up gogrepo and its prerequisites: https://www.gog.com/forum/general/is_gog_downloader_still_supported_by_gog_or_are_they_scrapping_it/post39