fable-prompt-craft
Skill0 starsChanged 3 months agoMITView on GitHub
How to brief weaker/cheaper models so they perform near frontier level — distilled from Fable 5. Use when writing prompts for Claude Code sessions, subagents, automations, or any LLM task; and when drafting session-handover briefings. The compensating structure here is what closes most of the gap between model tiers.
In this repository4 other files it gives its agents.
- fable-architectureSkill
- fable-code-reviewSkill
- fable-debuggingSkill
- panelSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
The decision already made: Don't ask it to choose an architecture — give it the architecture and let it implement.
- Distinctive: line 35
State priority explicitly: when goals conflict: "If correctness and speed conflict, choose correctness."
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Fable Prompt Craft — Briefing Weaker Models
A weaker model with a frontier-quality briefing beats a frontier model with a lazy one. The gap between model tiers is mostly: judgment under ambiguity, edge-case anticipation, and knowing when to stop. All three can be supplied in the prompt. That's what this skill does.
The core principle: move judgment into the brief
Frontier models fill gaps correctly; weak models fill gaps plausibly. So a brief for a weaker model must contain:
- The decision already made. Don't ask it to choose an architecture — give it the architecture and let it implement. Save open-ended design for strong models or humans.
- The gold example. One concrete example of correct output beats three paragraphs of description. Two examples (a normal case + an edge case) beat almost anything.
- The failure modes, named. "Do NOT put the API key in VITE_* vars. Do NOT call the email provider synchronously inside the save hook." Weak models avoid named traps reliably. They discover unnamed traps almost never.
- The stop condition. "Done means: X passes, Y exists, Z returns 200." Without it, weak models either under-deliver or gold-plate.
Structure of a strong task prompt (in order)
CONTEXT — the system, the stack, what exists already (paths!), what must not change
TASK — one clear objective, then numbered sub-steps in execution order
CONSTRAINTS — locked rules, named failure modes, things NOT to do
EXAMPLE — gold input/output pair, or a snippet of the existing pattern to imitate
VERIFY — exact commands/checks that must pass before claiming done
REPORT — what the final message must containWhy order matters: models weight the start and end. Context first (frames everything), verification last (the last thing read is the first thing done before replying).
Rules that pay for themselves
- Be self-contained. The session/agent has none of your context. Every path absolute, every term defined, every "the usual way" spelled out. Test: could a competent stranger with no chat history execute it?
- Numbered steps for sequence, bullets for constraints. Mixing them loses ordering information.
- State priority explicitly when goals conflict: "If correctness and speed conflict, choose correctness."
- Quantify vagueness away. "A few" → "3". "Robust" → "handles empty input, duplicate delivery, and 10MB payloads." "Fast" → "under 200ms".
- Give escape hatches. "If X is not found within 5 minutes, note where you looked and move on" — otherwise agents burn an hour on a dead end or, worse, fabricate.
- Forbid the specific lies. Weak models round "mostly works" to "works". Require: "Report failures verbatim. If a step was skipped, say so. Never claim a test passed without running it."
- One task per prompt. Two loosely-related tasks in one brief → the second gets 20% effort. Chain sessions instead.
For agents/automations specifically
- Tell the agent what its output IS: "Your final message is the deliverable — include the full report, not a summary of where you put it" (or the opposite: "write to file X, reply with 5 lines").
- Structured output: specify the exact schema/format and give one filled-in example row.
- Parallel agents must have disjoint write targets. Two agents writing one file = corruption. Assign each its own output path.
- For research agents: require a link, an excerpt, and a summary per source, and cap the scope ("top 10 competitors, not exhaustive").
Session handover briefings (the handover.md protocol)
A handover is a prompt for a future model that knows nothing. It must contain, concretely:
- What is DONE (verified, with how it was verified) vs what is IN PROGRESS (exact state: "endpoint written, not yet wired to the email provider") vs NOT STARTED.
- Next 1-3 steps with exact files, commands, expected outcomes — executable without archaeology.
- Rules introduced this session (things a fresh model would violate).
- Dead ends already explored ("don't try X — fails because Y"). This is the highest-value, most-omitted section: it prevents the next session from burning an hour rediscovering a wall.
- Pivots and why.
Anti-patterns
- Politeness padding and role-play framing ("You are a world-class engineer…") — costs tokens, changes nothing. State the task.
- Prompting a weak model to "think carefully" instead of giving it the checklist a careful thinker would use.
- Ten constraints of equal weight. Rank them or mark the three that are non-negotiable.
- Asking for creativity AND compliance in the same sentence. Split: generate options first, then converge under constraints.
- Re-prompting a failed task with "try again, but better." Diagnose which part of the brief it missed and reinforce THAT.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

