本文へ移動
cccskills
無料GitHub で公開

fable-mode

Enforces staged execution discipline on large tasks: a written stage plan, parallel delegation where the runtime supports it, a failable verification check at each stage, and a skeptical self-review before delivery. Trigger when the user explicitly asks OR when the task objectively spans multiple files, sources, or sessions. Do NOT trigger on ordinary multi-step requests that a direct attempt handles fine (autonomous triggering only; explicit invocation always runs).

インストール方法を見る

含まれるファイル(30)

  • SKILL.md14.8 KB
  • .gitignore42 B
  • agents/fable-orchestrator.md6.0 KB
  • agents/fable-verifier.md1.9 KB
  • agents/fable-worker-haiku.md2.5 KB
  • agents/fable-worker-sonnet.md2.7 KB
  • bench/grade.py8.7 KB
  • bench/make_fixtures.py10.3 KB
  • bench/prompt_base.txt267 B
  • bench/prompt_skill.txt6.6 KB
  • bench/README.md880 B
  • bench/results.json5.3 KB
  • bench/skill_briefing.md6.1 KB
  • bench/truthA.json1.1 KB
  • bench/truthC.json488 B
  • bench/truthD.json912 B
  • BENCHMARK-2026-09-02.md5.3 KB
  • double-check/SKILL.md11.6 KB
  • EXAMPLE.md8.7 KB
  • execution-guardrails/SKILL.md3.6 KB
  • fable-fable/SKILL.md4.3 KB
  • fable-haiku/SKILL.md2.2 KB
  • fable-opus/SKILL.md8.3 KB
  • fable-sonnet/SKILL.md9.9 KB
  • install.sh817 B
  • README.md6.9 KB
  • scripts/validate_skills.py6.6 KB
  • SUPERSEDED.md1.9 KB
  • tests/test_validate_skills.py9.1 KB
  • V3-CHANGES.md3.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Fable Mode

Family version: v6 (2026-10-10).

This skill encodes execution discipline for complex work: decompose before acting, delegate where the runtime allows, verify with checks that can fail, self-critique before delivery.

A note on what this is. The skill shapes the procedure a model follows. It does not change the model's underlying capability. Coherence across long tasks and genuine self-correction live in the weights, not in a prompt. On a model that already does these well, the skill reinforces good habits. On a weaker model, it imposes structure the model would otherwise skip, but it cannot lift the model's reasoning ceiling. Treat this as a checklist, not a capability transplant.

Invocation gate

When the user names this skill — a slash command, or "deep work mode" / "be systematic" in words — RUN IT. Do not weigh whether the task looks big enough. The user's explicit invocation IS the trigger; the cost call is theirs, not yours.

The "when NOT to use this" judgment below governs only autonomous triggering — this skill deciding on its own to fire. It never overrides an explicit request. If you think the loop is overkill for what was asked, run it anyway and say so afterward.

