The project's README from github.com/mosonlab/anneal. As one markdown file: README.md.
You write the specs. It clears the board.
Anneal runs chains of coding agents on your own machine. Queue tasks on the board, and each one is planned, reviewed, implemented, verified and merged unattended, on the Codex and Claude subscriptions you are already signed in to.
Install · How it works · Status · 简体中文
Live capture: Anneal clearing its own task board. This repository is built by Anneal itself.
You do one thing: write specs. You queue them on the board, Anneal breaks them down and orchestrates the work, and you walk away. A chain picks up each task and takes it the whole way through plan, plan review, implementation, two independent code reviews, fix application, regression verification, and the merge itself. When you come back, the board is clear: you read the pull requests that matter, open an agent window on the ones you care about, and iterate until you are satisfied.
In between, nothing needs you. A chain only stops when a human decision is needed: an agent asks a question through the web Inbox, a step you marked as gated waits for your call, or a run escalates. Once you answer in the Inbox, the board moves on.
The pull requests in this repository are specified, planned, reviewed,
implemented and merged by Anneal's own chains, running on one local
machine.
Chain-delivered commits carry Co-Authored-By: Anneal Chain and
X-Anneal-Run / X-Anneal-Step trailers, so you can check in the git
log which commits the chains produced.
A chain instantiates a template of steps. Each step binds an agent role: a prompt, a model, a reasoning effort and the runner CLI it executes on. The flagship Full Assurance template covers delivery in twelve steps.
The template is data, not code. Roles, prompts, models and gates are all editable, so you can define your own agent roles and reshape the chain into a workflow for your own team of agents.
Agents: a role, a prompt, a model and effort, and the runner it goes to.
An agent's title names the role only — Planner, Code Reviewer, Senior Dev — while
its slug spells out role-model-effort, so two agents that do the same job on
different models stay distinguishable at a glance.
| # | Step | Agent role | What it does | Runner | Model · effort |
|---|---|---|---|---|---|
| 1 | Write a spec | spec-opus-high |
Turns the task into the specification of record | Claude | Claude Opus 5 · high |
| 2 | Plan | plan-fable-medium |
Cuts the spec into parallel vertical tracer-bullet slices | Claude | Claude Fable 5 · medium |
| 3 | Plan review | review-coordinator-astra-medium |
Reviews every slice against the spec and the frozen base | Codex | GPT-6 Astra · medium |
| 4 | Revise plan | plan-reviser-opus-medium |
Edits the slice set against the findings, in a fresh session | Claude | Claude Opus 5 · medium |
| 5 | Implementation | plan-executor-astra-low |
Executes the slice set from the live dependency frontier and opens the pull request | Codex | GPT-6 Astra · low, with GPT-5.6 Luna · max subagents |
| 6 | Code review | code-reviewer-sol-high |
Reviews the integrated diff at the pinned base and head | Codex | GPT-5.6 Sol · high |
| 7 | Blind code review | code-reviewer-opus-medium |
Reviews the same diff again, blind to step 6's findings | Claude | Claude Opus 5 · medium |
| 8 | Apply review fixes | senior-dev-astra-low |
Dispositions every finding from both reviews and applies the adopted ones | Codex | GPT-6 Astra · low |
| 9 | Documentation | librarian-luna-xhigh |
Updates internal documentation to match the delivered code | Codex | GPT-5.6 Luna · xhigh |
| 10 | Regression verification | regression-verifier-luna-max |
Refreshes onto the target branch and reruns the regressions | Codex | GPT-5.6 Luna · max |
| 11 | Merge readiness | — | Recomputes the head, requires head-bound regression PASS evidence and a server-side ancestry check, emits an exact-head authorization | — | mechanical, no model run |
| 12 | Merge execution | merge-integrator |
Re-verifies every precondition against the live pull request, then merges | — | mechanical, no model run |
A finished chain: twelve steps done, including four autonomous merge-tail repairs during regression verification.
The design rule behind the steps: whoever wrote the code never judges
it. Authorship, review and verification run in separate sessions, the
two code reviews cannot see each other's findings, and step 8
adjudicates both. Each session starts clean, with a purpose-built
prompt and an environment the runner constructs itself: your global
agent config and skills never leak in as noise. Role bindings live in
agents/templates/compound-engineer-workflow/;
board column semantics in the
task-routing contract.
The verified release path needs:
^20.19.0 || ^22.13.0 || >=24; use 22.17.0 from
.nvmrc, with npm 10.9.2+macOS on Intel is expected to work but is not yet release-verified; Windows is unsupported.
git clone https://github.com/mosonlab/anneal.git
cd anneal
git checkout v0.8.0
npm ci
npm run setup:local
npm run build
docker compose up -d --wait --wait-timeout 60 postgres
npm run db:migrate:release -- --fresh
Then start npm run dev:api, npm run dev:runner and npm run dev:web
in three terminals, in that order, and open http://127.0.0.1:5173.
The full sequence with its preflights is in
docs/release/developer-preview.md.
Developer Preview 8 (v0.8.0): interfaces and stored data shapes may change between previews, and the only upgrade path is a fresh install. The verified targets are macOS on Apple Silicon and Linux (Ubuntu 24.04 LTS, x86_64). macOS on Intel is expected to work but is not yet release-verified; Windows is unsupported.
For the pull-request workflow, follow Add a project.
Read before pointing this at anything you care about: Anneal
launches coding CLIs with non-interactive permission bypass, as your
own user account, outside a sandbox. Use a disposable repository and a
machine you are willing to let an agent modify. Details in
docs/release/security.md.
Provider CLIs, their authentication and their plan terms stay between
you and the provider; the authoritative support statement is
docs/release/support-matrix.md.
Architecture · Install · Security · Migration and recovery · Release notes · Contributing · Support
Five skills from
mattpocock/skills (MIT,
Copyright (c) 2026 Matt Pocock) supply working text for the chain's
prompts; see THIRD_PARTY_NOTICES.md. This
snapshot is licensed under the MIT License, with its
boundary defined by public-snapshot.json.
Community link: LINUX DO — sincere, friendly, united, and professional.