关于 bmad-orchestrate
bmad-orchestrate 是用于 Claude Code 的技能,可分析 BMAD 故事依赖并协调并行冲刺工作。它通过 git worktree 配合 Agent Teams 或 tmux 执行任务,并提供分析、执行和合并工作流。
主要功能
- 01分析故事依赖
- 02规划并行工作
- 03基于 worktree 执行
- 04合并分支
- 05支持 Agent Teams 和 tmux
适用场景
- 01找出冲刺中可独立处理的故事
- 02并行执行不同故事
- 03合并已完成的 worktree 分支
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ julianobarbosa/ claude-code-skills --skill bmad-orchestrate安装后在 Claude Code 中输入/bmad-orchestrate确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
DependencyPatterns.mdWorkflows/Analyze.mdExecute.mdMerge.md详细介绍
BmadOrchestrate
通过分析故事依赖关系、找出可并行执行的机会,并借助 git worktree、tmux 和 Claude Code 编排并发执行,加快 BMAD 冲刺。
自定义
执行前,请检查用户自定义内容:
~/.claude/skills/PAI/USER/SKILLCUSTOMIZATIONS/BmadOrchestrate/
如果此目录存在,请加载并应用其中的 PREFERENCES.md、配置或资源。它们会覆盖默认行为。如果目录不存在,请使用技能默认设置。
语音通知
执行工作流时,必须同时完成以下两项:
-
发送语音通知:
curl -s -X POST http://localhost:8888/notify \ -H "Content-Type: application/json" \ -d '{"message": "Running WORKFLOWNAME in BmadOrchestrate to ACTION"}' \ > /dev/null 2>&1 & -
输出文本通知:
Running the **WorkflowName** workflow in the **BmadOrchestrate** skill to ACTION...
完整文档: ~/.claude/skills/PAI/THENOTIFICATIONSYSTEM.md
工作流路由
| 工作流 | 触发语句 | 文件 |
|---|---|---|
| 分析 | "analyze for parallelization", "find parallel stories", "dependency graph" | Workflows/Analyze.md |
| 执行 | "execute parallel", "launch worktrees", "run stories in parallel" | Workflows/Execute.md |
| 合并 | "merge worktrees", "combine branches", "merge parallel work" | Workflows/Merge.md |
示例
示例 1:根据 bmad-help 输出进行完整编排
User: "Parallelize the remaining Epic 4 stories"
→ Invokes Analyze workflow
→ Reads sprint-status.yaml + epics.md
→ Builds dependency graph, identifies 4-2 ‖ 4-4 as independent
→ Presents phase plan with parallel tracks
→ User approves → Invokes Execute workflow
→ Creates worktrees, launches tmux + Claude Code instances
示例 2:仅分析
User: "Which stories can I run in parallel?"
→ Invokes Analyze workflow
→ Reads sprint status and epic definitions
→ Returns dependency graph + parallelization opportunities
→ Does NOT execute (analysis only)
示例 3:合并已完成的 worktree
User: "Merge the parallel story branches back"
→ Invokes Merge workflow
→ Lists worktree branches with changes
→ Merges sequentially, resolving sprint-status.yaml conflicts
→ Cleans up worktrees
快速参考
- **依赖检测:**读取验收标准,查找跨故事引用
- 冲突热点:
sprint-status.yaml— 始终需要手动合并 - Worktree 位置:
.claude/worktrees/(Claude Code 默认位置) - tmux 会话名称:
bmad-epic-{N},其中 N 为当前 epic 编号
完整文档:
- 依赖模式:
DependencyPatterns.md
执行模式
| 模式 | 方法 | 要求 | 隔离方式 |
|---|---|---|---|
| Agent Teams(首选) | 使用带有 isolation: "worktree" 的 Agent 工具 | 设置 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS 环境变量 | 为每个 Agent 自动创建 git worktree |
| tmux(备用) | 手动创建 worktree 和 tmux 窗格 | 已安装 tmux,且没有阻止执行的 CLAUDECODE 环境变量 | 手动创建 git worktree |
如果可用,优先使用 Agent Teams — 它会自动处理 worktree 的创建、隔离和清理。
注意事项
- 并行故事编排假定文件归属互不重叠 — 故事边界处的重叠编辑会造成合并冲突,需要手动排查。
sprint-status.yaml是合并冲突热点 — 每个并行 Agent 都会更新此文件;请串行更新或采用仅追加模式,避免竞争条件。- 每个 worktree 都会触发语音通知 — 多个并行 Agent 会互相淹没通知;请配置静默时段或使用单一通知渠道。
- 默认 worktree 位置(
.claude/worktrees/)在多个 BMAD 调用同时运行时会发生冲突 — 请按冲刺或会话 ID 分隔命名空间。 - **跨故事引用:**引用另一个故事产出的故事会假定对方已完成 — 对失效的跨故事引用需要进行明确检测。
评论
支持 Markdown