This will require a robust arg parser, but on the upside, every single script's __main__ block may be removed.
Use git's subcommands (verbs) as a model. Examples:
dita tag <dir>
dita search --release <int>
dita search --artist <str|id>
dita search --artist <str> --release <str>
dita rate --release <int> --rating <int>
dita filter/explore (?)
dita visualise
dita dump --collection
Achieving this is one step towards a single-binary installation.