An AI coding agent controlled like a machine.
Auto Code Machine treats LLM code generation as a controlled process—not free-form writing. Inspired by mechanical control engineering, it uses design rules, small work orders, and checkpoints to keep output reliable, reviewable, and reversible.
- Design first — agree on scope and architecture before coding
- Try a small slice first — prove the design with a minimal end-to-end path
- Small work orders — split work into verifiable steps, generated as you go
- Gates by risk — light checks for safe changes, full review for risky ones
- Fix by feedback — let tests and linters guide repairs
- Remember failures — don't repeat the same mistake
Each work order is one small, verifiable task—not one tiny code edit. It defines the goal, owner, allowed files, how to verify, and how to roll back.
Auto Code Machine (ACM) adds a role-based execution layer on top of native opencode agents.
| Agent | Type | Role |
|---|---|---|
plan (native) |
Primary | Explore, plan, and review without making changes |
build (native) |
Primary | Full development work with all tools |
chief-engineer (ACM) |
Primary | Orchestrate work orders, route to subagents |
planning-engineer (ACM) |
Subagent | Decompose goals into small work orders |
code-engineer (ACM) |
Subagent | Implement code within scope using TDD |
review-engineer (ACM) |
Subagent | Read-only review of diffs, security, and permissions |
- Primary agents are full conversational agents you interact with directly.
- Subagents are specialized assistants invoked by the chief-engineer or via
@mention. - Native
planandbuildare not ACM agents — ACM starts only throughchief-engineer. - Legacy role values (
design,test,security,repair,memory) are accepted from historical data but are not active dispatch targets.
- Native opencode
planandbuildare normal TUI primary agents. - Native
planusesplan_exitto switch tobuild. - Native
builddoes not create.machineintake or work orders. - ACM starts only through
chief-engineer, which is itself a primary agent. chief-engineerdispatches work to ACM subagents:planning-engineer,code-engineer, andreview-engineer.
When using chief-engineer, the following slash commands are available:
| Command | Behavior |
|---|---|
/session |
Manage sessions and child sessions |
/model |
Override model for current session |
/goal |
Set or update the current goal |
/commit |
Auto-commit from diff, or /commit <message> to stage and commit directly |
/distill |
Generate a work pattern report (report-only) |
/dream |
Generate a memory consolidation report (report-only) |
/engineers |
Configure subagent model overrides for planning/code/review |
/new |
Start a new session |
/export |
Export session data |
Tuned for cache-friendly models like DeepSeek and MiMo to keep cost down.
- Tier routing — fast models for coding, stronger models for decisions
- Stable context — structured prompts to improve cache hits
- Tool call repair — auto-fix broken model tool calls
- Cost tracking — spend per turn, order, and session
See CONTRIBUTING.md.