Spawn authorization. Some hosts allow subagents only when the user asks for them, and do not count words like "thorough" as asking (observed: the cloud runtime's Agent tool, 2026-10-10). In this skill family, spawning — stage workers, a fresh verifier, double-check's checker panel — is authorized only when the user invoked this skill or a sibling (fable-opus, fable-sonnet, double-check) by slash command or by name ("fable mode", "fable on opus", "double check this"). A wording-only trigger ("deep work mode", "be systematic", "thorough") or an autonomous trigger does not authorize spawning: run the loop inline on this thread and run double-check in its self-check mode. Say which mode ran. If the host refuses a spawn anyway, do that work inline and say so.

Usage limit. When the user reports usage at their threshold (default: weekly 50% or session 75%), check in with them before continuing. Unless they say otherwise, finish inline with double-check in self-check mode.

When NOT to use this (autonomous trigger only)

If a task has one obvious correct approach, fits in a single pass, and the user did not ask for this skill, do it directly and skip this loop. Staging a trivial task wastes effort and buries the answer under ceremony. On autonomous triggering, this loop earns its cost only when a one-shot attempt would plausibly miss something.

Calibrate to the model running it

The loop's value inverts with model strength. Opus is the frontier tier and every escalation path below resolves to it. The escalation ladder is: Haiku → Sonnet → Opus → back to the user. Apply the loop at the right intensity:

  • Frontier-tier (Opus). Plans, verifies, and self-corrects natively. Do NOT narrate the loop or write a formal stage map for tasks the model would handle cleanly anyway — that is ceremony. Apply only: (a) the failable-check standard from step 3 when producing artifacts, and (b) everything in the execution-guardrails skill. Write a full stage map only for genuinely multi-session or many-file work. Opus's characteristic gaps: self-review that trusts its own introspection, and scope growth mid-run — hold the external-artifact standard and the replan budget even when the plan feels obviously right.
  • Sonnet-tier. Run the full loop. Sonnet plans decently but reliably skips step 3 — the check that can fail — and substitutes "looks right" review. Enforce step 3 hardest.
  • Haiku-tier. Run the full loop with tightened checks: every stage gets a failable check, no stage may be marked unverified without naming what check was impossible and why. Haiku under time pressure skips verification entirely; the loop exists to prevent exactly that. Accept that the ceiling is unchanged — Haiku with a checklist is still Haiku. Escalate to Sonnet or Opus rather than looping when the task needs synthesis the checks can't substitute for.

If the model cannot tell which tier it is, assume Sonnet-tier and run the full loop.

Core Loop

The loop is constant across domains. Only the verification artifact in step 3 changes by domain (see Domain-specific patterns).

1. Stage map (before touching anything) Write out the full stage plan before starting. Number the stages. Include a brief expected output for each. This is how you avoid discovering at stage 7 that you made a wrong assumption at stage 2. Update the map when what you learn invalidates what you planned. The map is a living document, not a contract.

Each stage should produce one verifiable artifact. If a stage produces nothing checkable, merge it with the next.

Replan budget. A living document is not an excuse to churn. Allow at most two full replans per run. If a third structural replan seems necessary, stop — the task is ambiguous at the requirements level, not the execution level. Surface the ambiguity to the user and get a decision before burning more stages. Renumbering or splitting a single stage does not count as a replan; reordering or rewriting the map does.

Example format:

Stage 1: [Name] → [Expected output]
Stage 2: [Name] → [Expected output]
...

2. Delegate independent work (if the runtime supports it and spawning is authorized) First check two things: whether subagent/Agent tooling exists in the current runtime, and whether the Invocation gate authorizes spawning. If either is missing (for example, a plain chat surface with no Agent tool, or a wording-only trigger), run the stages sequentially and proceed to step 3.

If both hold and stage N and stage M don't depend on each other, spawn them concurrently. Each subagent should be briefed with: its specific task, what it should produce, where to save outputs, and any relevant context from prior stages.

Wait for every result. Spawns may run in the background even when foreground is requested (observed in the cloud runtime, 2026-10-10). Do not build on, merge, fix, verify, or deliver anything that depends on a spawned agent — worker or verifier — until it has returned. If a spawn errors or fails to return, say which, do its part inline, and label that part in the delivery.

Tier routing. When the Agent tool exposes a model parameter, match the worker tier to the stage's difficulty, not to habit: Opus for stage work needing strong reasoning short of peak, Sonnet for ordinary stage reasoning, Haiku for bulk mechanical work, the orchestrating model itself only for synthesis no cheaper tier can verifiably do. Routing down-tier cuts cost as well as time — top-tier tokens should buy judgment, not file-shuffling.

Good delegation: "research X while I do Y", "process these 3 files", "verify this independently". Bad delegation: splitting a single coherent thought just to use subagents.

Keep delegation one level deep by default: a spawned subagent runs its stages sequentially and spawns nothing unless its brief explicitly authorizes a second level. Nesting multiplies cost and scatters context, and subagents may have no Agent tool of their own (cloud runtime, 2026-10-10: Haiku and Sonnet general-purpose subagents had none) — so plan all fan-out from the main thread. Authorize a second level only when a sub-part clearly needs its own fan-out and the subagent actually has an Agent tool.

3. Verify with a check that can fail Each stage must define a pass condition that an external artifact satisfies. Acceptable checks:

  • a test that runs and passes
  • a file or output that provably exists in the expected shape
  • a source actually fetched and read, not assumed
  • an output diffed against the stated spec

"I reviewed it and it looks right" is not a check. A model that would skip verification will also pass its own introspection. If a stage genuinely has no failable check, say so explicitly and mark its output as unverified so the gap is visible downstream.

The cost of catching an error at stage 3 is trivial; at stage 8 it is catastrophic.

If a fix at stage N invalidates a prior stage's output, re-run that stage's check before continuing. The loop goes forward and backward.

4. Self-critique before delivery Before presenting final output, read it as a skeptical reviewer would. Hunt for a real weakness or limitation; if one exists, fix it or flag it to the user. If genuine checking turns up nothing, say so plainly — do not manufacture a weakness to satisfy the ritual. Step 3 is the check that can fail. Step 4 is the judgment call about what remains weak after the check passes.

For high-stakes deliverables, where the runtime supports subagents and spawning is authorized, spawn a fresh verifier agent briefed only with the spec and the artifact — not your reasoning — and have it run the checks cold. Fresh eyes cannot inherit your blind spots. A Haiku or Sonnet verifier is usually enough; the checks are mechanical by design. Wait for its verdict before step 5, and emit FINAL-COLD-CHECK: yes only if it returned and checked the version you deliver.

Verify-before-flag and warning batching rules for this step live in the execution-guardrails skill and are mandatory.

5. Mandatory delivery gate: double-check After step 4 and before presenting anything to the user, invoke the double-check skill on the finished deliverable. It runs a panel of fresh checker agents (Haiku/Sonnet, Opus on disagreement) against the final artifact — claims, requirements, and the synthesis seam — fixes any FAIL, and attaches a verification summary. Without the Agent tool, or without spawn authorization, it runs its self-check mode and says so. Run it once, on the main thread — never inside a worker. This gate is not optional: the user relies on it instead of double-checking the work themselves. Do not run it twice on the same deliverable (double-check itself forbids recursion).

Close your report to double-check with a literal line:

FINAL-COLD-CHECK: yes | intermediates-only | no

yes means step 4's fresh verifier cold-checked the FINISHED deliverable — double-check then runs the seam check only. intermediates-only means verification happened at stage level but nothing checked the final write-up. no means no cold verification happened. Both of those run the full checks. Emit the line honestly: omitting it makes double-check repeat a check that already ran, and claiming yes falsely removes the only gate.


Domain-specific patterns

Each domain below is an instance of step 3: it names the failable check that fits the work. The check must name the exact command, file, or comparison — "verified" without a named artifact is a step-3 violation.

Software engineering

  • Read the entire relevant codebase section before writing a line. Failable check: list the files actually opened; any file the diff touches that isn't on the list is a gap.
  • Write tests before (or alongside) implementation, not after.
  • For large changes: plan the diff, then execute it.
  • Failable check: named test command runs and passes; at least one error path exercised and its output shown, not just the happy path. A test suite that was never run does not count as passing.

Research / knowledge work

  • Gather sources before synthesizing. Do not write as you search.
  • For each claim that matters: what's the evidence? what would falsify it?
  • Distinguish confirmed facts from inferences; flag the latter explicitly.
  • Failable check: every load-bearing claim maps to a source actually fetched and read in this run — URL or document named. A claim resting on training memory alone must be labeled as such. Absence of a web result is never itself a finding (see execution-guardrails and source-of-truth).

Data analysis

  • Understand the data shape before writing any analysis: row count, column list, and a sample printed, not assumed.
  • State your hypothesis before computing, not after seeing the numbers.
  • Failable check: quality assertions (null counts, duplicate keys, out-of-range values, total row count vs. source) run against the actual data with output shown. Any aggregate in the deliverable reconciles to a spot-checked raw slice — pick one subtotal and recompute it independently.

Documents / spreadsheets / decks

  • Build from the spec, then diff the artifact against the spec line by line.
  • Failable check: open the produced file and read it back — every required section, number, and label confirmed present. For spreadsheets: subtotals recomputed from raw rows match the report; formats (currency, headers) spot-checked on the rendered file, not the generating code.

Long-running / multi-session tasks

  • Maintain a work log: decisions made, why, what was tried and failed.
  • At the start of any continuation, re-read the work log before doing anything.
  • Define done criteria upfront so you know when to stop.
  • Failable check: done criteria are written and testable, not vibes; each continuation begins with a line confirming the log was re-read and naming any decision it changed.

Operational rules

The always-on rules — verify-before-flag, the warning threshold, and find-and-replace safety — now live in the companion execution-guardrails skill so they apply on every model and every task, not only inside this loop. Follow them there. If that skill is missing from the runtime, its three rules are restated in compressed form:

  1. Never flag a problem that hasn't been confirmed present by a direct check. Absence of evidence is not the finding.
  2. Batch minor concerns; at the threshold (default three, user-tunable), stop and surface all at once.
  3. Anchor sed/substring replaces on word boundaries (\bword\b); grep for corrupted compounds after every pass.

What this skill doesn't do

It doesn't make the underlying model smarter. Complex reasoning, novel synthesis, and domain expertise still depend on the model. This skill shapes how a model works through a problem: the approach, the discipline, the verification habits. It does not change raw capability.

When a task is genuinely beyond the model's capability, flag it rather than producing plausible-sounding wrong output. That flag must itself follow verify-before-flag: name what was attempted and where it failed, not a vague appeal to difficulty. If a stronger tier exists on the ladder, recommend it; at the top of the ladder (Opus), the gap goes to the user.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Automatic final verification pass on completed deliverables. Runs at the end of every fable-mode run — those skills invoke it before delivery. Also triggers when the user says "double check this". Uses a panel of fresh checker agents when spawning is authorized (otherwise a cold self-check) to verify the finished output — not to redo the task. Any FAIL gets fixed and re-checked before delivery.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

Always-on operational guardrails, model-independent. Apply on EVERY task and EVERY model whether or not fable-mode's staged loop is running. Three rules: verify-before-flag, warning batching, and find-and-replace safety. Trigger whenever a response would flag a problem, raise a warning, or edit files with search-and-replace.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

Run fable-mode execution discipline on Claude Fable 5.1 — the top of the escalation ladder and the strongest staged run available. Routes the task to the @fable-orchestrator agent with its model overridden to Fable (`model: "fable"`), which stages the work, delegates artifact production to @fable-worker-sonnet / @fable-worker-haiku, and cold-checks deliverables with @fable-verifier. Trigger when the user explicitly asks for thorough/systematic/"deep work" handling on the strongest model ("fable on fable", "stage this on fable", "deep work mode, fable", "run this on 5.1"), or when a fable-opus run reports the task exceeds Opus's ceiling. Benchmarked 2026-09-02: zero correctness delta on Fable 5.1 at ~1.1× tokens, ~2× wall — a provenance runner, not an accuracy runner. Do NOT use for ordinary single-pass tasks — prefer fable-opus, fable-sonnet, or fable-haiku when the task doesn't need peak reasoning. Fable is plan-included; bulk work still routes down-tier.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

Run fable-mode execution discipline on Claude Haiku. Routes the task to the @fable-worker-haiku agent, whose definition carries the staged loop with tightened verification (no bare "unverified" allowed) and an escalate-don't-improvise rule. Trigger when the user explicitly asks for thorough/systematic handling run cheaply or fast ("fable on haiku", "deep work mode but cheap", "stage this on haiku"). For bulk mechanical work. Do NOT use for tasks needing synthesis — benchmark note: at n=1 the skill's effect on Haiku swung both directions (+25 / −17); route quality-critical work to fable-sonnet instead.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

Run fable-mode execution discipline on Claude Opus — the top of the escalation ladder. Trigger when the user explicitly asks for thorough/systematic/"deep work" handling on Opus ("fable on opus", "stage this on opus", "deep work mode, opus"). When a task exceeds Opus's ceiling, report that to the user rather than escalating further.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

Run fable-mode execution discipline on Claude Sonnet. When invoked by slash command or by name, spawns a Sonnet subagent that follows the staged loop — stage plan, parallel delegation, a failable verification check at each stage, and a skeptical self-review before delivery; a wording-only request runs the loop inline on the current model. Trigger when the user explicitly asks for thorough/systematic/"deep work" handling on Sonnet.

日本語の概要は準備中です。原文の説明を表示しています。

mrtooher/fable-mode8742026年10月12日 更新

mrtooher のスキルをすべて見る

このスキルの問題を報告する