--- description: Python tooling and dependency conventions for plugin-eval and tools/ globs: ["**/*.py", "**/pyproject.toml", "**/uv.lock"] --- # Python tooling This project uses the Astral Rust toolchain: - **uv** for package management. Run `uv run ` to execute inside the venv, `uv add ` to install. - **ruff** for linting and formatting. `uv run ruff check .` / `uv run ruff format .`. - **ty** for type checking. `uv run ty check .`. Do not use `pip`, `mypy`, or `black`. Do not edit `requirements.txt` for Python deps — those belong in `pyproject.toml`. Python ≥ 3.12 is required. Use modern syntax (`X | Y`, `list[T]`, structural pattern matching).