Agent Instructions
For AI Agents
When working on this codebase:
- Always use
uvinstead ofpiporpython -m venv - Use
uv venvto create/verify virtual environments (it's idempotent - safe to run multiple times) - Use
uv syncto install dependencies frompyproject.toml - Use
uv runto execute Python scripts (no activation needed) - Use the Makefile targets (
make install,make run, etc.) when available
Examples
# Setup new environment
uv venv && uv sync
# Run tests
uv run pytest
# Run the example
uv run example.py
# Or use make targets
make install
make run
make test
Project Conventions
- Dependencies are managed in
pyproject.toml - Lock file is
uv.lock(committed to repo) - Virtual environment is
.venv/(gitignored) - Generated data files go in
data/(gitignored) - Use Polars, not Pandas - All data manipulation uses
polarsfor performance and consistency - Strongly prefer altair over matplotlib and pathlib over os.path
- Tests use plain functions, not classes - Use
def test_foo(tmp_path):notclass TestFoo
Be extremely concise. Sacrifice grammar for the sake of concision.