
Brigade:为大型 Claude Code 任务自动拆分工作并分配模型
来源标题:Brigade
Brigade 是一个 Claude Code 技能,能判断项目目标是否需要多个会话,若需要则按工作内容拆分任务、为每部分编写独立提示并按风险选择模型。每个任务最后会生成一个由未参与写代码的新会话执行的审查提示。该技能支持 Pro、Max、Team 等计划,可在终端和 VS Code 中使用,且无需 API key。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
规划大型 Claude Code 任务,要像厨房里一个班组运作一场服务那样:一个规划者,每个工作环节一个工位,每个工位配对的厨师,以及任何东西送出出餐口之前的最后一道检查。Brigade 是一个 Claude Code skill。把你的项目目标交给它,它会判断这个任务是否需要不止一个会话。如果需要,它会把工作切成若干块,每块都能在一个全新的会话里完成,为每一块写一份自包含的 prompt,并按风险为每一块挑选模型。每个任务最后都会生成一份 review prompt,交给一个没有写过这些代码的全新会话去执行。它适用于任何 Claude Code 方案(Pro、Max、Team),在终端和 VS Code 里都能用,而且不需要 API key。
flowchart TD
G["你的目标或规格"] --> D{"一个会话<br/>能完成这个任务吗?"}
D -- "能" --> W["Brigade 在你当前的会话里<br/>完成工作"]
W --> RP["写一份 review prompt"]
D -- "不能,或者你要求拆分" --> M["一次性梳理项目<br/>.brigade/context.md"]
M --> P["按文件归属规划波次<br/>.brigade/plan.md"]
P --> Q["为下一波写 prompts<br/>.brigade/prompts/NN-*.md"]
Q --> S1["在 Opus 上开新会话<br/>骨架与接口"]
Q --> S2["在 Sonnet 上开新会话<br/>一个有边界的模块"]
Q --> S3["在 Haiku 上开新会话<br/>一个机械性的部分"]
S1 --> L["进度日志<br/>.brigade/progress.md"]
S2 --> L
S3 --> L
L --> N["/brigade next"]
N --> Q
L --> R["全新的 Opus 复核<br/>VERDICT 加修复 prompt"]
RP --> R
R --> F["一次修复会话"]
Loading
Brigade 由六个部分组成。每一部分都针对大型任务在单个长会话中出错的一种具体方式。
每个全新会话一开始都没有记忆,让它把整个代码库重读一遍既慢,又会让它偏离计划。Brigade 会把 .brigade/context.md 写一次。里面放的是布局、命令、约定,以及各部分之间的接口——这些接口就是契约。每个会话都先读这份地图。在示例构建中,它是 77 行。
拆分后的工作会在两个会话编辑同一个文件时出问题。Brigade 里的每一块都拥有固定的一组文件,不得碰其他任何文件。路由器、配置这类共享文件只属于恰好一块。
各块按依赖关系分组成波次。第 1 波通常是骨架和接口;后面的波次在它们背后填充模块。Brigade 只为下一波写完整的 prompts。当一波完成时,/brigade next 会读取实际构建出来的东西,并据此写出下一波的 prompts。在代码还不存在时写下的 prompts 会过时。
每份 prompt 都列出要读什么、要构建什么、拥有哪些文件、必须保持的接口、精确的完成检查,以及什么时候该停下来发问而不是靠猜。困难的决定在 prompt 里就做出,不留给执行者。看一份真实的例子:在任何代码写下之前,它就把金额解析、错误中的行号、原子导入和重复规则都钉死了。
对每一块,Brigade 都问两个问题:出错的后果有多严重,以及这一块的检查能不能立刻抓住它?
测试能立刻抓住的错误,代价只是一次重试。无声的错误则会被后面每一块继续建立在上面。如果某一块没有通过自己的检查,就把它用一个更高一级的模型重跑(Haiku,然后 Sonnet,然后 Opus),绝不在同一个模型上重跑两次。每一个选择连同理由都写进 plan.md。
一个会话审查自己的工作,会带着自己的盲区。Brigade 的最后一步,是由一个从未见过代码被写出来的 Opus 会话做复核。它读计划、地图和完整 diff,跑检查,并用 file:line 列出缺陷。它以 VERDICT: CLEAN 或 VERDICT: DEFECTS 结尾,并附一份可直接运行的修复 prompt。
.brigade/
├── context.md 项目地图与接口契约
├── plan.md 波次、文件归属、每块的模型及原因
├── progress.md 每个会话结束时报告了什么
└── prompts/
├── 01-skeleton.md
├── 02-importers.md
└── review-final.md
没有任何东西依赖一段长对话存活下来。你可以在任意两块之间停下,之后再接着做,或者把剩下的块交给队友。
每次构建都根据同一份简报构建同一个项目:ledger,一个个人财务工具包,带 SQLite 存储、两个银行 CSV 导入器、一个规则引擎、预算和一个 CLI。一次构建是普通的 Claude Code 会话(Opus 5.5);另一次是 Brigade,拆成多个全新会话。正确性用 32 个会话从未见过的隐藏测试来检验。
两次构建都通过了全部 32 个隐藏测试以及各自的测试套件。差别出现在边界情况上。Brigade 的全新上下文复核发现了代码违反规格的五种方式,然后我拿这五个输入分别测试了两次构建:
规格说错误绝不能打印 traceback。普通会话三次违反了这条规则,而它自己的测试没有抓住。
读一读发现这些问题的复核。
架构在实践中也站得住:
把它用在单个会话做不完的任务上:很多子系统,或者长到上下文会被填满。也把它用在有风险的工作上,你希望由一个没写过这些代码的会话来复核。
在小任务上,它就只是把活干完,然后给你留一份 review prompt。
拆分比在一个会话里做完要跑更多会话,所以在单个会话就能应付的任务上,它会更慢,也更消耗你的方案额度。只在任务确实需要时才让它拆分。
安装
VS Code,一键:把这个链接粘贴到浏览器里。被询问时添加 marketplace,选择 Install for you,然后在提示时重启 Claude。
vscode://anthropic.claude-code/install-plugin?plugin=brigade&marketplace=rajvardhan19/brigade
VS Code,手动:在 Claude Code 聊天里输入 /plugins。在 Marketplaces 标签页里添加 rajvardhan19/brigade,然后从 Plugins 标签页安装 brigade。
claude plugin marketplace add rajvardhan19/brigade
claude plugin install brigade@brigade
作为普通 skill 使用,不用插件系统:把 plugins/brigade/skills/brigade 复制到 ~/.claude/skills/brigade。
命令名。本 README 把命令写作 /brigade <goal> 和 /brigade next,这是普通 skill 的名字。作为插件安装时,它们带有
(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。