diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..fd16e82 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,22 @@ +# Agent Instructions: PhotoTools3 + +## Environment Setup +Requires a `.env` file with the following variables: +- `llm_api_key`: API key for the LLM provider. +- `llm_api_base_url`: Base URL for the LLM API. +- `llm_default_temperature`: Float value for temperature. + +## Development Toolchain +- **Dependency Management**: Use `uv`. +- **Python Version**: Requires Python `>=3.14`. +- **Testing**: Run `pytest` to execute the test suite in `test/`. +- **Linting & Formatting**: Use `ruff` and `black`. + +## CLI Usage +The primary entry point is the `photools3` command: +- `photools3 keywords `: Extracts keywords and captions from a single image. + +## Architecture & Logic +- **`src/photools3/photo.py`**: Core image processing logic, including resizing, RGB conversion, and generating base64 JPEG encodings specifically for LLM vision compatibility. +- **`src/photools3/llm_session.py`**: Manages the workflow of sending processed images to the LLM and parsing results. +- **Configuration**: The list of keywords to extract is maintained in `config/keywords.txt`.