Portable, stage-gated agentic-AI harness for Claude Code, Codex, and OpenCode.
An AI coding agent framework that gives LLM-powered development tools structured workflows for long-running tasks. Automaton installs markdown skills, lightweight startup integrations, and durable .agent/ state into a project so agent work survives context window limits, session restarts, and multi-step changes that would otherwise lose coherence.
- Keep project truth, current work, and handoff state outside the chat window.
- Move work that spans sessions, or needs its outcome agreed first, through explicit frame, plan, execute, and verify stages.
- Use the same workflow across Claude Code, Codex, and OpenCode.
The stages are for work that outlives one context window. Anything a single session can finish and verify is done directly, and the harness says so at session start rather than leaving you to guess.
Run from the project you want to equip:
npx @appautomaton/automaton install --codex
npx @appautomaton/automaton install --claude
npx @appautomaton/automaton install --opencodeInstall all supported host surfaces:
npx @appautomaton/automaton install --allThe target root is optional and defaults to the current directory. To install into another project, pass its path as the final argument.
Host flags pick what to install: --claude, --codex, --opencode, or --all. Without a host flag, install prepares only the shared .agent runtime and prints a note saying so. The default runs the other way on removal: install --uninstall without a host flag removes every installed host plus the shared runtime, while .agent project history is always preserved.
.agent/durable project state, steering, work artifacts, and runtime files- host skills under
.codex/skills,.claude/skills, or.opencode/skills - host hooks/plugins for context injection
Automaton is copy-based: installed skills are local plain markdown files that are refreshed from source on reinstall and can be inspected in the target project.
frame -> plan -> engineering review (optional) -> execute -> verify -> verified
The user approving SPEC.md at frame's exit is the product review; no model gate stands in for product judgment.
Most changes start at auto-frame, move through auto-plan, then continue with auto-execute and auto-verify. A full verification pass closes the change as verified (terminal), and the harness then disengages: later sessions open quiet until your next objective. Use auto-resume to re-enter existing work from a fresh session at any point.
Automaton keeps the running log of work and nothing else. .agent/ holds where the change is now (current.json), what it decided (SPEC.md, PLAN.md), what proved it, and what comes next (ROADMAP.md). It writes no description of the project: identity, architecture, and constraints stay in the repo's own README, AGENTS.md, and docs/, where they are reviewed alongside the code they describe.
Run package commands through npx @appautomaton/automaton:
npx @appautomaton/automaton status
npx @appautomaton/automaton validate
npx @appautomaton/automaton install --uninstall --codexstatus also warns when installed copies drift from the CLI source: a missing install receipt, a version skew, or an orphaned skill a newer version removed.
Contributor-only design and runtime notes live in the repository docs/ directory; they are not included in the npm package payload.
- Site: the operating model in one scroll
- npm package
- GitHub
- Issues
🖤🤍💛 Thanks to Linux Do for their vibrant AI development community. 🖤🤍💛
MIT