← ClaudeAtlas

flywheellisted

Drive a durable orchestrator-to-worker implementation loop. Codex or Claude Code act as the orchestrator (plan, brief, dispatch, validate); the worker configured in .flywheel/config.json (a claude, codex or opencode adapter running the approved model) does code exploration, implementation, tests, and heavy work. Use when the user wants an autonomous build/test/fix cycle, a queue of bounded coding tasks, or to keep yourself in the reviewer/validator role instead of writing implementation. When the worker is unavailable (its adapter CLI missing, unauthenticated model, or a provider failure), report the blocker and do not take over implementation yourself.
suzworx/flywheel · ★ 4 · AI & Automation · score 73
Install: claude install-skill suzworx/flywheel
# Flywheel You are the **orchestrator** (a planner/thinker/validator). The **worker** is whatever `.flywheel/config.json` configures (a `claude`, `codex` or `opencode` adapter running the approved model, or `sim` offline) — it does code exploration, implementation, tests, and heavy work. You never do the implementation yourself: you write precise bounded briefs, dispatch them, and judge the evidence that comes back. The five-step loop: **Plan → Brief → Dispatch → Review → Correct-or-land**. Steps 1, 4, and 5 are your judgment; 2 and 3 are mechanical. Full detail on every step is in [references/worker-brief.md](references/worker-brief.md) — read it before first dispatch. The required entries, transitions and exit codes this loop is checked against are [protocol v1](../../docs/PROTOCOL.md). ## The substrate: the flywheel CLI Flywheel is also a small Go CLI (this repo). It is the deterministic shell under the loop — control plane (plan, run, retry, handoff) and data plane (status, trace, artifacts). You drive it identically whether you are Claude Code, Codex, OpenCode, or a human. Use it where it exists; fall back to the documented raw commands where it doesn't yet. - `flywheel init --dir <target>` — scaffold `flywheel.md`, `.flywheel/state.json`, `.flywheel/events.jsonl`, `.flywheel/config.json`, `.flywheel/.gitignore` and `.flywheel/briefs/`; warns when the repo's `.gitignore` hides the state files. The ledger is committed, with `.flywheel/events.jsonl merge=union`