# AGENTS.md Guide for coding agents working in this repository. ## Project Overview - Domain: Computer vision experiments with ArUco / ChArUco and camera calibration - Language: Python - Python version: 3.13+ (see `.python-version`, `pyproject.toml`) - Env/deps manager: `uv` - Test runner: `pytest` - Lint/format: `ruff` - Packaging mode: workspace scripts (`[tool.uv] package = false`) ## High-Signal Files - `find_aruco_points.py`: live marker detection + frame overlays - `find_extrinsic_object.py`: pose estimation with known object points - `cali.py`: charuco calibration and parquet output - `capture.py`: webcam frame capture helper - `run_capture.py`: multi-port gstreamer recorder CLI (`click`) - `scripts/uv_to_object_points.py`: UV -> 3D conversion script - `test_cam_props.py`: camera property probe test/script - Shell helpers: `gen.sh`, `cvt_all_pdfs.sh`, `dump_and_play.sh` ## Setup ```bash uv sync ``` Creates `.venv` and installs dependencies from `pyproject.toml`. ## Build / Lint / Test Commands No compile step. “Build” usually means running generation/util scripts. ### Lint ```bash uv run ruff check . uv run ruff check . --fix ``` ### Format ```bash uv run ruff format . ``` ### Tests Full suite: ```bash uv run pytest -q ``` Single test file (important): ```bash uv run pytest test_cam_props.py -q ``` Single test function: ```bash uv run pytest test_cam_props.py::test_props -q ``` Keyword filter: ```bash uv run pytest -k "props" -q ``` ### Script sanity checks ```bash uv run python -m py_compile *.py scripts/*.py uv run python run_capture.py --help uv run python scripts/uv_to_object_points.py --help ``` ## Runtime/Tooling Notes - Prefer `uv run python