├── .env.example ├── .github ├── CODEOWNERS ├── pull_request_template.md └── workflows │ ├── code-quality.yml │ └── pr-tests.yml ├── .gitignore ├── .mdformat.toml ├── .pre-commit-config.yaml ├── .python-version ├── AGENTS.md ├── CHANGELOG.md ├── Dify DSL File └── Anime Librarian.yml ├── LICENSE ├── Makefile ├── README.md ├── pyproject.toml ├── src └── anime_librarian │ ├── __init__.py │ ├── arg_parser.py │ ├── config.py │ ├── config_provider.py │ ├── console.py │ ├── enums.py │ ├── errors.py │ ├── file_renamer.py │ ├── http_client.py │ ├── main.py │ ├── models.py │ ├── py.typed │ ├── rich_core.py │ ├── rich_output_writer.py │ └── types.py ├── tests ├── conftest.py ├── fixtures │ ├── __init__.py │ └── mock_server_fixtures.py ├── mock_dify_server.py ├── test_arg_parser.py ├── test_config.py ├── test_config_provider.py ├── test_console.py ├── test_console_methods.py ├── test_core.py ├── test_core_error_handling.py ├── test_errors.py ├── test_file_renamer.py ├── test_file_renamer_error_handling.py ├── test_http_client.py ├── test_input_reader.py ├── test_integration_with_mock_server.py ├── test_main_app.py ├── test_output_formats.py ├── test_output_writer.py └── test_rich_components.py └── uv.lock /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.env.example -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/code-quality.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.github/workflows/code-quality.yml -------------------------------------------------------------------------------- /.github/workflows/pr-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.github/workflows/pr-tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.gitignore -------------------------------------------------------------------------------- /.mdformat.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.mdformat.toml -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.python-version: -------------------------------------------------------------------------------- 1 | 3.13 2 | -------------------------------------------------------------------------------- /AGENTS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/AGENTS.md -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Dify DSL File/Anime Librarian.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/Dify DSL File/Anime Librarian.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/README.md -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/anime_librarian/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/__init__.py -------------------------------------------------------------------------------- /src/anime_librarian/arg_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/arg_parser.py -------------------------------------------------------------------------------- /src/anime_librarian/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/config.py -------------------------------------------------------------------------------- /src/anime_librarian/config_provider.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/config_provider.py -------------------------------------------------------------------------------- /src/anime_librarian/console.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/console.py -------------------------------------------------------------------------------- /src/anime_librarian/enums.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/enums.py -------------------------------------------------------------------------------- /src/anime_librarian/errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/errors.py -------------------------------------------------------------------------------- /src/anime_librarian/file_renamer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/file_renamer.py -------------------------------------------------------------------------------- /src/anime_librarian/http_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/http_client.py -------------------------------------------------------------------------------- /src/anime_librarian/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/main.py -------------------------------------------------------------------------------- /src/anime_librarian/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/models.py -------------------------------------------------------------------------------- /src/anime_librarian/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/anime_librarian/rich_core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/rich_core.py -------------------------------------------------------------------------------- /src/anime_librarian/rich_output_writer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/rich_output_writer.py -------------------------------------------------------------------------------- /src/anime_librarian/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/src/anime_librarian/types.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/fixtures/__init__.py: -------------------------------------------------------------------------------- 1 | """Test fixtures package.""" 2 | -------------------------------------------------------------------------------- /tests/fixtures/mock_server_fixtures.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/fixtures/mock_server_fixtures.py -------------------------------------------------------------------------------- /tests/mock_dify_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/mock_dify_server.py -------------------------------------------------------------------------------- /tests/test_arg_parser.py: -------------------------------------------------------------------------------- 1 | """Tests for the argument parser module.""" 2 | -------------------------------------------------------------------------------- /tests/test_config.py: -------------------------------------------------------------------------------- 1 | """Tests for the config module.""" 2 | -------------------------------------------------------------------------------- /tests/test_config_provider.py: -------------------------------------------------------------------------------- 1 | """Tests for the config provider module.""" 2 | -------------------------------------------------------------------------------- /tests/test_console.py: -------------------------------------------------------------------------------- 1 | """Tests for the console module.""" 2 | -------------------------------------------------------------------------------- /tests/test_console_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_console_methods.py -------------------------------------------------------------------------------- /tests/test_core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_core.py -------------------------------------------------------------------------------- /tests/test_core_error_handling.py: -------------------------------------------------------------------------------- 1 | """Tests for error handling in the core module.""" 2 | -------------------------------------------------------------------------------- /tests/test_errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_errors.py -------------------------------------------------------------------------------- /tests/test_file_renamer.py: -------------------------------------------------------------------------------- 1 | """Tests for the FileRenamer class.""" 2 | -------------------------------------------------------------------------------- /tests/test_file_renamer_error_handling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_file_renamer_error_handling.py -------------------------------------------------------------------------------- /tests/test_http_client.py: -------------------------------------------------------------------------------- 1 | """Tests for the HTTP client module.""" 2 | -------------------------------------------------------------------------------- /tests/test_input_reader.py: -------------------------------------------------------------------------------- 1 | """Tests for the input reader module.""" 2 | -------------------------------------------------------------------------------- /tests/test_integration_with_mock_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_integration_with_mock_server.py -------------------------------------------------------------------------------- /tests/test_main_app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_main_app.py -------------------------------------------------------------------------------- /tests/test_output_formats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_output_formats.py -------------------------------------------------------------------------------- /tests/test_output_writer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/tests/test_output_writer.py -------------------------------------------------------------------------------- /tests/test_rich_components.py: -------------------------------------------------------------------------------- 1 | """Tests for the Rich-enhanced components.""" 2 | -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/laipz8200/anime-librarian/HEAD/uv.lock --------------------------------------------------------------------------------