... or make CLI version of your tasks and let the system mangement daemon ("cron" or in my case systemd timers) handle it.

For clarity make a subfolder called "tasks" or something like that.

Then you get consolidate logging, retries and all kind of stuff for free in a battle-hardened setup and a standardized way to lookup what is enabled and what is not.

I remember a project that could convert any python script to a python CLI. This was taken to another level by another project that could convert any python CLI to a GUI.

Can anyone help me with this?

Fire can basically do the first step (object -> CLI):

https://github.com/google/python-fire

Gooey can do (CLI -> GUI):

https://github.com/chriskiehl/Gooey