Local CLI · Python 3.12
A local, CLI-based autonomous coding agent. The model reasons; deterministic software searches, executes, constrains, verifies, persists, and observes.
End-to-end agent mechanics with explicit safety boundaries and verifiable completion.
Native provider tool calls with iteration, repeat, and budget guards.
Table-driven allow, ask, and deny before execution; single-use approvals.
Git worktree by default, checkpoints, rollback, and optional Docker sandbox.
Checks pipeline and completion gate; no verified finish without evidence.
SQLite state, resume after interrupt or quota wait, full event trace.
40-task fixture suite with scripted replay in CI and optional live slices.
Terminal recording from a representative session on the payment service example.
Dependencies point downward: the loop orchestrates; tools do not call back into it.
flowchart TB
CLI[CLI_Typer_Rich]
Loop[AgentLoop]
Provider[Provider]
Tools[ToolRegistry]
Perm[PermissionEngine]
State[StateStore]
Iso[Isolation]
Verify[Verification]
Obs[Observability]
CLI --> Loop
Loop --> Provider
Loop --> Tools
Loop --> Perm
Loop --> State
Loop --> Iso
Loop --> Verify
Loop --> Obs
Tools --> Perm
Full specification: DESIGN.md
Python 3.12, strict mypy, Ruff, pytest on Ubuntu and macOS. 442 offline pytest cases in CI (live excluded), including a dedicated security suite.
Scripted replay validates the full loop in CI without API tokens; live slices are optional and quota-aware.
40 tasks plus harness smoke through the real loop, tools, and permissions via FakeProvider.
Including security tests; live provider tests are optional and excluded from the default check script.
Small repositories with check commands and reference transcripts for deterministic replay.
For model comparison under real API limits, run
codeagent eval --live --slice core12 --resume
locally. Daily Groq quotas cap throughput; runs resume across days. Treat live output as exploratory, not a published scorecard.
Baselines and reports: evals/baselines/.
Shipped through phase 8, tuned for small repositories and Groq free-tier context and quota limits.