.gitignore
.readthedocs.yaml
LICENSE
README.md
config.py.sample
pyproject.toml
.github/workflows/cd.yml
.github/workflows/ci.yml
docker/endless.py
docs/Makefile
docs/conf.py
docs/entities.rst
docs/index.rst
docs/installation.rst
docs/introduction.rst
docs/lb_radio.rst
docs/listenbrainz-logo.svg
docs/make.bat
docs/patches.rst
docs/requirements.txt
docs/troi-arguments.rst
docs/user-guide.rst
docs/dev/index.rst
docs/elements/index.rst
docs/elements/listenbrainz.rst
docs/elements/musicbrainz.rst
tests/__init__.py
tests/test_entities.py
tests/test_filters.py
tests/test_operations.py
tests/test_parser.py
tests/test_playlist.py
tests/test_plist.py
tests/test_sorts.py
tests/test_tag_utils.py
tests/test_utils.py
tests/listenbrainz/test_recs.py
tests/listenbrainz/test_stats.py
tests/musicbrainz/test_mbid_mapping.py
tests/musicbrainz/test_recording_lookup.py
tests/musicbrainz/test_related_artist_credits.py
tests/tools/test_area_lookup.py
troi/__init__.py
troi/cli.py
troi/core.py
troi/filters.py
troi/http_request.py
troi/logging_utils.py
troi/loops.py
troi/operations.py
troi/parse_prompt.py
troi/patch.py
troi/playlist.py
troi/plist.py
troi/print_recording.py
troi/recording_search_service.py
troi/service.py
troi/sorts.py
troi/utils.py
troi.egg-info/PKG-INFO
troi.egg-info/SOURCES.txt
troi.egg-info/dependency_links.txt
troi.egg-info/entry_points.txt
troi.egg-info/requires.txt
troi.egg-info/top_level.txt
troi/content_resolver/__init__.py
troi/content_resolver/artist_search.py
troi/content_resolver/cli.py
troi/content_resolver/content_resolver.py
troi/content_resolver/database.py
troi/content_resolver/duplicates.py
troi/content_resolver/fuzzy_index.py
troi/content_resolver/lb_radio.py
troi/content_resolver/metadata_lookup.py
troi/content_resolver/playlist.py
troi/content_resolver/py_sonic_fix.py
troi/content_resolver/subsonic.py
troi/content_resolver/tag_search.py
troi/content_resolver/top_tags.py
troi/content_resolver/unresolved_recording.py
troi/content_resolver/utils.py
troi/content_resolver/formats/__init__.py
troi/content_resolver/formats/flac.py
troi/content_resolver/formats/m4a.py
troi/content_resolver/formats/mp3.py
troi/content_resolver/formats/ogg_opus.py
troi/content_resolver/formats/ogg_vorbis.py
troi/content_resolver/formats/tag_utils.py
troi/content_resolver/formats/wma.py
troi/content_resolver/model/__init__.py
troi/content_resolver/model/database.py
troi/content_resolver/model/directory.py
troi/content_resolver/model/recording.py
troi/content_resolver/model/tag.py
troi/content_resolver/model/unresolved_recording.py
troi/external/__init__.py
troi/external/gpt.py
troi/listenbrainz/__init__.py
troi/listenbrainz/feedback.py
troi/listenbrainz/listens.py
troi/listenbrainz/recs.py
troi/listenbrainz/stats.py
troi/listenbrainz/user.py
troi/listenbrainz/unused/README.txt
troi/listenbrainz/unused/dataset_fetcher.py
troi/local/periodic_jams_local.py
troi/local/recording_resolver.py
troi/musicbrainz/__init__.py
troi/musicbrainz/mbid_mapping.py
troi/musicbrainz/mbid_reader.py
troi/musicbrainz/recording.py
troi/musicbrainz/recording_lookup.py
troi/musicbrainz/related_artist_credits.py
troi/patches/__init__.py
troi/patches/ai_jams.py
troi/patches/lb_radio.py
troi/patches/periodic_jams.py
troi/patches/periodic_jams_local.py
troi/patches/playlist_from_listenbrainz.py
troi/patches/playlist_from_mbids.py
troi/patches/playlist_from_ms.py
troi/patches/recs_to_playlist.py
troi/patches/lb_radio_classes/__init__.py
troi/patches/lb_radio_classes/artist.py
troi/patches/lb_radio_classes/blend.py
troi/patches/lb_radio_classes/collection.py
troi/patches/lb_radio_classes/country.py
troi/patches/lb_radio_classes/playlist.py
troi/patches/lb_radio_classes/recs.py
troi/patches/lb_radio_classes/stats.py
troi/patches/lb_radio_classes/tag.py
troi/patches/unused/README.txt
troi/patches/unused/area_random_recordings.py
troi/tools/__init__.py
troi/tools/apple_lookup.py
troi/tools/area_lookup.py
troi/tools/common_lookup.py
troi/tools/soundcloud_lookup.py
troi/tools/spotify_lookup.py
troi/tools/utils.py