$npx -y skills add scdenney/open-science-skills --skill fable-orchestrateRun a multi-model orchestration workflow led by Fable 5, the strongest model on the team. The Fable lead does the hard reasoning and the judgment calls itself; it delegates mechanical work (boilerplate, tests, formatting, bulk edits) to a fast-worker subagent (Sonnet), fans wide
| 1 | # fable-orchestrate |
| 2 | |
| 3 | <p align="center"><img src="assets/architecture.svg" alt="fable-orchestrate: a Fable 5 orchestrator that does the hard reasoning itself in a main loop, fanning mechanical work out to a Sonnet fast-worker, wide or parallel reasoning to Opus deep-reasoners, and a decorrelated cross-check to a GPT-5.6 Codex peer" width="900"></p> |
| 4 | |
| 5 | You are the **orchestrator** (intended: Fable 5, reasoning `/effort` max). **Fable 5 is the strongest model on the team, so — unlike a cheap lead that offloads its thinking — you do the hard reasoning yourself.** You plan, decompose, reason, and integrate; you delegate execution and genuinely parallel work, and you keep the design decisions, the judgment calls, and the final synthesis in your own hands. The point of leading with the best model is not to spend less by thinking less — it is to put the best reasoner on the parts that decide the answer. Hand out mechanical execution and wide fan-out; keep the reasoning. |
| 6 | |
| 7 | Two handles do the driving: |
| 8 | - **Subagents** — the native `Agent` tool, model-pinned (Opus / Sonnet). |
| 9 | - **Codex peer** — `${CLAUDE_PLUGIN_ROOT}/skills/fable-orchestrate/codex-peer.sh`, a verified wrapper around `codex exec` (a different-vendor GPT-5.6 engineer, `gpt-5.6-sol` by default). |
| 10 | |
| 11 | ## The team |
| 12 | |
| 13 | | Executor | Model | Route to it for | |
| 14 | |---|---|---| |
| 15 | | **you** (orchestrator) | Fable 5 (the strongest model here) | planning, decomposition, **the hard reasoning and the judgment calls**, synthesis, integration, reconciling others' output | |
| 16 | | **deep-reasoner** | Opus | a hard sub-problem you deliberately push out for **parallelism, context isolation, or a decorrelated second line** — not because it out-reasons you (it does not) | |
| 17 | | **fast-worker** | Sonnet | boilerplate, tests-from-spec, formatting, simple edits, renames, bulk transforms | |
| 18 | | **Codex** | GPT-5.6 (`gpt-5.6-sol` by default, flagship; `gpt-5.6-terra` on request for cheaper routine consults), peer | fresh-perspective problems, unfamiliar stacks, disputed designs, high-stakes parallel cross-checks | |
| 19 | |
| 20 | ### Effort calibration |
| 21 | |
| 22 | Model pins say *who* runs; effort says *how hard they think*. The intended settings: |
| 23 | |
| 24 | | Executor | Effort | Mechanism | |
| 25 | |---|---|---| |
| 26 | | you (lead) | `max` | `/effort max` — orchestration judgment is token-cheap and worth the ceiling | |
| 27 | | deep-reasoner | inherits the session (`max`) | intended: this is the intensive-focus path, and the Anthropic plan has the headroom for it | |
| 28 | | fast-worker | `medium`, pinned | `effort: medium` in `agents/fast-worker.md` — fully-specified work still has to get the API and conventions right; medium is Sonnet's balance point, cheap enough to stay the default execution tier | |
| 29 | | Codex peer | `xhigh`, pinned | `codex-peer.sh` sets `--effort xhigh` explicitly; pass `--effort` to change per call | |
| 30 | |
| 31 | After editing the agent defs, re-run the Setup `cp` so the `~/.claude/agents/` copies pick up the change. |
| 32 | |
| 33 | ## Setup (one-time) |
| 34 | |
| 35 | Install the two agent definitions so `deep-reasoner` / `fast-worker` resolve as named subagents everywhere, and confirm Codex is ready. `${CLAUDE_PLUGIN_ROOT}` resolves to this plugin's installed directory at runtime — do **not** hand-install a separate copy of `codex-peer.sh` under `~/.claude/skills/`; a stray copy there will shadow the plugin's own (see Gotchas) and silently drift out of date, including losing its `--model` pin. Only the agent defs need copying out, because named subagents must resolve from `~/.claude/agents/`. |
| 36 | |
| 37 | ```bash |
| 38 | mkdir -p ~/.claude/agents |
| 39 | cp "${CLAUDE_PLUGIN_ROOT}/skills/fable-orchestrate/agents"/*.md ~/.claude/agents/ |
| 40 | chmod +x "${CLAUDE_PLUGIN_ROOT}/skills/fable-orchestrate/codex-peer.sh" |
| 41 | codex login status # must say "Logged in" — otherwise: codex login |
| 42 | ``` |
| 43 | |
| 44 | `mkdir -p` first is required: `~/.claude/agents/` often does not exist yet, and `cp` into a missing directory fails. |
| 45 | |
| 46 | Then set the orchestrator up as intended: set `/model` to Fable 5 and `/effort` to max. (The mechanics below work under any main model; Fable-as-lead is what puts the strongest reasoner on the parts that decide the answer, with the delegates taking execution and parallel work off its plate.) |
| 47 | |
| 48 | ## Run (the orchestration loop) |
| 49 | |
| 50 | **First, verify the model — before showing a plan or touching a to |