bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
翻译准备中
A Claude skill that activates Fable-style agentic behavior: explicit multi-stage planning, sub-agent delegation, and self-verification.
翻译准备中
技能Python · ShellGitHub @mrtooher自行安装运营者未确认
试用过了吗? 点一下就好,无需登录。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
安装型项目无需部署域名也可验证。个人仓库可通过 GitHub 登录验证,组织仓库可使用上方的仓库验证文件。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Current: v6.1 (2026-10-24) — adds an error-first judgment check and a dissent check to step 3 for prose with no answer key (see
bench/judgment/). Live skills:fable-mode(rootSKILL.md),fable-opus,fable-sonnet,double-check,execution-guardrails. Ladder: Haiku → Sonnet → Opus → the user.fable-fable,fable-haikuand the v3agents/routing are retired — see SUPERSEDED.md. Sections below that describe them are kept as history.
Execution discipline for Claude on large tasks: a written stage map, delegation to named agents where the runtime allows, a verification check at every stage that can actually fail, a skeptical self-review, and a mandatory cold double-check before anything is delivered.
It is a checklist, not a capability transplant. Benchmarked three times so the README can say what it does and does not do (see Evidence).
Haiku → Sonnet → Opus → Fable 5.1 → the user
One skill per rung, same core loop, tuned to that tier's known failure mode:
| Skill | Model | Use it when | Known gap it guards |
|---|---|---|---|
fable-mode | whatever is running | default; adapts intensity to the model | — |
fable-fable | Claude Fable 5.1 | the deliverable needs an audit trail (worklog, reproducible checks, flagged judgment calls) or spans sessions | none measured — a provenance runner, not an accuracy runner |
fable-opus | Claude Opus | peak synthesis short of Fable; orchestrates Sonnet/Haiku workers | trusts its own introspection; scope growth |
fable-sonnet | Claude Sonnet | balanced default for thorough work | skips the failable check, substitutes "looks right" |
fable-haiku | Claude Haiku | bulk, cheap, parallel mechanical work | skips verification under time pressure |
Two always-on companions:
execution-guardrails — verify-before-flag, warning batching, word-boundary
find-and-replace. Every model, every task, whether or not the loop runs.double-check — the delivery gate. A panel of fresh checker agents (Haiku for
mechanical checks, Sonnet for requirements, Opus to adjudicate) attacks the
finished artifact. Every fable runner calls it before handing anything over.Field feedback on v2 (r/claudeskills): telling a model in prose to spawn a worker
almost always runs the task inline. So v3 moves the discipline into real agent
definitions under agents/:
fable-orchestrator — no Write/Edit tool. It cannot produce artifacts; every
one must come from a named worker. Opus by default; fable-fable runs the same
definition with model: "fable" (per-invocation override, documented for Claude
Code and confirmed in Cowork).fable-worker-sonnet / fable-worker-haiku — one bounded assignment, exact output
path, named pass condition, evidence in the report.fable-verifier — read-only; gets the spec and the artifact, never the producer's
reasoning.The skills shrink to routers. Full history in V3-CHANGES.md.
Three benchmark rounds, deterministic graders, tasks built with unstated traps
(duplicate rows, grep-invisible getattr("calc" + "_total"), errata chains superseded
by meeting notes, a real federal data file to fetch or fabricate).
| Tier | Effect of the skill | Source |
|---|---|---|
| Fable 5.1 | 0 delta — 100/100 in all 16 paired runs (n=2/cell, 4 tasks incl. open-ended real-data fetch); ~1.1× tokens, ~2× wall | BENCHMARK-2026-09-02.md |
| Opus / Sonnet | 0 delta on closed graded tasks; real on open-ended research — Opus+skill fetched and parsed the NIAAA state dataset, Opus baseline shipped synthetic trend lines | July 2026 rounds |
| Haiku | real but noisy: +25 / −17 across rounds; raises the floor on mechanical diligence, cannot supply synthesis | July 2026 rounds |
| v6.1 judgment check (checker only) | Sonnet checkers: tie, 24/24 both arms. Haiku checkers on subtler errors: 30/30 vs 28/30 — both misses a strawman "case against". Small sample. | bench/judgment/ |
Read: the loop's value inverts with model strength. On Fable 5.1 it buys provenance.
On Opus it buys real sources over plausible ones. On Haiku it buys verification the
model would otherwise skip — sometimes. The harness is in bench/; rerun it.
Claude Code (user scope — skills to ~/.claude/skills/):
git clone https://github.com/mrtooher/fable-mode.git && cd fable-mode && ./install.sh
Cowork / claude.ai: Settings → Capabilities → Skills → add each <name>/SKILL.md
(root SKILL.md is fable-mode). The agents are not loadable there; the skills detect
that and fall back to inline mode, saying so.
Do not install anything from
agents/as a skill. Those files are agent definitions: second-person system prompts whose frontmatter carriestools:andmodel:. Loaded as a skill they land in the main thread and assert things about it that are false there —fable-orchestratorin particular tells its reader it has no Write tool and must delegate to worker agents that do not exist on a skill-only surface. The result is a stall, or an inline run narrating a delegation that never happened — the exact failure v3 exists to prevent. Agents go inagents/, skills go in skills.
Folder name must equal the name: field in each SKILL.md or the skill will not trigger.
SKILL.md fable-mode (default, adaptive)
fable-fable/SKILL.md Fable 5.1 runner
fable-opus/SKILL.md Opus runner (orchestrator route)
fable-sonnet/SKILL.md Sonnet runner
fable-haiku/SKILL.md Haiku runner
execution-guardrails/ always-on rules
double-check/ delivery gate
agents/ orchestrator, sonnet worker, haiku worker, verifier
bench/ fixtures generator, graders, prompts, results.json
BENCHMARK-2026-09-02.md Fable 5.1 results
EXAMPLE.md worked before/after: the failable check catching a bug
V3-CHANGES.md why delegation became structural
install.sh Claude Code installer
One obvious approach that fits in a single pass → do it directly. Staging a trivial task buries the answer under ceremony. The loop earns its cost only when a one-shot attempt would plausibly miss something — or when you need to show your work.