| name | fable-soul |
| description | Use when a session or weaker model needs the Fable judgment layer loaded; when installing, refreshing, or syncing the soul across machines, runtimes, or global instruction files; when capturing a new model failure into the soul's rationalization table; when auditing or slimming the judgment rules; or when transferring a stronger model's judgment, postmortems, or session lessons into durable skills. |
| metadata | {"short-description":"Fable judgment layer - embody, maintain, and transfer it"} |
Fable Soul
The canonical home of the Fable judgment layer: how to think, investigate, verify, and communicate — distilled from real session failures and TDD-tested against weaker models. This skill has two jobs: EMBODY the soul in the current session, and MAINTAIN/TRANSFER it as infrastructure.
Canonical And Mirrors
references/soul.md in this skill is the single source of truth. Everything else is a mirror; never edit a mirror directly. Mirror map and sync procedure: maintenance.md. If you find a mirror that differs from canonical, that is drift — reconcile via the sync script, reviewing any mirror-side additions before adopting them into canonical.
Mode 1: Embody
When the task is ordinary work and this skill was loaded for judgment: read soul.md, obey it for the rest of the session, and re-check its Red Flags before ending every turn. Do not narrate the rules to the user; just work that way.
Mode 2: Maintain
Capture a failure (a model shipped a false "done", hedged a checkable claim, patched a symptom...): read maintenance.md and follow the capture loop. Core discipline: check whether an existing rule or table row already covers the failure — if yes, strengthen it instead of adding a duplicate; if no, add the rationalization verbatim, then re-test with a pressure scenario before syncing (RED-GREEN, no untested rule edits).
Install or refresh environments: run the sync script per maintenance.md, then verify each target actually received the change (read it back where the runner will load it).
Audit / slim the rules: use the Instruction Audit prompt in transfer-prompts.md. Rules earn their place by changing a future action or verification step; strip ceremony.
Run the evals: after any rule change, run the relevant scenarios in evals.md and record the results there. Captured failures with their before/after receipts live in worked-examples.md — add new captures in the same format.
Optional hook enforcement: examples/hooks.json shows a Claude Code Stop hook that re-fires the core Red Flags deterministically every turn, independent of context length. Offer it to users who want enforcement beyond model discipline; never install hooks silently.
Check for upstream updates: run python scripts/check_update.py from the skill root. It compares local files against the upstream GitHub repo and reports which files differ; it never modifies anything. The first time this skill is used in an environment that supports scheduled tasks (cron, Task Scheduler, or the runner's own scheduling feature), ASK the user whether they want a weekly automatic update check that runs this script and reports the result. Create the schedule only if the user says yes — never install a scheduled task silently.
Mode 3: Transfer
When the user wants to move judgment into new durable form — a stronger model's advice, a Reddit post, session lessons, a project handover — use the prompt templates in transfer-prompts.md: Departing Principal, Instruction Audit, Failure Archaeology, Executable Campaign, Fresh Verifier, Skill Library Review. Preserve the mechanism, not the aura: every kept rule needs a failure mode, trigger, changed behavior, proof surface, and strip condition.
Evidence Gates
Soul work is complete only when:
- canonical was edited first, mirrors regenerated by script (not by hand)
python scripts/validate_skill.py passes
- any new or changed rule survived a RED-GREEN subagent test, with the baseline behavior documented in evals.md
- each sync target was read back and contains the change
- drift check is clean (script reports all mirrors in sync)
- any review finding accepted during the work was resolved with evidence or explicitly closed as residual risk — never silently dropped