fable-mode

Enforces plan-gate, acceptance-test, and verification discipline for Claude Code coding sessions.

106|9|Updated Jul 6, 2026
One-click install
npx skills add https://github.com/cozytab/fable5-mode --skill fable-mode-cozytab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fable-mode
Source: https://github.com/cozytab/fable5-mode
Command: npx skills add https://github.com/cozytab/fable5-mode --skill fable-mode-cozytab

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Non-frontier models often fail through process rather than capability: coding before planning, declaring work done without running acceptance tests, fanning out subagents without verification, and stopping mid-task. This Skill supplies a structured work-discipline protocol plus optional Claude Code hooks that mechanically enforce those rules. ## Core Features & Use Cases - Six-lever protocol: plan gate with machine-checkable acceptance tests in docs/SPEC.md, small-card execution in fresh contexts, adversarial self-check with fresh-eyes verifiers, end-to-end real-product verification, external SPEC/PROGRESS memory, and checkpointed long tasks. - Mechanical enforcement hooks: four Python hooks (SessionStart profile injector, PreToolUse spawn guard with model ceiling, PostToolUse fail-streak reminder, Stop close guard with evidence-on-close) that block ledger-free delegation and unfinished turn endings, armed per project via a .fable/ directory. - Model routing and concurrency tiers: quality/balanced/frugal routing profiles and conservative/throughput concurrency tiers, selected per round through auditable LEDGER.md directive lines. - Use Case: On a multi-file feature build, you write docs/SPEC.md and .fable/LEDGER.md task cards; the hooks then block any subagent dispatch without an open card and block ending the session while cards lack evidence notes. ## Quick Start Ask Claude Code to use fable mode for this task, or run install.sh and create a .fable/LEDGER.md with task cards to enable mechanical enforcement in your project.

Frequently Asked Questions about fable-mode

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enable fable-mode in Claude Code?

Invoke it explicitly by saying "use fable mode" or "rigorous mode" in a session, or clone the repo into your Claude skills directory and run install.sh to register the hooks. It never auto-triggers just because a task is large or important.

How do the fable-mode enforcement hooks work?

Four Python hooks registered in settings.json fire on SessionStart, PreToolUse, PostToolUse, and Stop events. They activate only in projects containing a .fable/ directory, blocking subagent spawns without ledger cards and turn endings with unchecked or evidence-free cards.

Does fable-mode work on Windows or without Python?

The skill protocol itself works anywhere Claude Code runs, but the hooks require python3 (standard library only) on a POSIX environment such as macOS, Linux, or WSL. Native Windows is untested for the enforcement layer.

Can fable-mode make a weaker model match a frontier model?

No. It closes the discipline gap, not the capability gap: planning, verification, and delegation structure are enforced, but long reasoning chains and large-codebase comprehension remain model-bound. It degrades gracefully via decomposition and best-of-N judging.

How do I turn off fable-mode enforcement for a project?

Delete the project's .fable/ directory or mark every ledger card closed with - [x] or - [~]. You can also add a PAUSED: reason line to the ledger to suspend enforcement mid-round while keeping the model ceiling active.

Why does the close guard block my session from ending?

The Stop hook blocks turn endings while .fable/LEDGER.md contains open - [ ] cards or checked - [x] cards lacking a substantive -- evidence: note. Finish and verify the cards, defer them with reasons, or add a PAUSED line for unrelated work.