Breezing — 团队执行模式
后方兼容别名:以团队执行模式运行 harness-work。
用途
breezing 是一个团队协作别名技能,用于让 harness-work 以团队执行模式运行。触发词为 breezing、チーム実行、全部やって。
快速参考
breezing # 询问范围后执行
breezing all # 完成 Plans.md 全部任务
breezing 3-6 # 完成任务 3〜6
breezing --codex all # 用 Codex CLI 完成全部任务
breezing --parallel 2 all # 2 并行完成全部任务
breezing --no-discuss all # 跳过计划讨论完成全部任务
breezing --auto-mode all # 在兼容的父会话中尝试 Auto Mode rollout
选项
| 选项 | 说明 | 默认值 |
|---|---|---|
| all | 以全部未完成任务为对象 | - |
| N 或 N-M | 指定任务编号/范围 | - |
| --codex | 用 Codex CLI 委托实现 | false |
| --parallel N | Implementer 并行数 | auto |
| --no-commit | 抑制自动提交 | false |
| --no-discuss | 跳过计划讨论 | false |
| --auto-mode | 显式启用 Auto Mode rollout。仅当父会话的 permission mode 兼容时才考虑采用 | false |
执行方式
该技能委派给 harness-work。按以下配置执行 harness-work:
- 将参数原样传递给 harness-work
- 强制团队执行模式 — Lead → Worker spawn → Reviewer spawn 的三者分离
- Lead 专注于 delegate — 不直接写代码
- Auto Mode 视为 opt-in — --auto-mode 作为在兼容父会话中 rollout 用的标志被接受
与 harness-work 的区别
| 特征 | harness-work | breezing(本技能) |
|---|---|---|
| 并行手段 | 根据所需数量自动分割 | Lead/Worker/Reviewer 的角色分离 |
| Lead 的角色 | 协调+实现 | delegate(专注协调) |
| 审查 | Lead 自我审查 | 独立 Reviewer |
| 默认范围 | 下一个任务 | 全部 |
团队构成
| 角色 | Agent 类型 | 模式 | 职责 |
|---|---|---|---|
| Lead | (self) | - | 协调、指挥、任务分配 |
| Worker ×N | claude-code-harness:worker | bypassPermissions(现行)/ Auto Mode(follow-up)* | 实现 |
| Reviewer | claude-code-harness:reviewer | bypassPermissions(现行)/ Auto Mode(follow-up)* | 独立审查 |
- 父会话或 frontmatter 为 bypassPermissions 时以那边优先。发布模板目前仍使用 bypassPermissions,因此 Auto Mode 是 follow-up 的 rollout 对象,并非默认行为。
Codex 模式(--codex)
将全部实现委托给 Codex CLI 的模式:
# 提示词通过 stdin 管道传递(ARG_MAX 对策)
CODEX_PROMPT=$(mktemp /tmp/codex-prompt-XXXXXX.md)
# 写出任务内容
cat "$CODEX_PROMPT" | ${TIMEOUT:+$TIMEOUT 120} codex exec - --sandbox workspace-write --full-auto 2>>/tmp/harness-codex-$$.log
rm -f "$CODEX_PROMPT"
流程概要
breezing [scope] [--codex] [--parallel N] [--no-discuss] [--auto-mode]
│
↓ Load harness-work with team mode
│
Phase 0: Planning Discussion(--no-discuss 时跳过)
Phase A: Pre-delegate(团队初始化)
Phase B: Delegate(Worker 实现 + Reviewer 审查)
Phase C: Post-delegate(整合验证 + Plans.md 更新 + commit)
进度 Feed(Phase B 中的进度通知)
Lead 在每次 Worker 任务完成时,按以下格式输出进度:
📊 Progress: Task {completed}/{total} 完了 — "{task_subject}"
输出示例:
📊 Progress: Task 1/5 完了 — "harness-work に失敗再チケット化を追加"
📊 Progress: Task 2/5 完了 — "harness-sync に --snapshot を追加"
📊 Progress: Task 3/5 完了 — "breezing にプログレスフィードを追加"
设计意图:breezing 经常是长时间执行。让用户瞄一眼终端时就能一眼看出「现在进展到哪里」。task-completed.sh 钩子会通过 systemMessage 输出同等信息,与 Lead 的输出相互补充。
审查策略(全模式统一)
Breezing 模式下审查也遵循统一的 Codex exec 优先 → 内部 Reviewer 回退 策略。详情参见 harness-work 的「审查循环」章节。
- Worker 在 worktree 内实现并 commit → 将结果返回给 Lead
- Lead 用 Codex exec 审查(120s 超时,回退:Reviewer agent)
- REQUEST_CHANGES → Lead 通过 SendMessage 指示 Worker 修正,Worker 进行 amend(最多 3 次)
- APPROVE → Lead cherry-pick 到 main → 将 Plans.md 更新为 cc:完了 [{hash}]
完成报告(Phase C — 由 Lead 生成)
全部任务完成后,Lead 按以下步骤生成丰富的完成报告:
- 用 git log --oneline {base_ref}..HEAD 收集全部 cherry-pick 提交
- 用 git diff --stat {base_ref}..HEAD 获取整体变更规模
- 提取 Plans.md 中 cc:TODO / cc:WIP 的剩余任务
- 按照 harness-work 的「完成报告格式」的 Breezing 模板输出
生成者是 Lead。不是 Worker 或 hook。Lead 在 Phase C 读取 git + Plans.md 后生成。
Phase 0: 计划讨论(结构化 3 问检查)
在全部任务执行前,用以下 3 个问题确认计划的健全性。指定 --no-discuss 时全部跳过。
- Q1. 范围确认:「将执行 {{N}} 个任务。范围是否合适?」过多时按优先级(Required > Recommended > Optional)建议筛选。
- Q2. 依赖关系确认(仅当 Plans.md 有 Depends 列时):「任务 {{X}} 依赖 {{Y}}。执行顺序是否正确?」读取 Depends 列显示依赖链。若存在循环依赖则报错。
- Q3. 风险标志(仅当存在 [needs-spike] 任务时):「任务 {{Z}} 是 [needs-spike]。要先 spike 吗?」若存在 spike 未完成的 [needs-spike] 任务,确认是否先行执行 spike。
3 问均无问题时进入 Phase A(设计上合计 30 秒内完成)。
基于依赖图的任务分配
当 Plans.md 有 Depends 列时(v2 格式),按依赖图执行任务:
- 先执行 Depends 为 - 的任务。若存在多个独立任务则可并行 spawn
- 每个 Worker 完成后,Lead 进行审查→cherry-pick(参见 harness-work Phase B)
- 依赖源任务被 cherry-pick 到 main 后,接着执行依赖它的任务
- 重复直到全部任务完成
注意:每个任务的「Worker 完成→审查→cherry-pick」是逐次处理。可并行的仅是独立任务(Depends 为 -)的 Worker spawn 部分。
Codex 原生编排
在 Codex 中使用 native subagent。代表性的控制面为 spawn_agent, wait, send_input, resume_agent, close_agent。
Claude Code 与 Codex 的通信 API(SSOT:team-composition.md 的 API 映射表):
- Claude Code:用 SendMessage(to: agentId, message: "...") 向 Worker 发出修正指示
- Codex:用 resume_agent(agent_id) 重启 Worker → 用 send_input(agent_id, "...") 发送指示
harness-work 的伪代码以 Claude Code 语法记述。在 Codex 环境中按上述方式替换理解。
相关技能
- harness-work — 从单任务到团队执行(本体)
- harness-sync — 进度同步
- harness-review — 代码审查(在 breezing 内自动启动)