字节笔记本
2026年7月12日
shifu:把复杂任务分解成规格说明,让便宜模型执行
本文介绍 shifu,一个 Agent Skill,能把复杂任务分解成自包含的规格说明(spec),让昂贵模型负责规划、便宜模型负责执行,从而降低 AI 编程成本。
项目简介
vikingmute/shifu 是一个 Agent Skill,核心理念是:用最强的模型做规划,用最便宜的模型做执行。
它的工作方式是——用你最强的模型理解任务全貌、判断分解边界、写出无歧义的规格说明,然后把执行交给便宜模型。shifu 自己不实现任何代码,规格说明本身就是它的产物。
你 → /shifu (昂贵模型,负责规划)
plans/ → 001-add-auth-middleware.md (自包含规格说明)
其他 agent → 实现、测试、发布 (便宜模型,负责执行)安装
npx skills add vikingmute/shifu适用于任何支持 Agent Skills 格式的 agent。它生成的规格说明是纯 Markdown,任何 agent(或人类)都能直接使用。
使用方式
命令一览
| 命令 | 功能 |
|---|---|
/shifu <描述> | 分析 → 分解 → 生成规格 |
/shifu quick <描述> | 轻量模式:更少子任务,更少分析 |
/shifu deep <描述> | 深度模式:细粒度分解 |
/shifu execute <plan-id> | 派遣 worker 执行,审查输出 |
/shifu execute <plan-id> --model <model> | 指定模型执行 |
/shifu execute all | 按依赖顺序执行所有就绪的规格 |
/shifu execute all --model <model> | 全部执行,指定模型 |
/shifu review <plan-id> | 审查并收紧已有规格 |
/shifu status | 查看所有计划的状态 |
/shifu reconcile | 验证已完成、解除阻塞、归档已完成项 |
自动化模式(Cursor、Codex、Claude Code 等)
大多数现代 Agent 可以生成子代理。shifu 利用这一点在同一个会话中完成「规划 → 派遣 → 审查」的完整循环:
/shifu add JWT authentication to this Express app
shifu 读取仓库,展示分解方案表。你确认要规格化哪些子任务。
/shifu execute all --model gpt-5.4-mini
shifu 为每个规格派遣一个便宜的 worker,审查每个 diff 是否符合计划,逐个报告结论。合并操作仍由你决定。
下次会话运行 /shifu reconcile 刷新待办列表。
手动模式(任何 agent,任何环境)
不支持子代理?规格说明是纯 Markdown,到处都能用:
- 运行
/shifu生成规格到plans/目录 - 打开另一个会话(用更便宜的模型),粘贴或指向
plans/001-*.md - 规格包含全部上下文:文件路径、步骤、验证命令、边界
- 回来运行
/shifu reconcile验证结果
规格设计为可直接复制粘贴——所有上下文内联,不引用规划会话。
工作原理
1. 理解(Understand)
为特定任务映射足够的上下文——仓库结构、约定、构建/测试/lint 命令(这些会成为每个规格中的验证关卡)。不做不必要的全代码库审计。
2. 分解(Decompose)
将任务拆分为有序的、依赖感知的子任务。每个子任务分配一个执行策略:
| 策略 | 适用场景 | 执行方式 |
|---|---|---|
direct | 顺序依赖、低风险变更、大多数任务 | Worker 在当前目录运行 |
worktree | 高风险重构、并行探索 | Worker 在隔离的 git worktree 中运行 |
explore | 研究、代码分析、信息收集 | 只读 Worker |
3. 规格(Spec)
每个子任务一个文件,为最弱的执行者编写:
- 自包含:所有上下文内联——文件路径、当前代码摘录、仓库约定和示例片段。不会有「如上所述」
- 验证关卡:每步以命令和预期输出结尾。完成标准可机器检查
- 硬边界:明确的在范围内和不在范围内列表。用 STOP 条件代替让小模型自由发挥
每个规格会标记编写时的 git commit,用于检测漂移。
4. 审查(Review)
执行后,shifu 像技术负责人一样审查 worker 的输出——重新运行完成标准、检查范围合规性、阅读 diff。结论:批准、修订(最多 2 轮)、或阻塞并改进规格。
跨 Agent 环境支持
shifu 的执行策略(direct / worktree / explore)是语义化的,自动映射到各平台的子代理 API:
| 策略 | Cursor | Codex | Claude Code |
|---|---|---|---|
direct | generalPurpose | worker | subagent |
worktree | best-of-n-runner | worker (isolated) | subagent (worktree) |
explore | explore (readonly) | explorer | read-only subagent |
你不需要了解底层 API。通过 --model 控制成本:
/shifu execute 001 --model gpt-5.4-mini
/shifu execute all --model composer-2.5-fast与 improve 的区别
| 维度 | shifu | improve |
|---|---|---|
| 范围 | 任何复杂任务 | 代码库审计 |
| 起点 | 用户意图 | 问题发现 |
| 执行 | 自适应(direct / worktree / explore) | 始终隔离 worktree |
| 粒度 | 适应任务复杂度 | 9 个固定审计类别 |
| 方向 | 双向(构建 + 修复) | 发现问题 → 规划修复 |
shifu 是任务无关的:构建功能、重构、迁移、研究、文档、调试或任何复杂工作。它从你想做什么开始,而不是从什么有问题开始。
硬性规则
- 永不修改源代码:唯一的写入操作是写入
plans/ - 永不运行变更工作树的命令:只读、搜索和只读分析
- 永不复制密钥值:只标注位置和凭证类型
- 被要求实现时拒绝:指向规格说明
项目链接
- GitHub 仓库:https://github.com/vikingmute/shifu
- License:MIT
- 安装:
npx skills add vikingmute/shifu