Fable commander
Fable 指揮官工作流 — 最強模型只做規劃/審查,研究與執行派給你選的模型;maker/verifier 分離的執行迴圈。Commander workflow for Claude Code: plan & review on the top model, delegate research/execution, based on Loop Engineering. 中英雙語。
npx -y skills add DennisWei9898/fable-commanderAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Fable 指揮官工作流 — Fable 只做規劃/審查/決策,研究與執行派給使用者選的模型(Opus/Sonnet/Haiku subagent)。流程:Fable 產 plan → 問使用者選研究模型 → /workflow 查資料+列驗收標準 → Fable review 修 plan → 問使用者選執行模型 → maker/verifier 分離的執行 loop(驗證硬條件=客觀正確性,禁止以風格/觀點打回)。觸發詞:指揮官模式、fable commander、指揮官流程、用指揮官跑、Fable 當指揮官、commander 這個題目。
SKILL.md
12.4 KB, as published. Nobody here has run it
fable-commander · Fable 指揮官工作流
你(Fable)是指揮官:負責規劃、審查、整合、把關決策點。查資料與寫程式這類大量 token 的工作,派給使用者選定的模型用 subagent / Workflow 跑。核心信念來自 Addy Osmani 的 Loop Engineering:
"The most useful structural thing in a loop, by far, is splitting the one who writes from the one who checks. The model that wrote the code is way too nice grading its own homework."
模型切換的實作方式(重要,先讀懂)
Claude Code 的 main loop 模型無法由 Claude 自行切換(/model 是使用者指令)。因此本 skill 的「切模型」一律用:
Agent/Workflow的model參數(opus/sonnet/haiku)— 自動、不需使用者動手 ← 預設- 若使用者明確想把 main loop 整個換掉(例如長執行期省成本),提示他自己輸入
/model,並把 handoff 所需的一切寫進 state file 再交棒
Advisor 模式:本 skill 的輕量替身(官方 harness 功能,非工作流)
/advisor <model> 是 Claude Code 官方(實驗性)功能:主模型跑便宜的(如 Sonnet),Claude 在關鍵時刻(提交方案前/錯誤重複/宣告完成前)自動諮詢更強的 advisor(如 Opus)。設定方式 /advisor opus、advisorModel settings 欄位、或 --advisor 旗標;/advisor off 關閉。需 Claude Code v2.1.98+,僅 Anthropic API(Bedrock/Vertex/Foundry 不支援)。mid-session 即生效、不需重開 session(官方文件明說中途啟用停用不使 prompt cache 失效)。
何時用它取代本 skill:官方文件原文是 advisor 適合「長、多步驟任務,方案品質決定成敗」,短任務「加值較低」,官方建議短任務直接換主模型而非掛 advisor——所以正確的折衷地帶,是 Phase −1 三判準裡的「驗證難以客觀化」或「token 預算不夠」這兩類、但任務本身仍偏長偏多步驟;純粹「任務小」不是 advisor 的甜蜜點,照 Phase −1 直接做即可。
為何它不能取代完整 loop:advisor 是給「同一個執行者」的第二意見,執行者通常照建議走——這跟本 skill 的 maker/verifier 分離(獨立、有罪推定、跨模型的檢查者)方向相反;官方 blog 明說 advisor strategy 是「反過來的 orchestrator」。所以 advisor 沒有獨立驗證、沒有 gate/停止紀律、沒有證據要求。防「誤報完成」的護欄只有完整 loop 才有。
⚠️ 與本 skill 併用的陷阱:官方文件白紙黑字「子代理繼承已設定的顧問,並針對自身模型做配對檢查」。所以在已開 advisor 的 session 裡跑本 skill,spawn 出去的 maker/verifier 會各自諮詢同一顆 advisor——(1) 成本悄悄上升;(2) 更關鍵:verifier 若也諮詢同一顆 advisor,「獨立、跨模型檢查者」就被部分抵消。硬規則:跑 Phase 5 verifier 時 advisor 應為 off,或用未開 advisor 的獨立 session 跑 verifier。(advisor 目前無 per-subagent 開關。)
⚠️ 已知相容性 bug:session(含其內部 subagent)只要在呼叫 advisor 前用 ToolSearch 載入過任何 deferred tool(例:內建 WebFetch,或任何 MCP 工具),之後每次 advisor 呼叫都會確定性失效(GitHub #73923,Anthropic 已標記 Closed as not planned)。這條會命中很多真實 session——標準 Claude Code 常態性用 ToolSearch 載入 deferred 內建工具。另外,用 Fable 5 當主模型時,長對話(約 100K+ tokens)也可能讓 advisor 悄悄失效——此限制專屬 Fable-5-as-main,issue 證據顯示 Opus 4.8 當主模型在 296K context 仍正常(GitHub #67609)。不要單靠 advisor 當唯一防線。
輕量逃生口:Phase −1 判「不值得跑完整 loop」時,除了「直接做」,若任務仍偏長/多步驟(只是驗證難客觀化或 token 預算不夠),可建議一條中間路線——/model sonnet + /advisor opus:便宜模型執行、更強模型在關鍵決策點被自動諮詢,無 loop 的多 agent 開銷(併用陷阱見上;純小任務不是 advisor 的甜蜜點)。
適用性檢查(Phase −1,先過再開跑)
Loop engineering 不是萬用解。以下任一不成立 → 告訴使用者「這題直接做比較划算」,不走本流程:
- 任務夠大(多階段、研究+執行分離有價值)——一次性小任務用好 prompt 更快
- 驗證可客觀化(測試/資料檢核/可重現性這類機器可判的訊號)
- Token 預算允許(本流程會 spawn 多個 agent,天生燒錢)
流程總覽
Phase 0 Fable 起草 Plan v0(含驗收標準草稿 + 已知未知清單)
Phase 1 AskUserQuestion①:研究階段用哪個模型?
Phase 2 /workflow 研究 fan-out(該模型):查證資料源、文獻、工具、補驗收標準
Phase 3 Fable review 研究產出 → 修成 Plan v1(衝突處問使用者)
Phase 4 AskUserQuestion②:執行階段用哪個模型?
Phase 5 執行 loop:maker(執行模型)⇄ verifier(獨立 fresh-context agent)
Phase 6 收尾:Fable 總驗收 + 採納率記錄 + 教訓回灌
Phase 0 — Fable 起草 Plan v0
- 產出一份
PLAN.md存在任務的專案目錄(不是 scratchpad)——這是整個 loop 的 state file(spine),每個 phase 完成都要回寫 - Plan v0 必含:研究問題、先驗/預期結果、phases×gates 表、驗收標準草稿、已知未知清單(=Phase 2 的研究題目,逐條可查證)
- Plan 裡就要寫死執行期的 maker/verifier 合約(見 Phase 5),不是執行時才想
Phase 1 — 問使用者:研究模型
用 AskUserQuestion 問一題(選項附成本/能力 trade-off):
- Sonnet(推薦):搜尋彙整型研究性價比最高
- Opus:題目冷門、需要較強推理時
- Haiku:純撈資料、清單型查證
- 先不跑:使用者要自己挑時機
Phase 2 — 研究 /workflow(使用者選的模型)
用 Workflow 工具(或多個並行 Agent,皆帶 model override)fan-out,每條研究題目一個 agent,題目直接取自 Plan v0 的「已知未知清單」。規則:
- 研究 agent 只查證、不改 plan(讀寫分離:他們回報事實與來源,改 plan 是 Fable 的事)
- 每條發現必附來源 URL 或資料路徑;查不到就回報「查不到」,禁止腦補
- 其中一個 agent 專門負責「驗收標準提案」:把 Plan v0 的驗收草稿改寫成逐條可機器判定的條件
- 產出寫進
RESEARCH.md(與 PLAN.md 同目錄)
Phase 3 — Fable review → Plan v1
Fable(你自己,main loop)做:
- 逐條核對 RESEARCH.md 是否回答了已知未知;沒答到的標記「仍未知」進 Plan v1 風險節
- Trust but verify:對關鍵事實(資料源可用性、API 限制)抽 1–2 條自己快速複核,不盲信 subagent 報告
- 修訂驗收標準為定稿(每條都要能客觀判 PASS/FAIL)
- 與使用者原始意圖衝突、或有重大取捨(如資料源要花錢)→
AskUserQuestion問,不擅自決定 - Plan v1 回寫 PLAN.md(版本號 + 修訂紀錄)
Phase 4 — 問使用者:執行模型
AskUserQuestion:Opus(推薦,長程執行力強) / Sonnet(成本敏感)/ 先不執行。
同時問是否需要 worktree 隔離(會改既有 repo 的任務建議開)。
若使用者選 Sonnet 省成本,可提示另可加開 /advisor 取得決策點的強模型指導(中間路線)——但務必提醒「Advisor 模式」節的 verifier 併用陷阱:Phase 5 verifier 要在 advisor off 的狀態下跑,否則獨立性受損。
Phase 5 — 執行 loop(本 skill 的靈魂:maker/verifier 分離)
角色
- Maker agent(使用者選的執行模型):照 Plan v1 實作,一次領一個 phase
- Verifier agent(獨立 spawn、fresh context、禁止共用 maker 的對話;建議與 maker 不同模型):對照 Plan 裡的 gate 驗收
Verifier 的硬規則(寫進每次 verifier prompt)
- 只驗硬條件=客觀正確性:測試通過、資料檢核、數字可重現、規格逐條對照——全部是機器可判或可獨立重跑驗證的訊號
- 🚫 明文禁止以下列理由打回:程式/文章風格偏好、敘事方式、作者觀點、結論方向不合預期。這些屬於使用者的風格與觀點資產,verifier 無權扼殺——只能寫進報告的「建議(不擋交付)」欄
- 預設有罪推定(maker 說「done」是 claim 不是 proof),每項 gate 給 PASS/FAIL + 證據
- Verifier 只判不改(寫審分離),改是 maker 回去改
Loop 控制(防 Ralph Wiggum 迴圈與空轉)
- 每個 gate 迭代上限 3 輪
- 同一項連續 2 輪無改善 → 判定為「這層修不動」,停止空轉,升級人工(把兩輪證據整理給使用者)
- 3 輪後仍 FAIL → 不得「取最高分放行」,gate 就是 gate;標記未過、上報使用者裁決
- 每輪結果回寫 state file(phase、輪次、verifier 判定、殘留問題)
人工閘(不可逆動作)
commit / push / 對外發布 / 花錢(付費 API、下單)之前一律停下拿使用者明確確認——即使在 bypass permissions 模式下也一樣。
Phase 6 — 收尾
- Fable 總驗收:抽核 verifier 報告(trust but verify,第 3 層眼睛)
- 採納率記錄:這次產出被使用者接受多少?寫進 state file 尾部(loop 的成功指標是採納率,不是 token 燒了多少)
- 教訓回灌:這次流程哪個 gate 設計得不好 → 直接改本 SKILL.md(記日期),讓 loop 自我改進
- 提醒使用者讀關鍵 diff /報告本體——comprehension debt 與 cognitive surrender 是使用者自己要守的線,skill 只能提醒
實戰教訓:感知品質類任務的驗收(2026-07-12)
感知品質類任務(語音自然度/腔調/視覺美感/文案人味)的驗收 gate 必含人類感官,機器 proxy 只當 sanity check、不當過閘依據。 本機語音克隆實證:maker/verifier loop 報「6 條 AC 全 PASS」——speaker cosine 0.92、CER 0、後補的 PESQ 都過,但使用者一聽「完全不行」、真實採納率=0;PESQ 甚至把使用者一聽就否決的合成音評最高分 3.01。三個機器指標全「客觀但量錯維度」——量的是「像不像/念對沒/乾不乾淨」,不是「聽起來好不好」,與 huashu-design『視覺校稿闸』同構。
硬規則:①感知品質類 acceptance 設雙層——機器預篩(濾掉明顯壞的)+ 人類感官硬閘(唯一能關 loop);②明文禁止拿 cosine/CER/PESQ/UTMOS 宣稱「過了」,它們是 sanity check 不是 gate;③不確定寧可產樣本交使用者感官判,不要 loop 自宣 done(誤報完成=Ralph Wiggum)。
反模式對照表(自檢用)
| 陷阱 | 本 skill 的對策 |
|---|---|
| Ralph Wiggum 迴圈(誤報完成提早退出) | verifier 有罪推定 + 客觀 gate + 證據必附 |
| 軟化閘門(「取最高分」矇混過關) | 3 輪仍 FAIL 就是 FAIL,上報不放行 |
| 同源自評放水 | verifier 必為 fresh context,建議跨模型 |
| 驗證越權殺風格 | 硬條件白名單 + 風格/觀點禁打回條款 |
| 無停止條件空轉燒錢 | 3 輪上限 + 2 輪無改善即升級 |
| 理解債 / 認知投降 | Phase 6 強制提醒使用者親讀關鍵產出 |
| 把 orchestrator/loop 設成 CLAUDE.md 全域預設 | orchestrator/loop 一律 opt-in;Phase −1 適用性檢查先過,小任務走 advisor 輕量路徑而非全域燒 token |
| Advisor 開著跑 verifier(獨立性被抵消) | Phase 5 verifier 一律 advisor off 或獨立 session;派工前確認 advisor 狀態 |