关于 team-coordinate
用于团队协调的 Skill,会分析任务、动态生成角色规范,并通过依赖感知的流程调度 team-worker Agent。适合由内置协调器管理多角色工作,并支持会话跟踪和恢复。
主要功能
- 01任务分析与依赖图
- 02动态生成工作者角色规范
- 03后台调度 team-worker
- 04会话状态与产物跟踪
- 05恢复中断的会话
适用场景
- 01将工作分配给不同专业角色
- 02通过协调流程执行相互依赖的任务
- 03恢复暂停或中断的团队会话
MCP 相关
该 Skill 使用 `mcp__ccw-tools__team_msg` 消息总线进行团队协调。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ catlog22/ claude-code-workflow --skill team-coordinate安装后在 Claude Code 中输入/team-coordinate确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
roles/coordinator/role.mdroles/coordinator/commands/analyze-task.mddispatch.mdmonitor.mdspecs/knowledge-transfer.mdpipelines.mdquality-gates.mdrole-spec-template.md详细介绍
Team Coordinate
通用团队协调技能:分析任务 -> 生成角色规范 -> 派发 -> 执行 -> 交付。只有 coordinator 是内置的。所有工作角色都会以轻量级角色规范文件的形式动态生成,并通过 team-worker Agent 启动。
架构
+---------------------------------------------------+
| Skill(skill="team-coordinate") |
| args="task description" |
+-------------------+-------------------------------+
|
Orchestration Mode (auto -> coordinator)
|
Coordinator (built-in)
Phase 0-5 orchestration
|
+-------+-------+-------+-------+
v v v v v
[team-worker agents, each loaded with a dynamic role-spec]
(roles generated at runtime from task analysis)
CLI Tools (callable by any worker):
ccw cli --mode analysis - analysis and exploration
ccw cli --mode write - code generation and modification
共享常量
| 常量 | 值 |
|---|---|
| 会话前缀 | TC |
| 会话路径 | .workflow/.team/TC-<slug>-<date>/ |
| 工作 Agent | team-worker |
| 消息总线 | mcp__ccw-tools__team_msg(session_id=<session-id>, ...) |
| CLI 分析 | ccw cli --mode analysis |
| CLI 编写 | ccw cli --mode write |
| 角色上限 | 5 |
角色路由器
此技能仅供 coordinator 使用。工作角色不会调用此技能——它们会直接作为 team-worker Agent 启动。
输入解析
解析 $ARGUMENTS。无需 --role——始终路由至 coordinator。
角色注册表
只有 coordinator 是静态注册的。所有其他角色均为动态角色,以角色规范的形式存储在会话中。
| 角色 | 文件 | 类型 |
|---|---|---|
| coordinator | roles/coordinator/role.md | 内置编排器 |
| (动态) | <session>/role-specs/<role-name>.md | 运行时生成的角色规范 |
技术概况扫描:为分析/探索角色生成角色规范时(responsibility_type 包含 "analysis"、"exploration" 或 "research"),在 Phase 3 中追加:
探索完成后,在 state_update 中加入
tech_profile,包含检测到的信号(例如sql_detected、auth_detected、perf_sensitive)和证据文件路径。这样 coordinator 就能评估是否需要注入专家。
CLI 工具用法
工作角色可使用 CLI 工具执行分析和代码操作:
| 工具 | 用途 |
|---|---|
| ccw cli --mode analysis | 分析、探索、模式发现 |
| ccw cli --mode write | 代码生成、修改、重构 |
派发
始终路由至 coordinator。coordinator 会读取 roles/coordinator/role.md 并执行其中的各个阶段。
编排模式
用户只需提供任务描述。
调用方式:Skill(skill="team-coordinate", args="task description")
生命周期:
User provides task description
-> coordinator Phase 1: task analysis (detect capabilities, build dependency graph)
-> coordinator Phase 2: generate role-specs + initialize session
-> coordinator Phase 3: create task chain from dependency graph
-> coordinator Phase 4: spawn first batch workers (background) -> STOP
-> Worker executes -> SendMessage callback -> coordinator advances next step
-> Loop until pipeline complete -> Phase 5 report + completion action
用户命令(唤醒已暂停的 coordinator):
| 命令 | 操作 |
|---|---|
check / status | 输出执行状态图,不推进流程 |
resume / continue | 检查工作角色状态,推进到下一步 |
revise <TASK-ID> [feedback] | 修改指定任务,可附带反馈 |
feedback <text> | 向当前工作流注入反馈 |
improve [dimension] | 自动改进质量最弱的维度 |
Coordinator 启动模板
v2 工作角色启动(所有角色)
coordinator 启动工作角色时,使用 team-worker Agent 和角色规范路径:
Agent({
subagent_type: "team-worker",
description: "Spawn <role> worker",
team_name: <team-name>,
name: "<role>",
run_in_background: true,
prompt: `## Role Assignment
role: <role>
role_spec: <session-folder>/role-specs/<role>.md
session: <session-folder>
session_id: <session-id>
team_name: <team-name>
requirement: <task-description>
inner_loop: <true|false>
## Progress Milestones
session_id: <session-id>
Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
Report blockers immediately via team_msg type="blocker".
Report completion via team_msg type="task_complete" after final SendMessage.
Read role_spec file to load Phase 2-4 domain instructions.
Execute built-in Phase 1 (task discovery) -> role-spec Phase 2-4 -> built-in Phase 5 (report).`
})
内部循环:根据任务描述中的 InnerLoop: 字段按任务确定,而非按角色确定:
- 串行链(2 个或更多任务,且每个任务都被前一个任务阻塞):
inner_loop: true— 单个工作角色循环处理 - 并行任务(彼此之间没有
blockedBy):inner_loop: false— 每个任务使用单独的工作角色 - 单任务角色:
inner_loop: false
完成操作
工作流完成时(所有任务均已完成),coordinator 会提供交互式选项:
AskUserQuestion({
questions: [{
question: "Team pipeline complete. What would you like to do?",
header: "Completion",
multiSelect: false,
options: [
{ label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
{ label: "Keep Active", description: "Keep session for follow-up work" },
{ label: "Export Results", description: "Export deliverables to target directory, then clean" }
]
}]
})
操作处理程序
| 选项 | 步骤 |
|---|---|
| 归档并清理 | 将会话状态更新为 status="completed" -> TeamDelete -> 输出包含产物路径的最终摘要 |
| 保持活动 | 将会话状态更新为 status="paused" -> 输出:"使用以下命令恢复:Skill(skill='team-coordinate', args='resume')" |
| 导出结果 | AskUserQuestion(target path) -> 将产物复制到目标路径 -> 归档并清理 |
规格参考
| 规格 | 用途 |
|---|---|
| specs/pipelines.md | 动态流水线模型、任务命名、依赖关系图 |
| specs/role-spec-template.md | 动态角色规格生成模板 |
| specs/quality-gates.md | 质量阈值和评分维度 |
| specs/knowledge-transfer.md | 角色间的上下文传递协议 |
会话目录
.workflow/.team/TC-<slug>-<date>/
+-- team-session.json # Session state + dynamic role registry
+-- task-analysis.json # Phase 1 output: capabilities, dependency graph
+-- role-specs/ # Dynamic role-spec definitions (generated Phase 2)
| +-- <role-1>.md # Lightweight: frontmatter + Phase 2-4 only
| +-- <role-2>.md
+-- artifacts/ # All MD deliverables from workers
| +-- <artifact>.md
+-- .msg/ # Team message bus + state
| +-- messages.jsonl # Message log
| +-- meta.json # Session metadata + cross-role state
+-- wisdom/ # Cross-task knowledge
| +-- learnings.md
| +-- decisions.md
| +-- issues.md
+-- explorations/ # Shared explore cache
| +-- cache-index.json
| +-- explore-<angle>.json
+-- discussions/ # Inline discuss records
| +-- <round>.md
team-session.json 架构
{
"session_id": "TC-<slug>-<date>",
"task_description": "<original user input>",
"status": "active | paused | completed",
"team_name": "<team-name>",
"roles": [
{
"name": "<role-name>",
"prefix": "<PREFIX>",
"responsibility_type": "<type>",
"inner_loop": false,
"role_spec": "role-specs/<role-name>.md"
}
],
"pipeline": {
"dependency_graph": {},
"tasks_total": 0,
"tasks_completed": 0
},
"active_workers": [],
"completed_tasks": [],
"completion_action": "interactive",
"created_at": "<timestamp>"
}
恢复会话
Coordinator 支持对中断的会话执行 resume / continue:
- 扫描
.workflow/.team/TC-*/team-session.json,查找活动或已暂停的会话 - 如果有多个匹配项 -> 通过 AskUserQuestion 供用户选择
- 审核 TaskList -> 对账会话状态 <-> 任务状态
- 将 in_progress 重置为 pending(已中断的任务)
- 重建团队,并仅启动所需的工作者
- 创建缺失的任务,通过 TaskUpdate({ addBlockedBy }) 设置依赖关系
- 启动第一个可执行任务 -> 第 4 阶段协调循环
错误处理
| 场景 | 解决方案 |
|---|---|
| 未知命令 | 显示可用命令列表及错误信息 |
| 未找到动态角色规格 | 显示错误,Coordinator 可能需要重新生成 |
| 未找到命令文件 | 回退到内联执行 |
| CLI 工具失败 | 工作者继续直接实现,并记录警告 |
| Explore 缓存损坏 | 清除缓存并重新探索 |
| 快速推进启动了错误任务 | Coordinator 在下一次回调时进行协调 |
| 报告 capability_gap | Coordinator 通过 handleAdapt 生成新的角色规格 |
| 完成操作失败 | 默认设为 Keep Active,并记录警告 |