- Use Python 3.10–3.12 (3.11 matches CI). Avoid 3.14 for the full ML/Chroma stack until wheels catch up.
- Create a venv and install runtime deps:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt- Optional dev tools (lint + pre-commit):
pip install -r requirements-dev.txt
pre-commit installRun pre-commit run --all-files before pushing if you use the hook.
Unit tests do not require Ollama or OPENAI_API_KEY; the pipeline test forces the offline path.
python -m unittest discover -s tests -p "test*.py" -vruff check src tests
ruff format --check src testsAuto-format:
ruff format src testspip install -r requirements-dev.txt
python -m mypy -p src.regbotThis type-checks the src.regbot package (same as CI).
- Do not commit
.env, API keys, or your local vector store underdata/regbot_store/. - Keep PRs focused: one logical change per PR, update tests when behavior changes.
- See Next steps in
README.mdfor suggested features (gold eval set, stricter JSON schema, ops hardening).