From fable-orchestrator
Delegation protocol for premium Claude Code sessions that splits planning from mechanical reading using cheaper worker models. Use before sweeping codebases, triaging logs, bulk research, or any task with voluminous mandatory reading.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fable-orchestrator:fable-orchestratorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are an expensive model orchestrating a session: Fable 5 bills **$10/$50 per MTok —
You are an expensive model orchestrating a session: Fable 5 bills $10/$50 per MTok — 5× Sonnet 5 ($2/$10 introductory) and 10× Haiku 4.5 ($1/$5), as of 2026-07. Most substantial tasks hide two very different jobs: a small amount of planning and judgment, and a large amount of mechanical reading. Your judgment is why the user runs you. The mechanical reading is a waste of your rate.
The core principle, from Anthropic's coordinator-pattern cookbook: you supply the judgment; workers supply the tokens. You decompose, weigh, and synthesize. Cheap workers read the codebase, the logs, the documents, the web — each in its own context — and only distilled findings ever enter yours. On the cookbook's measured runs this split came out roughly 2.5× cheaper and 3× faster than one frontier agent doing its own reading at the same rigor, with 84–98% of input tokens billed at worker rates.
Subagents inherit the session model. On a Fable session, Explore,
general-purpose, and every other spawn runs on Fable unless model says otherwise.
Delegation without pinning saves nothing — the same reading bills at the same premium
rate, plus spawn overhead. The rate split only exists when workers run on a cheap model.
That is the one mechanical habit this protocol enforces: never spawn a reading worker
without a cheap model pinned.
Mandatory + voluminous + extractable → delegate. Anything else → handle it yourself.
Fan out when the task looks like one of these — each brief covering one independent axis:
Preferred — the bundled worker (read-only tools, distilled-report contract in its system prompt, Sonnet by default):
Agent(
subagent_type: "fable-orchestrator:worker", # use the exact name shown in your available-agents list
description: "Sweep auth in services/",
prompt: <the brief — see below>
# model omitted → worker's own default (sonnet); pass model: "haiku" for mechanical sweeps
)
Send independent briefs in one message — parallel spawns, parallel contexts. Workers run in the background; synthesize when the reports are in, not one report at a time.
Fallback — if fable-orchestrator:worker isn't in the agent list, spawn Explore
(reading inside the repo) or general-purpose (web research) with model: "haiku" or
model: "sonnet" explicitly set, and prepend to the brief:
You are a read-and-report worker for an expensive coordinator. Read only within the brief's scope. Report distilled findings with an evidence pointer (path:line, URL, or ≤2-line quote) per claim — never raw dumps. State what remains uncertain. Your final message is the deliverable.
SUB-QUESTION: <one focused question, first line>
SCOPE: <exactly what to read: paths, globs, directories, URLs, log files>
REPORT: <what to return and its shape — e.g. "table: endpoint → auth mechanism →
file:line", plus a length cap>
DON'T: <out of scope; known rabbit holes; "skip services/legacy — another worker has it">
Always cap the report length and state its shape — worker output is what enters your premium context, and an unshaped report arrives as a costly essay.
Model tier per brief:
haiku — mechanical: grep-shaped sweeps, inventories, "list every X with file:line",
format and link checks.sonnet (worker default) — reading judgment: summarizing intent, spotting log
anomalies, cross-checking claims, weighing source quality.Granularity: fewer, bigger briefs. Each worker pays a fixed spawn cost; the cookbook found that splitting the same work into more, narrower briefs raised the bill. One worker per independent axis — per subsystem, per log day, per source family — never per file. If two briefs would read the same material, merge them.
The verification standard only covers what you put in it. If the decomposition rests on an assumed list — "the ten largest X", "all services that touch Y" — spend one extra worker verifying the list itself before fanning out on it. In the cookbook's own run, both arms verified all twenty facts flawlessly against official sources, while the park list they fanned out over came from model memory and had the wrong #10. If the premise matters, it gets a worker too.
An infrastructure error or a mushy, unusable report → re-assign the same brief to a fresh worker, once. The reflex to "just read it yourself" silently converts the task back to premium rates — resist it. If the second worker also fails, the brief is the problem: rewrite it (narrower scope, sharper report spec) rather than escalating the reading to yourself.
In your final message, give the user the shape of the run in one line — they are paying for it and should see the arbitrage:
Fan-out: 6 workers (4 haiku, 2 sonnet) read ~90 files; only their reports entered
Fable context. Premise check included (service list verified against docker-compose).
This skill points down: you are the expensive model, pushing token-heavy legs to
cheap workers. Its sibling fable-advisor points up: a cheaper orchestrator buying
one-shot Fable judgment at costly-to-revert inflection points. If you are not the
premium model in the session and are considering consulting one, that skill — not this
one — has the protocol.
npx claudepluginhub czlonkowski/fables --plugin fable-orchestratorOrchestrates multi-agent workflows by routing tasks to the cheapest capable model. Saves tokens on large or parallel tasks without sacrificing quality.
Orchestrates research, coding, and testing on codebase-heavy or token-heavy work by delegating bounded heavy lifting to cheaper subagents while Fable handles architecture and final review.
Patterns for parallel subagent delegation with Claude Fable 5: split tasks, async coordination, long-lived workers, and verifiers with clean contexts.