TeaAgent keeps the harness thin: orchestration, tool governance, state boundaries, audit, and validation belong in this repository. Domain reasoning belongs in the model or reviewed skills.
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install --upgrade pip
python3 -m pip install -e ".[dev,oauth,telemetry]"
pre-commit installRun the same checks as CI before opening a pull request:
.venv/bin/ruff check .
.venv/bin/mypy teaagent/
.venv/bin/pytest -qPre-commit runs a smoke subset by default. For the full test suite locally:
TEAAGENT_PRECOMMIT_FULL=1 pre-commit run --all-files| Job | Blocks merge? | Purpose |
|---|---|---|
lint |
Yes | Ruff, mypy, format |
governance-gate |
Yes | Governance fuzz, plan gate, Phase 4–5 acceptance, Phase 5 unit tests |
docker-smoke |
No (continue-on-error) |
tests/test_phase6_docker.py when Docker/Podman is available |
package |
Yes | Wheel/sdist build |
Run pytest tests/test_phase6_docker.py locally before relying on container Code Mode in production.
- Keep changes small and focused.
- Add or update tests for behavior changes.
- Update docs/ADR files when changing tool governance, audit semantics, OAuth, MCP transport, or Code Mode isolation boundaries.
- Do not commit secrets,
.teaagent/runtime state, build artifacts, or cache directories. - Destructive-tool behavior must remain explicit, auditable, and approval-gated.
Do not open public issues for security-sensitive findings. Follow SECURITY.md.