Claude Code skill that makes Fable 5 up to 76% cheaper — routes token-heavy work to Sonnet/Haiku subagents, keeps Fable focused on judgment. By Jon Orozco.
SaferSkills independently audited jro-fable (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Fable 5 costs $10/$50 per MTok — 2x Opus, 3.3x Sonnet, 10x Haiku. Every token Fable spends reading files, scanning repos, or reducing logs is 10x what Haiku would charge for the same work. Spend Fable tokens on judgment. Spend cheaper tokens on everything else.
Before orchestrating, ask: does this task actually need Fable? If Sonnet or Opus can handle it end-to-end, use that model directly — no orchestration layer needed. This skill only applies when the task genuinely requires Fable-tier reasoning AND has delegatable subtasks.
| Work type | Model | Why |
|---|---|---|
| File search, grep, directory listing, log scanning | model: "haiku" | Pattern matching, no reasoning needed. 10x cheaper. |
| Inventory / summarize a codebase or doc set | model: "haiku" | Bulk reading with structured extraction. |
| Bounded edits (≤3 files, known scope) | model: "sonnet" | Good code generation at 3.3x cheaper. |
| Multi-file implementation, refactoring | model: "sonnet" | 79.6% SWE-bench. Right capability/cost balance. |
| Test execution, browser checks, log reduction | model: "sonnet" | Fable decides direction; Sonnet executes and reports. |
| Security review, deep code analysis | model: "sonnet" | Adequate for most review; Fable re-checks high-impact findings. |
| Task decomposition, architecture, tradeoffs | Fable (self) | This is what you're paying for. |
| Conflict resolution across subagent reports | Fable (self) | Cross-cutting judgment. |
| Final diff review, risk assessment, user synthesis | Fable (self) | Truth-judgment stays here. |
Haiku breaks even only if its error rate stays below 20%. If a Haiku agent's output requires Sonnet-level correction more than 1 in 5 times, the re-prompting cost negates the savings. Monitor and escalate.
Use the Agent tool with the model parameter:
Agent({
description: "Scan repo for auth patterns",
model: "haiku",
prompt: "Search /path/to/repo for authentication..."
})For parallel independent work, send multiple Agent calls in a single message — they run concurrently (capped at ~16).
For structured multi-stage work, use the Workflow tool with pipeline() (no barrier, items flow through stages independently) or parallel() (barrier, waits for all before proceeding).
Subagents cannot spawn subagents — this is enforced. If you need hierarchical delegation, use Workflows.
Every subagent prompt must specify the return format. Subagent results inject into Fable's context verbatim — uncontrolled prose wastes tokens.
See DELEGATION.md for named presets with output contracts for each delegation type.
General rules for all subagent returns:
STOP_REASON: (scope-complete | hit-stop-condition | ambiguous).UNCERTAINTY: if any doubt about the findings.Write delegated prompts as if the subagent just walked into the room. Include only:
reasonable retry, or the task needs out-of-scope files — stop and report instead of improvising.
Pass relevant file slices, not re-read instructions. If you already have a file in context, include the relevant lines in the prompt rather than asking the subagent to re-read it — that's double-paying for the same tokens.
Delegation has overhead: the routing turn costs Fable tokens, and the return packet consumes context. Not every task pays off.
Keep on Fable when:
Delegation break-even rule: Subagent work should consume 2K+ tokens to justify the routing overhead. Below that, do it directly.
Treat subagent reports as leads, not facts. Before using a high-impact finding, opening a PR, or telling the user the work is done:
Let lighter agents gather signal. Keep truth-judgment with Fable.
Treat as soft defaults, not rigid rules:
evidence changes the plan.
owns shared-file coordination, integration, and final review.
tests, browser flows, screenshots, and log reduction. They report commands, failures, likely causes, and whether failures look flaky, environmental, or real.
small fixes. Fable picks the most trustworthy diagnosis.
synthesizes findings and makes merge/restructure decisions.
| Model | Input/MTok | Output/MTok | vs Fable |
|---|---|---|---|
| Fable 5 | $10.00 | $50.00 | 1x |
| Opus 4.8 | $5.00 | $25.00 | 2x cheaper |
| Sonnet 4.6 | $3.00 | $15.00 | 3.3x cheaper |
| Haiku 4.5 | $1.00 | $5.00 | 10x cheaper |
Worked example: 10 research subagent calls, 2K input + 500 output each.
| Setup | Cost | Savings |
|---|---|---|
| All Fable | $0.55 | — |
| Fable orchestrator + Sonnet subagents | $0.24 | 57% |
| Fable orchestrator + Haiku subagents | $0.13 | 76% |
Prompt caching on stable system content (0.1x read price after first call) compounds these savings further.
Use assets/fable-orchestrator.excalidraw when a visual explanation helps.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.