wdzj
V2EX  ›  Claude

为节省 fable5 的 token,搞了个 skill,让 fable 指挥其他模型干活

  •  
  •   wdzj · 23h 43m ago · 1712 views

    为节省 fable5 的 token ,搞了个 skill ,让 fable 指挥其他模型干活,用了一段时间,感觉效果还不错,token 比直接使用 fable 省很多,质量没有发现怎么下降。

    下面是完整 SKILL ,直至底部:


    name: fable-fleet description: 手动调用的多智能体编排 skill 。以"当前会话所选模型"为大脑——选 Fable 就是 Fable 当大脑,选 Opus 就是 Opus 当大脑,不锁定任何模型。大脑亲自分析问题、定位根因、写《修改说明书》,再把执行任务精准分配给苦力 agent ( opus/sonnet/haiku ),结果回大脑验收。含三种模式:诊断修复(默认)、编排者(海量并行阅读)、顾问(架构主导开发)。仅在用户手动点名调用(如 /fable-fleet 、"用 fable-fleet / 用编排者模式 / 用顾问模式")时启用;即使任务看起来适合多 agent ,未被点名也不要自动触发。

    fable-fleet — 当前模型作大脑 × 精准苦力

    大脑 = 当前会话选择的模型,即主循环里的你自己。用户用 /model 选什么,什么就是大脑——不锁定 Fable 。大脑负责分析、定根因、下指令、做验收;苦力 agent 只在大脑下达明确指令之后才出场。用户手动调用时才运行。

    触发条件(重要)

    • 只在用户手动点名时运行:用户输入 /fable-fleet,或明确说"用 fable-fleet / 用编排者模式 / 用顾问模式 / 用多 agent 并行处理"。
    • 禁止自动触发:用户没点名就走普通单 agent 流程。
    • 能单干就别编队:如果任务单个 agent 直接做更快(小 bug 、单文件改动、答案在一处),明确告诉用户"这个任务不需要编队,我直接做更快",经同意后不启用本 skill 的多 agent 流程。

    大脑的确定方式

    1. 默认:你自己就是大脑。 当前会话所选模型( Fable / Opus / Sonnet / …)就是大脑,直接在主循环里思考、诊断、写说明书、验收——你拥有完整对话上下文,不需要也不应该为"大脑"角色额外派 agent 。
    2. 例外——用户点名指定大脑模型:仅当用户明确要求某个模型当大脑、且它不是当前会话模型时(如会话在 Opus 上但用户说"用 fable 当大脑"),才派一个常驻 brain agent (model 按用户指定,subagent_type: general-purpose,首条 prompt 带齐完整证据包),全程用 SendMessage 续问它——禁止开第二个大脑 agent 。
    3. 档位提醒:若当前模型的档位明显撑不起任务难度(例如用 haiku 做复杂根因诊断或架构设计),先提醒用户可用 /model 切换到更强模型、或点名指定更强的大脑,确认后再继续。

    核心纪律(效率与质量的根,违反任何一条都会又慢又贵)

    1. 不为"想"派 agent:分析、定根因、写说明书、验收全部由大脑完成(默认 = 主循环里的你自己)。禁止为"拆解 / 汇总 / 验收"派思考型 agent——那是把大脑外包,多一层冷上下文与信息衰减。
    2. 先诊断,后派工:在大脑给出根因和《修改说明书》之前,不派任何 worker。禁止"先把所有人叫起来再想怎么干"。
    3. 定向调查属于思考:诊断所需的关键代码、日志、报错由大脑亲自定向读(主循环直接用 Read/Grep 即可;定向 ≠ 全库扫描)。只有批量、机械、无判断的活(大面积改写、批量抓取、跑验证)才派 worker 。
    4. 指令与结果不衰减:给 worker 的任务书必须完整——文件/位置、改什么、为什么、验收标准,全部写进 prompt ,不偷懒简写; worker 只回结论/diff ,不回传大段原文。若启用了专职大脑 agent ,则大脑说明书原文进 worker prompt 、worker 产出原文回大脑,协调只搬运、禁止转述。
    5. 最小编制:默认 1-2 个 worker 。并行解决的是"量大",不是"题难"——难题需要的是让大脑看到完整证据链,而不是更多 agent 。
    6. worker 按难度选档,通常不高于大脑:难活 → opus(或省略 model 让 worker 继承当前会话模型,与大脑同档,仅在确需同等能力时用);常规/量大 → sonnet;纯机械 → haiku

    角色分工

    角色 是谁 职责
    大脑 Brain 当前会话模型(主循环 = 你自己);仅用户点名时才是指定模型的常驻 agent 亲自定向调查、分析根因、写《修改说明书》、分配任务、验收裁决
    苦力 Worker opus / sonnet / haiku(或省略 model 继承当前模型) 拿着任务书执行:写代码、批量改写、批量抓取、跑验证

    选择模式

    模式 适用 判据
    一:诊断修复 Diagnose & Fix (默认) Bug 、报错、行为不符预期、性能问题、"为什么不工作" 有一个待解释的"果",需要找"因"
    二:编排者 Orchestrator 海量信息收集、批量文档审查、多源交叉核查 要读的体量超出单个上下文,且子任务天然独立
    三:顾问 Advisor 新功能、大改造等有明确单线产出的开发 无谜题可解,但需要架构一致性

    问题排查类任务一律走模式一,不要用模式二的并行阅读去"分头找原因"——根因定位需要一个头脑看到完整证据链,拆散给多个 worker 只会各拿一块拼图。不确定时用 AskUserQuestion 问用户。


    模式一:诊断修复 Diagnose & Fix (默认)

    大脑亲自诊断定根因 → 《修改说明书》→ 派工执行 → 回大脑验收

    流程

    1. 大脑亲自诊断 收集证据(原始报错/异常栈、复现步骤、失败输出、近期改动、已排除假设),自己定向读相关代码/配置/日志,定位到确定的根因并说清因果链——不接受"可能是/大概是"。

    2. 写《修改说明书》

      字段 内容
      根因 一句话结论 + 因果链证据
      修改项 每项:文件/位置 → 改什么 → 为什么这样改
      验收标准 怎么验证改对了(命令、预期输出、行为)
      派工 每项派 opus 还是 sonnet;哪些可并行、哪些必须串行
    3. 派工执行( Worker ) 按说明书派 worker (通常 1 个,最多 2-3 个),说明书对应部分完整放进 worker prompt ;只有互不接触的独立改动才并行。改动很小时大脑直接自己改,不派 worker 。

    4. 大脑验收 对照验收标准审查 worker 的 diff / 测试输出:

      • 通过 → 收口交付;
      • 不通过 → 写出修正指令,用 SendMessage 继续原 worker(上下文还在,别新开)。

    模式二:编排者 Orchestrator (仅限海量并行阅读)

    大脑拆解 → 并行苦力只回结论 → 大脑汇总

    仅当"要读的体量"超出单上下文、且子任务天然独立时使用。流程:

    1. 大脑拆解:把任务切成 N 个互不依赖的子任务,每个写明读什么、回答什么问题、产出格式,并按难度标注派 opus 还是 sonnet
    2. 并行派遣:同一条消息里并行发多个 Agent 调用(只读研究用 Explore);每个 worker 只干一件事、只返回结构化结论。worker 间共用的背景(路径、约束、术语)由大脑准备一次、复制进每个 prompt ,不让各 worker 重复自行发现。
    3. 大脑汇总:收齐结论后做去重、交叉验证、裁决冲突、产出最终报告。

    规模:并行 worker 4-12 个;更大规模或需循环/分批时用 Workflow 工具(本 skill 被手动调用即构成使用 Workflow 的明确授权):

    phase('拆解')  // 省略 model → 该 agent 继承当前会话模型(即大脑档位)
    const plan = await agent(拆解 Prompt, { schema: PLAN_SCHEMA })
    phase('并行苦力')
    const results = await parallel(plan.subtasks.map(t => () =>
      agent(t.prompt, { model: t.hard ? 'opus' : 'sonnet', schema: FINDING_SCHEMA })))
    phase('汇总')
    return await agent(汇总 Prompt(results.filter(Boolean)), { schema: REPORT_SCHEMA })
    

    JSON schema 只在这种大 fan-out 时使用;小编制任务直接自然语言约定产出格式即可,别为 2 个 worker 上仪式。


    模式三:顾问 Advisor (架构主导的开发)

    大脑定架构 → 苦力实现 → 架构级难题回问大脑 → 大脑收口审查

    1. 大脑定方向:产出架构简报——关键决策、模块划分、接口契约、数据流、硬约束(哪些不能动)。
    2. 苦力实现opus(难)/ sonnet(常规)按简报实现,架构简报相关部分完整放进 prompt ;多数串行,确有独立子模块才并行。
    3. 回问:worker 遇到架构级/取舍级难题时带着具体问题返回,大脑裁决后用 SendMessage 继续该 worker (上下文保留);实现细节 worker 自己扛,别拿小事回问。
    4. 收口:实现完成后由大脑对照简报做一致性审查——不要为审查另派思考型 agent 。

    反模式清单(曾导致"又慢又贵效果差"的具体错误,逐条禁止)

    • ❌ 为拆解、汇总、验收派思考型 agent (把大脑外包) → ✅ 你自己就是大脑,直接在主循环想
    • ❌ 会话模型明明可用,却习惯性派某个固定模型当大脑 → ✅ 大脑以用户当前 /model 选择为准
    • ❌ 根因没定位就并行派 worker"分头先查" → ✅ 先诊断后派工,说明书出来前零 worker
    • ❌ 用户点名了专职大脑,却不给证据包、不给工具,或开了第二个 → ✅ 唯一常驻 + 证据先行 + SendMessage 续问
    • ❌ 给 worker 的任务书偷懒简写,或转述专职大脑的指令 → ✅ 完整/原文传递
    • ❌ 每个 worker 各自从零读同一批文件 → ✅ 公共背景大脑备一次,分发进各 prompt
    • ❌ 小任务也上 JSON schema 、全套仪式 → ✅ 最小编制,仪式只配大 fan-out
    • ❌ 验收不通过就新开 worker 重做 → ✅ SendMessage 继续原 worker ,上下文不清零
    • ❌ 把并行当智力,题越难派越多人 → ✅ 难题 = 给大脑更完整的证据,不是更多 agent
    • ❌ worker 用超出任务需要的档位,或大脑档位撑不起任务却闷头硬跑 → ✅ 按难度选档;撑不起先提醒用户换模型

    成本护栏

    • 派 worker > 3 (模式一/三)或 > 6 (模式二)之前,给用户规模/预算估计并确认。
    • worker 只回结论/diff ,不回传大段原文;能用 sonnet/haiku 的别用 opus
    • 发现大脑在干批量机械活,或 worker 在自行做架构/根因判断——分工错了,停下纠正。

    交付

    • 模式一:根因结论 + 修改说明书 + 修复 diff + 验收结果。
    • 模式二:大脑汇总的最终报告(含来源与交叉验证)。
    • 模式三:实现产物 + 架构简报 + 一致性审查结论。
    • 收尾向用户简报:本次大脑是哪个模型(即当前会话模型,或用户点名的专职大脑)、用了哪个模式、派了几个什么模型的 worker 、大脑的关键裁决、大致消耗量级。
    15 replies    2026-07-29 12:33:25 +08:00
    Yserver
        1
    Yserver  
       23h 30m ago
    claude code 自己就会选择模型吧 为什么需要一个 skill 呢
    wdzj
        2
    wdzj  
    OP
       23h 24m ago
    @Yserver 啊?咋让他自己选择模型,是配置还是选项?
    选 fable5 的时候,干完活消耗很多 fable 的用量,其他模型的用量没见用多少。
    gefangshuai
        3
    gefangshuai  
       22h 59m ago
    @wdzj #2 直接和它说就行
    v2gba
        4
    v2gba  
       22h 56m ago
    wdzj
        5
    wdzj  
    OP
       22h 47m ago
    @v2gba
    @gefangshuai
    哦哦学习了,直接给他说这个我用过,但是感觉不如 skill 分工明确,不过这个 advisor 还没有用过。
    Tory12138
        6
    Tory12138  
       21h 22m ago
    还能这么玩吗
    syyyyy
        7
    syyyyy  
       18h 27m ago
    不是直接就可以吗?开 workflow ,指定模型,主模型审核,设计计划等,另外还可以添加 codex ,让 codex 加入 review 等
    little_cup
        8
    little_cup  
       17h 29m ago
    建议这种 skill 靠个人积累。

    比如我会分策划阶段和执行阶段,策划阶段 fable 带 opus 研究,opus 反编译查系统源码很有一手,产出计划书,一般是目录,内分若干章节,如何执行、哪些阶段可以并行、每阶段测试验收标准。

    执行阶段让 sonnet 带 opus/codex 5.6/k3 干活,每一步 commit 前,调异厂商做 code review 。如果 review 超过 3 轮还有 high issue 就上报监督会话,额外子代理审查如果 over-engineering 则换厂商重写.

    一些技巧是,计划书就严格要求带 checklist 模式,要求干活子会话实时更新进度,这样每个会话如果挂了/ 429 了,监督会话可以无损切其他模型。

    监督会话(主会话)绝不能用 fable 。动辄 10 小时起的流程,上下文一长,每隔几个小时唤醒,缓存没了一次刷新就会扣 10%~20% 的 5h 额度。

    还配了一批 k3/GLM/DS 做最终完成后的定向抽检,(多语言文案让 DS 来去 AI 味,前端让 k3…)

    每个中型需求一般跑 1~2 天,最长跑了 5 天。但基本到手简单改改 UI 就可以上线了。

    但我觉得我的经验没什么可复用性,每个人习惯差天差地别。大部分人也接受不了写完需求等几天才验收的模式。
    terence4444
        9
    terence4444  
       17h 25m ago via iPhone
    切换模型有多少缓存损失?
    aisk
        10
    aisk  
       16h 56m ago
    还可以把一些简单基础的任务,外包给国产模型来干,尤其是有渠道白嫖一些国内订阅套餐。比如让 fable 写一个 plan ,让成本比较低的国模来执行,最后 fable 来验收。


    为此我还专门还写了个 agent ,可以完全无头模式在命令行下调用,并且配置多个 profile 指定不同模型,并且自带 skill ,可以装到 claude code 或者 codex 里,把它当 subagent 来用,有兴趣可以试试,欢迎 star:

    https://github.com/aisk/paimon
    OumaeKumiko
        11
    OumaeKumiko  
       10h 27m ago via Android
    @little_cup 是把其他模型接入了 Claude Code 里面么?还是让它用的 Bash 调用的其他的 CLI ,求教,现在正在研究怎么弄
    wdzj
        12
    wdzj  
    OP
       9h 31m ago
    @syyyyy
    @little_cup
    学习了,目前编码类工作主要还是 claude ,不过有专门的一个 skill 去调用 codex ,用来处理素材,但是没有介入国产模型,之前在论坛看过有人说,接入国产模型秒封,所以一致没有敢尝试。
    wdzj
        13
    wdzj  
    OP
       9h 30m ago
    @terence4444 不知道是不是我理解的缓存命中,之前命中率 90 左右,现在 80 多
    little_cup
        14
    little_cup  
       6h 30m ago   ❤️ 1
    @OumaeKumiko @wdzj 执行调 CLI 就好,不会封号。claude 、codex 、copilot 、kimi 、agy 的 CLI 都支持 -p ,然后其他国产模型用阿里的 ocr( https://github.com/alibaba/open-code-review) 接入做只读 code review
    OumaeKumiko
        15
    OumaeKumiko  
       5h 45m ago
    @little_cup #14 那这样的话岂不是得维护一套很 skill 同步系统😂要不然用着用着各个 agent 的 skill 就分叉了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3931 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 10:18 · PVG 18:18 · LAX 03:18 · JFK 06:18
    ♥ Do have faith in what you're doing.