claude-code-workflow 7.2.30 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/.claude/commands/workflow-skill.md +130 -0
  2. package/.claude/skills/ccw-chain/SKILL.md +44 -71
  3. package/.claude/skills/ccw-chain/chains/ccw-cycle.json +13 -3
  4. package/.claude/skills/ccw-chain/chains/ccw-exploration.json +33 -22
  5. package/.claude/skills/ccw-chain/chains/ccw-issue.json +23 -12
  6. package/.claude/skills/ccw-chain/chains/ccw-lightweight.json +23 -9
  7. package/.claude/skills/ccw-chain/chains/ccw-main.json +15 -2
  8. package/.claude/skills/ccw-chain/chains/ccw-standard.json +28 -16
  9. package/.claude/skills/ccw-chain/chains/ccw-team.json +7 -2
  10. package/.claude/skills/ccw-chain/chains/ccw-with-file.json +25 -9
  11. package/.claude/skills/chain-loader/phases/01-analyze-skill.md +53 -53
  12. package/.claude/skills/chain-loader/specs/chain-schema.md +30 -3
  13. package/.claude/skills/chain-loader/templates/chain-json.md +63 -63
  14. package/.claude/skills/workflow-plan/SKILL.md +1 -0
  15. package/.claude/skills/workflow-plan/phases/01-session-discovery.md +19 -2
  16. package/.claude/skills/workflow-plan/phases/02-context-gathering.md +2 -2
  17. package/.claude/skills/workflow-plan/phases/04-task-generation.md +9 -1
  18. package/.codex/skills/analyze-with-file/SKILL.md +383 -134
  19. package/.codex/skills/brainstorm/SKILL.md +3 -3
  20. package/.codex/skills/brainstorm-with-file/SKILL.md +208 -88
  21. package/.codex/skills/clean/SKILL.md +1 -1
  22. package/.codex/skills/csv-wave-pipeline/SKILL.md +2 -2
  23. package/.codex/skills/investigate/orchestrator.md +24 -0
  24. package/.codex/skills/issue-discover/SKILL.md +374 -361
  25. package/.codex/skills/issue-discover/phases/01-issue-new.md +1 -1
  26. package/.codex/skills/issue-discover/phases/02-discover.md +2 -2
  27. package/.codex/skills/issue-discover/phases/03-discover-by-prompt.md +1 -1
  28. package/.codex/skills/issue-discover/phases/04-quick-execute.md +2 -2
  29. package/.codex/skills/parallel-dev-cycle/SKILL.md +44 -37
  30. package/.codex/skills/project-documentation-workflow/SKILL.md +1 -1
  31. package/.codex/skills/review-cycle/SKILL.md +31 -12
  32. package/.codex/skills/roadmap-with-file/SKILL.md +141 -133
  33. package/.codex/skills/security-audit/orchestrator.md +29 -0
  34. package/.codex/skills/session-sync/SKILL.md +1 -1
  35. package/.codex/skills/ship/orchestrator.md +24 -0
  36. package/.codex/skills/spec-add/SKILL.md +5 -5
  37. package/.codex/skills/spec-generator/SKILL.md +33 -2
  38. package/.codex/skills/spec-generator/phases/01-5-requirement-clarification.md +3 -3
  39. package/.codex/skills/spec-generator/phases/01-discovery.md +1 -1
  40. package/.codex/skills/spec-generator/phases/02-product-brief.md +1 -1
  41. package/.codex/skills/spec-generator/phases/03-requirements.md +1 -1
  42. package/.codex/skills/spec-generator/phases/04-architecture.md +1 -1
  43. package/.codex/skills/spec-generator/phases/05-epics-stories.md +1 -1
  44. package/.codex/skills/spec-generator/phases/06-readiness-check.md +1 -1
  45. package/.codex/skills/spec-generator/phases/07-issue-export.md +1 -1
  46. package/.codex/skills/spec-setup/SKILL.md +669 -669
  47. package/.codex/skills/team-arch-opt/specs/team-config.json +1 -1
  48. package/.codex/skills/team-brainstorm/SKILL.md +259 -259
  49. package/.codex/skills/team-coordinate/SKILL.md +359 -359
  50. package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +1 -1
  51. package/.codex/skills/team-designer/SKILL.md +27 -1
  52. package/.codex/skills/team-designer/phases/01-requirements-analysis.md +2 -2
  53. package/.codex/skills/team-designer/phases/02-scaffold-generation.md +1 -1
  54. package/.codex/skills/team-designer/phases/04-validation.md +1 -1
  55. package/.codex/skills/team-executor/SKILL.md +218 -218
  56. package/.codex/skills/team-frontend/SKILL.md +227 -227
  57. package/.codex/skills/team-frontend-debug/SKILL.md +278 -278
  58. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/analyze.md +2 -2
  59. package/.codex/skills/team-interactive-craft/SKILL.md +220 -220
  60. package/.codex/skills/team-interactive-craft/roles/coordinator/role.md +209 -209
  61. package/.codex/skills/team-issue/SKILL.md +269 -269
  62. package/.codex/skills/team-issue/roles/coordinator/role.md +1 -1
  63. package/.codex/skills/team-lifecycle-v4/SKILL.md +305 -305
  64. package/.codex/skills/team-motion-design/SKILL.md +222 -222
  65. package/.codex/skills/team-motion-design/roles/coordinator/role.md +210 -210
  66. package/.codex/skills/team-perf-opt/SKILL.md +258 -258
  67. package/.codex/skills/team-perf-opt/specs/team-config.json +1 -1
  68. package/.codex/skills/team-planex/SKILL.md +216 -216
  69. package/.codex/skills/team-quality-assurance/SKILL.md +229 -229
  70. package/.codex/skills/team-review/SKILL.md +227 -227
  71. package/.codex/skills/team-roadmap-dev/SKILL.md +238 -238
  72. package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/roadmap-discuss.md +5 -5
  73. package/.codex/skills/team-tech-debt/SKILL.md +206 -206
  74. package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +1 -1
  75. package/.codex/skills/team-testing/SKILL.md +237 -237
  76. package/.codex/skills/team-ui-polish/SKILL.md +218 -218
  77. package/.codex/skills/team-ui-polish/roles/coordinator/role.md +213 -213
  78. package/.codex/skills/team-uidesign/SKILL.md +219 -219
  79. package/.codex/skills/team-uidesign/roles/coordinator/role.md +2 -2
  80. package/.codex/skills/team-ultra-analyze/SKILL.md +260 -260
  81. package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/monitor.md +1 -1
  82. package/.codex/skills/team-ultra-analyze/roles/coordinator/role.md +1 -1
  83. package/.codex/skills/team-ux-improve/SKILL.md +227 -227
  84. package/.codex/skills/team-ux-improve/roles/coordinator/role.md +1 -1
  85. package/.codex/skills/team-ux-improve/specs/team-config.json +1 -1
  86. package/.codex/skills/team-visual-a11y/SKILL.md +319 -319
  87. package/.codex/skills/team-visual-a11y/roles/coordinator/role.md +213 -213
  88. package/.codex/skills/workflow-execute/SKILL.md +5 -5
  89. package/.codex/skills/workflow-lite-planex/SKILL.md +3 -3
  90. package/.codex/skills/workflow-plan/SKILL.md +3 -3
  91. package/.codex/skills/workflow-tdd-plan/SKILL.md +4 -4
  92. package/.codex/skills/workflow-test-fix-cycle/SKILL.md +403 -402
  93. package/ccw/dist/cli.d.ts.map +1 -1
  94. package/ccw/dist/cli.js +16 -0
  95. package/ccw/dist/cli.js.map +1 -1
  96. package/ccw/dist/commands/chain-loader.d.ts +2 -0
  97. package/ccw/dist/commands/chain-loader.d.ts.map +1 -0
  98. package/ccw/dist/commands/chain-loader.js +11 -0
  99. package/ccw/dist/commands/chain-loader.js.map +1 -0
  100. package/ccw/dist/commands/install.d.ts.map +1 -1
  101. package/ccw/dist/commands/install.js +52 -1
  102. package/ccw/dist/commands/install.js.map +1 -1
  103. package/ccw/dist/commands/launcher.d.ts +2 -0
  104. package/ccw/dist/commands/launcher.d.ts.map +1 -0
  105. package/ccw/dist/commands/launcher.js +434 -0
  106. package/ccw/dist/commands/launcher.js.map +1 -0
  107. package/ccw/dist/tools/chain-loader.d.ts.map +1 -1
  108. package/ccw/dist/tools/chain-loader.js +457 -45
  109. package/ccw/dist/tools/chain-loader.js.map +1 -1
  110. package/ccw/dist/tools/skill-context-loader.d.ts.map +1 -1
  111. package/ccw/dist/tools/skill-context-loader.js +12 -26
  112. package/ccw/dist/tools/skill-context-loader.js.map +1 -1
  113. package/ccw/dist/types/chain-types.d.ts +41 -1
  114. package/ccw/dist/types/chain-types.d.ts.map +1 -1
  115. package/ccw/dist/utils/chain-visualizer.d.ts +13 -0
  116. package/ccw/dist/utils/chain-visualizer.d.ts.map +1 -0
  117. package/ccw/dist/utils/chain-visualizer.js +164 -0
  118. package/ccw/dist/utils/chain-visualizer.js.map +1 -0
  119. package/package.json +1 -1
  120. package/.claude/commands/cli/cli-init.md +0 -441
  121. package/.claude/commands/cli/codex-review.md +0 -361
  122. package/.claude/commands/flow-create.md +0 -663
  123. package/.claude/skills/ccw-chain/phases/analyze-with-file.md +0 -788
  124. package/.claude/skills/ccw-chain/phases/brainstorm/SKILL.md +0 -408
  125. package/.claude/skills/ccw-chain/phases/brainstorm/phases/01-mode-routing.md +0 -207
  126. package/.claude/skills/ccw-chain/phases/brainstorm/phases/02-artifacts.md +0 -567
  127. package/.claude/skills/ccw-chain/phases/brainstorm/phases/03-role-analysis.md +0 -748
  128. package/.claude/skills/ccw-chain/phases/brainstorm/phases/04-synthesis.md +0 -827
  129. package/.claude/skills/ccw-chain/phases/brainstorm-with-file.md +0 -482
  130. package/.claude/skills/ccw-chain/phases/collaborative-plan-with-file.md +0 -639
  131. package/.claude/skills/ccw-chain/phases/debug-with-file.md +0 -656
  132. package/.claude/skills/ccw-chain/phases/integration-test-cycle.md +0 -936
  133. package/.claude/skills/ccw-chain/phases/issue-convert-to-plan.md +0 -720
  134. package/.claude/skills/ccw-chain/phases/issue-discover.md +0 -483
  135. package/.claude/skills/ccw-chain/phases/issue-execute.md +0 -629
  136. package/.claude/skills/ccw-chain/phases/issue-from-brainstorm.md +0 -382
  137. package/.claude/skills/ccw-chain/phases/issue-plan.md +0 -343
  138. package/.claude/skills/ccw-chain/phases/issue-queue.md +0 -464
  139. package/.claude/skills/ccw-chain/phases/refactor-cycle.md +0 -852
  140. package/.claude/skills/ccw-chain/phases/review-cycle/SKILL.md +0 -132
  141. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-fix.md +0 -760
  142. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-module.md +0 -764
  143. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-session.md +0 -775
  144. package/.claude/skills/ccw-chain/phases/roadmap-with-file.md +0 -544
  145. package/.claude/skills/ccw-chain/phases/spec-generator/SKILL.md +0 -338
  146. package/.claude/skills/ccw-chain/phases/spec-generator/phases/01-5-requirement-clarification.md +0 -404
  147. package/.claude/skills/ccw-chain/phases/spec-generator/phases/01-discovery.md +0 -257
  148. package/.claude/skills/ccw-chain/phases/spec-generator/phases/02-product-brief.md +0 -274
  149. package/.claude/skills/ccw-chain/phases/spec-generator/phases/03-requirements.md +0 -184
  150. package/.claude/skills/ccw-chain/phases/spec-generator/phases/04-architecture.md +0 -248
  151. package/.claude/skills/ccw-chain/phases/spec-generator/phases/05-epics-stories.md +0 -178
  152. package/.claude/skills/ccw-chain/phases/spec-generator/phases/06-5-auto-fix.md +0 -144
  153. package/.claude/skills/ccw-chain/phases/spec-generator/phases/06-readiness-check.md +0 -480
  154. package/.claude/skills/ccw-chain/phases/team-planex.md +0 -123
  155. package/.claude/skills/ccw-chain/phases/ui-design-explore-auto.md +0 -678
  156. package/.claude/skills/ccw-chain/phases/unified-execute-with-file.md +0 -870
  157. package/.claude/skills/ccw-chain/phases/workflow-execute/SKILL.md +0 -625
  158. package/.claude/skills/ccw-chain/phases/workflow-execute/phases/06-review.md +0 -215
  159. package/.claude/skills/ccw-chain/phases/workflow-lite-plan.md +0 -616
  160. package/.claude/skills/ccw-chain/phases/workflow-multi-cli-plan.md +0 -424
  161. package/.claude/skills/ccw-chain/phases/workflow-plan/SKILL.md +0 -466
  162. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/01-session-discovery.md +0 -99
  163. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/02-context-gathering.md +0 -338
  164. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/03-conflict-resolution.md +0 -422
  165. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/04-task-generation.md +0 -440
  166. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/05-plan-verify.md +0 -395
  167. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/06-replan.md +0 -594
  168. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/SKILL.md +0 -527
  169. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/01-session-discovery.md +0 -57
  170. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/02-context-gathering.md +0 -407
  171. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/03-test-coverage-analysis.md +0 -172
  172. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/04-conflict-resolution.md +0 -426
  173. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/05-tdd-task-generation.md +0 -473
  174. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/06-tdd-structure-validation.md +0 -189
  175. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/07-tdd-verify.md +0 -635
  176. package/.claude/skills/ccw-chain/phases/workflow-test-fix/SKILL.md +0 -482
  177. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/01-session-start.md +0 -60
  178. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/02-test-context-gather.md +0 -493
  179. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/03-test-concept-enhanced.md +0 -150
  180. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/04-test-task-generate.md +0 -346
  181. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/05-test-cycle-execute.md +0 -538
  182. package/.claude/skills/ccw-chain/specs/intent-patterns.md +0 -60
  183. package/.claude/skills/team-edict.zip +0 -0
@@ -1,359 +1,359 @@
1
- ---
2
- name: team-coordinate
3
- description: Universal team coordination skill with dynamic role generation. Uses team-worker agent architecture with role-spec files. Only coordinator is built-in -- all worker roles are generated at runtime as role-specs and spawned via team-worker agent. Beat/cadence model for orchestration. Triggers on "Team Coordinate ".
4
- allowed-tools: spawn_agent(*), wait_agent(*), send_message(*), assign_task(*), close_agent(*), list_agents(*), report_agent_job_result(*), request_user_input(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*)
5
- ---
6
-
7
- # Team Coordinate
8
-
9
- Universal team coordination skill: analyze task -> generate role-specs -> dispatch -> execute -> deliver. Only the **coordinator** is built-in. All worker roles are **dynamically generated** as lightweight role-spec files and spawned via the `team-worker` agent.
10
-
11
-
12
- ## Architecture
13
-
14
- ```
15
- +---------------------------------------------------+
16
- | Skill(skill="team-coordinate") |
17
- | args="task description" |
18
- +-------------------+-------------------------------+
19
- |
20
- Orchestration Mode (auto -> coordinator)
21
- |
22
- Coordinator (built-in)
23
- Phase 0-5 orchestration
24
- |
25
- +-------+-------+-------+-------+
26
- v v v v v
27
- [team-worker agents, each loaded with a dynamic role-spec]
28
- (roles generated at runtime from task analysis)
29
-
30
- CLI Tools (callable by any worker):
31
- ccw cli --mode analysis - analysis and exploration
32
- ccw cli --mode write - code generation and modification
33
- ```
34
-
35
- ## Delegation Lock
36
-
37
- **Coordinator is a PURE ORCHESTRATOR. It coordinates, it does NOT do.**
38
-
39
- Before calling ANY tool, apply this check:
40
-
41
- | Tool Call | Verdict | Reason |
42
- |-----------|---------|--------|
43
- | `spawn_agent`, `wait_agent`, `close_agent`, `send_message`, `assign_task` | ALLOWED | Orchestration |
44
- | `list_agents` | ALLOWED | Agent health check |
45
- | `request_user_input` | ALLOWED | User interaction |
46
- | `mcp__ccw-tools__team_msg` | ALLOWED | Message bus |
47
- | `Read/Write` on `.workflow/.team/` files | ALLOWED | Session state |
48
- | `Read` on `roles/`, `commands/`, `specs/` | ALLOWED | Loading own instructions |
49
- | `Read/Grep/Glob` on project source code | BLOCKED | Delegate to worker |
50
- | `Edit` on any file outside `.workflow/` | BLOCKED | Delegate to worker |
51
- | `Bash("ccw cli ...")` | BLOCKED | Only workers call CLI |
52
- | `Bash` running build/test/lint commands | BLOCKED | Delegate to worker |
53
-
54
- **If a tool call is BLOCKED**: STOP. Create a task, spawn a worker.
55
-
56
- **No exceptions for "simple" tasks.** Even a single-file read-and-report MUST go through spawn_agent. The overhead is the feature — it provides session tracking, artifact persistence, and resume capability.
57
-
58
- ---
59
-
60
- ## Shared Constants
61
-
62
- | Constant | Value |
63
- |----------|-------|
64
- | Session prefix | `TC` |
65
- | Session path | `.workflow/.team/TC-<slug>-<date>/` |
66
- | Worker agent | `team-worker` |
67
- | Message bus | `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)` |
68
- | CLI analysis | `ccw cli --mode analysis` |
69
- | CLI write | `ccw cli --mode write` |
70
- | Max roles | 5 |
71
-
72
- ## Role Router
73
-
74
- This skill is **coordinator-only**. Workers do NOT invoke this skill -- they are spawned as `team-worker` agents directly.
75
-
76
- ### Input Parsing
77
-
78
- Parse `$ARGUMENTS`. No `--role` needed -- always routes to coordinator.
79
-
80
- ### Role Registry
81
-
82
- Only coordinator is statically registered. All other roles are dynamic, stored as role-specs in session.
83
-
84
- | Role | File | Type |
85
- |------|------|------|
86
- | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | built-in orchestrator |
87
- | (dynamic) | `<session>/role-specs/<role-name>.md` | runtime-generated role-spec |
88
-
89
- ### CLI Tool Usage
90
-
91
- Workers can use CLI tools for analysis and code operations:
92
-
93
- | Tool | Purpose |
94
- |------|---------|
95
- | ccw cli --mode analysis | Analysis, exploration, pattern discovery |
96
- | ccw cli --mode write | Code generation, modification, refactoring |
97
-
98
- ### Dispatch
99
-
100
- Always route to coordinator. Coordinator reads `roles/coordinator/role.md` and executes its phases.
101
-
102
- ### Orchestration Mode
103
-
104
- User just provides task description.
105
-
106
- **Invocation**: `Skill(skill="team-coordinate", args="task description")`
107
-
108
- **Lifecycle**:
109
- ```
110
- User provides task description
111
- -> coordinator Phase 1: task analysis (detect capabilities, build dependency graph)
112
- -> coordinator Phase 2: generate role-specs + initialize session
113
- -> coordinator Phase 3: create task chain from dependency graph
114
- -> coordinator Phase 4: spawn first batch workers (background) -> STOP
115
- -> Worker executes -> callback -> coordinator advances next step
116
- -> Loop until pipeline complete -> Phase 5 report + completion action
117
- ```
118
-
119
- **User Commands** (wake paused coordinator):
120
-
121
- | Command | Action |
122
- |---------|--------|
123
- | `check` / `status` | Output execution status graph, no advancement |
124
- | `resume` / `continue` | Check worker states, advance next step |
125
- | `revise <TASK-ID> [feedback]` | Revise specific task with optional feedback |
126
- | `feedback <text>` | Inject feedback into active pipeline |
127
- | `improve [dimension]` | Auto-improve weakest quality dimension |
128
-
129
- ---
130
-
131
- ## Coordinator Spawn Template
132
-
133
- ### v2 Worker Spawn (all roles)
134
-
135
- When coordinator spawns workers, use `team-worker` agent with role-spec path:
136
-
137
- ```
138
- spawn_agent({
139
- agent_type: "team_worker",
140
- task_name: "<task-id>",
141
- fork_context: false,
142
- items: [
143
- { type: "text", text: `## Role Assignment
144
- role: <role>
145
- role_spec: <session-folder>/role-specs/<role>.md
146
- session: <session-folder>
147
- session_id: <session-id>
148
- requirement: <task-description>
149
- inner_loop: <true|false>
150
-
151
- Read role_spec file to load Phase 2-4 domain instructions.` },
152
-
153
- { type: "text", text: `## Task Context
154
- task_id: <task-id>
155
- title: <task-title>
156
- description: <task-description>
157
- pipeline_phase: <pipeline-phase>` },
158
-
159
- { type: "text", text: `## Upstream Context
160
- <prev_context>` }
161
- ]
162
- })
163
- ```
164
-
165
- After spawning, use `wait_agent({ targets: [...], timeout_ms: 900000 })` to collect results, then `close_agent({ target: <name> })` each worker.
166
-
167
- **Inner Loop roles** (role has 2+ serial same-prefix tasks): Set `inner_loop: true`. The team-worker agent handles the loop internally.
168
-
169
- **Single-task roles**: Set `inner_loop: false`.
170
-
171
- ---
172
-
173
-
174
- ### Model Selection Guide
175
-
176
- Roles are **dynamically generated** at runtime. Select model/reasoning_effort based on the generated role's `responsibility_type`:
177
-
178
- | responsibility_type | model | reasoning_effort | Rationale |
179
- |---------------------|-------|-------------------|-----------|
180
- | exploration | (default) | medium | Read-heavy, less reasoning needed |
181
- | analysis | (default) | high | Deep analysis requires full reasoning |
182
- | implementation | (default) | high | Code generation needs precision |
183
- | synthesis | (default) | medium | Aggregation over generation |
184
- | review | (default) | high | Quality assessment needs deep reasoning |
185
-
186
- Map each generated role's `responsibility_type` (from `team-session.json#roles`) to the table above.
187
-
188
- Override model/reasoning_effort in spawn_agent when cost optimization is needed:
189
- ```
190
- spawn_agent({
191
- agent_type: "team_worker",
192
- task_name: "<task-id>",
193
- fork_context: false,
194
- model: "<model-override>",
195
- reasoning_effort: "<effort-level>",
196
- items: [...]
197
- })
198
- ```
199
-
200
- ## v4 Agent Coordination
201
-
202
- ### Message Semantics
203
-
204
- | Intent | API | Example |
205
- |--------|-----|---------|
206
- | Queue supplementary info (don't interrupt) | `send_message` | Send upstream task findings to a running downstream worker |
207
- | Not used in this skill | `assign_task` | No resident agents -- all workers are one-shot |
208
- | Check running agents | `list_agents` | Verify agent health during resume |
209
-
210
- **Note**: Since roles are dynamically generated, the coordinator must resolve task prefixes and role names from `team-session.json#roles` at runtime. There are no hardcoded role-specific examples.
211
-
212
- ### fork_context Strategy
213
-
214
- `fork_context: false` is the default. Consider `fork_context: true` only when:
215
- - Runtime analysis reveals the task requires deep familiarity with the full conversation context
216
- - The dynamically-generated role-spec indicates the worker needs project-wide understanding
217
- - The coordinator has already accumulated significant context about the codebase
218
-
219
- This decision should be made per-task during Phase 4 based on the role's `responsibility_type`.
220
-
221
- ### Agent Health Check
222
-
223
- Use `list_agents({})` in handleResume and handleComplete:
224
-
225
- ```
226
- // Reconcile session state with actual running agents
227
- const running = list_agents({})
228
- // Compare with team-session.json active_workers
229
- // Reset orphaned tasks (in_progress but agent gone) to pending
230
- ```
231
-
232
- ### Named Agent Targeting
233
-
234
- Workers are spawned with `task_name: "<task-id>"` enabling direct addressing:
235
- - `send_message({ target: "<TASK-ID>", items: [...] })` -- queue upstream context without interrupting
236
- - `close_agent({ target: "<TASK-ID>" })` -- cleanup by name
237
-
238
- ## Completion Action
239
-
240
- When pipeline completes (all tasks done), coordinator presents an interactive choice:
241
-
242
- ```
243
- request_user_input({
244
- questions: [{
245
- question: "Team pipeline complete. What would you like to do?",
246
- header: "Completion",
247
- multiSelect: false,
248
- options: [
249
- { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
250
- { label: "Keep Active", description: "Keep session for follow-up work" },
251
- { label: "Export Results", description: "Export deliverables to target directory, then clean" }
252
- ]
253
- }]
254
- })
255
- ```
256
-
257
- ### Action Handlers
258
-
259
- | Choice | Steps |
260
- |--------|-------|
261
- | Archive & Clean | Update session status="completed" -> output final summary with artifact paths |
262
- | Keep Active | Update session status="paused" -> output: "Resume with: Skill(skill='team-coordinate', args='resume')" |
263
- | Export Results | request_user_input(target path) -> copy artifacts to target -> Archive & Clean |
264
-
265
- ---
266
-
267
- ## Specs Reference
268
-
269
- | Spec | Purpose |
270
- |------|---------|
271
- | [specs/pipelines.md](specs/pipelines.md) | Dynamic pipeline model, task naming, dependency graph |
272
- | [specs/role-spec-template.md](specs/role-spec-template.md) | Template for dynamic role-spec generation |
273
- | [specs/quality-gates.md](specs/quality-gates.md) | Quality thresholds and scoring dimensions |
274
- | [specs/knowledge-transfer.md](specs/knowledge-transfer.md) | Context transfer protocols between roles |
275
-
276
- ---
277
-
278
- ## Session Directory
279
-
280
- ```
281
- .workflow/.team/TC-<slug>-<date>/
282
- +-- team-session.json # Session state + dynamic role registry
283
- +-- task-analysis.json # Phase 1 output: capabilities, dependency graph
284
- +-- role-specs/ # Dynamic role-spec definitions (generated Phase 2)
285
- | +-- <role-1>.md # Lightweight: frontmatter + Phase 2-4 only
286
- | +-- <role-2>.md
287
- +-- artifacts/ # All MD deliverables from workers
288
- | +-- <artifact>.md
289
- +-- .msg/ # Team message bus + state
290
- | +-- messages.jsonl # Message log
291
- | +-- meta.json # Session metadata + cross-role state
292
- +-- wisdom/ # Cross-task knowledge
293
- | +-- learnings.md
294
- | +-- decisions.md
295
- | +-- issues.md
296
- +-- explorations/ # Shared explore cache
297
- | +-- cache-index.json
298
- | +-- explore-<angle>.json
299
- +-- discussions/ # Inline discuss records
300
- | +-- <round>.md
301
- ```
302
-
303
- ### team-session.json Schema
304
-
305
- ```json
306
- {
307
- "session_id": "TC-<slug>-<date>",
308
- "task_description": "<original user input>",
309
- "status": "active | paused | completed",
310
- "team_name": "<team-name>",
311
- "roles": [
312
- {
313
- "name": "<role-name>",
314
- "prefix": "<PREFIX>",
315
- "responsibility_type": "<type>",
316
- "inner_loop": false,
317
- "role_spec": "role-specs/<role-name>.md"
318
- }
319
- ],
320
- "pipeline": {
321
- "dependency_graph": {},
322
- "tasks_total": 0,
323
- "tasks_completed": 0
324
- },
325
- "active_workers": [],
326
- "completed_tasks": [],
327
- "completion_action": "interactive",
328
- "created_at": "<timestamp>"
329
- }
330
- ```
331
-
332
- ---
333
-
334
- ## Session Resume
335
-
336
- Coordinator supports `resume` / `continue` for interrupted sessions:
337
-
338
- 1. Scan `.workflow/.team/TC-*/team-session.json` for active/paused sessions
339
- 2. Multiple matches -> request_user_input for selection
340
- 3. Audit task states -> reconcile session state <-> task status
341
- 4. Reset in_progress -> pending (interrupted tasks)
342
- 5. Rebuild team and spawn needed workers only
343
- 6. Create missing tasks, set dependencies
344
- 7. Kick first executable task -> Phase 4 coordination loop
345
-
346
- ---
347
-
348
- ## Error Handling
349
-
350
- | Scenario | Resolution |
351
- |----------|------------|
352
- | Unknown command | Error with available command list |
353
- | Dynamic role-spec not found | Error, coordinator may need to regenerate |
354
- | Command file not found | Fallback to inline execution |
355
- | CLI tool fails | Worker proceeds with direct implementation, logs warning |
356
- | Explore cache corrupt | Clear cache, re-explore |
357
- | Fast-advance spawns wrong task | Coordinator reconciles on next callback |
358
- | capability_gap reported | Coordinator generates new role-spec via handleAdapt |
359
- | Completion action fails | Default to Keep Active, log warning |
1
+ ---
2
+ name: team-coordinate
3
+ description: Universal team coordination skill with dynamic role generation. Uses team-worker agent architecture with role-spec files. Only coordinator is built-in -- all worker roles are generated at runtime as role-specs and spawned via team-worker agent. Beat/cadence model for orchestration. Triggers on "Team Coordinate ".
4
+ allowed-tools: spawn_agent(*), wait_agent(*), send_message(*), assign_task(*), close_agent(*), list_agents(*), report_agent_job_result(*), request_user_input(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*)
5
+ ---
6
+
7
+ # Team Coordinate
8
+
9
+ Universal team coordination skill: analyze task -> generate role-specs -> dispatch -> execute -> deliver. Only the **coordinator** is built-in. All worker roles are **dynamically generated** as lightweight role-spec files and spawned via the `team-worker` agent.
10
+
11
+
12
+ ## Architecture
13
+
14
+ ```
15
+ +---------------------------------------------------+
16
+ | Skill(skill="team-coordinate") |
17
+ | args="task description" |
18
+ +-------------------+-------------------------------+
19
+ |
20
+ Orchestration Mode (auto -> coordinator)
21
+ |
22
+ Coordinator (built-in)
23
+ Phase 0-5 orchestration
24
+ |
25
+ +-------+-------+-------+-------+
26
+ v v v v v
27
+ [team-worker agents, each loaded with a dynamic role-spec]
28
+ (roles generated at runtime from task analysis)
29
+
30
+ CLI Tools (callable by any worker):
31
+ ccw cli --mode analysis - analysis and exploration
32
+ ccw cli --mode write - code generation and modification
33
+ ```
34
+
35
+ ## Delegation Lock
36
+
37
+ **Coordinator is a PURE ORCHESTRATOR. It coordinates, it does NOT do.**
38
+
39
+ Before calling ANY tool, apply this check:
40
+
41
+ | Tool Call | Verdict | Reason |
42
+ |-----------|---------|--------|
43
+ | `spawn_agent`, `wait_agent`, `close_agent`, `send_message`, `assign_task` | ALLOWED | Orchestration |
44
+ | `list_agents` | ALLOWED | Agent health check |
45
+ | `request_user_input` | ALLOWED | User interaction |
46
+ | `mcp__ccw-tools__team_msg` | ALLOWED | Message bus |
47
+ | `Read/Write` on `.workflow/.team/` files | ALLOWED | Session state |
48
+ | `Read` on `roles/`, `commands/`, `specs/` | ALLOWED | Loading own instructions |
49
+ | `Read/Grep/Glob` on project source code | BLOCKED | Delegate to worker |
50
+ | `Edit` on any file outside `.workflow/` | BLOCKED | Delegate to worker |
51
+ | `Bash("ccw cli ...")` | BLOCKED | Only workers call CLI |
52
+ | `Bash` running build/test/lint commands | BLOCKED | Delegate to worker |
53
+
54
+ **If a tool call is BLOCKED**: STOP. Create a task, spawn a worker.
55
+
56
+ **No exceptions for "simple" tasks.** Even a single-file read-and-report MUST go through spawn_agent. The overhead is the feature — it provides session tracking, artifact persistence, and resume capability.
57
+
58
+ ---
59
+
60
+ ## Shared Constants
61
+
62
+ | Constant | Value |
63
+ |----------|-------|
64
+ | Session prefix | `TC` |
65
+ | Session path | `.workflow/.team/TC-<slug>-<date>/` |
66
+ | Worker agent | `team-worker` |
67
+ | Message bus | `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)` |
68
+ | CLI analysis | `ccw cli --mode analysis` |
69
+ | CLI write | `ccw cli --mode write` |
70
+ | Max roles | 5 |
71
+
72
+ ## Role Router
73
+
74
+ This skill is **coordinator-only**. Workers do NOT invoke this skill -- they are spawned as `team-worker` agents directly.
75
+
76
+ ### Input Parsing
77
+
78
+ Parse `$ARGUMENTS`. No `--role` needed -- always routes to coordinator.
79
+
80
+ ### Role Registry
81
+
82
+ Only coordinator is statically registered. All other roles are dynamic, stored as role-specs in session.
83
+
84
+ | Role | File | Type |
85
+ |------|------|------|
86
+ | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | built-in orchestrator |
87
+ | (dynamic) | `<session>/role-specs/<role-name>.md` | runtime-generated role-spec |
88
+
89
+ ### CLI Tool Usage
90
+
91
+ Workers can use CLI tools for analysis and code operations:
92
+
93
+ | Tool | Purpose |
94
+ |------|---------|
95
+ | ccw cli --mode analysis | Analysis, exploration, pattern discovery |
96
+ | ccw cli --mode write | Code generation, modification, refactoring |
97
+
98
+ ### Dispatch
99
+
100
+ Always route to coordinator. Coordinator reads `roles/coordinator/role.md` and executes its phases.
101
+
102
+ ### Orchestration Mode
103
+
104
+ User just provides task description.
105
+
106
+ **Invocation**: `Skill(skill="team-coordinate", args="task description")`
107
+
108
+ **Lifecycle**:
109
+ ```
110
+ User provides task description
111
+ -> coordinator Phase 1: task analysis (detect capabilities, build dependency graph)
112
+ -> coordinator Phase 2: generate role-specs + initialize session
113
+ -> coordinator Phase 3: create task chain from dependency graph
114
+ -> coordinator Phase 4: spawn first batch workers (background) -> STOP
115
+ -> Worker executes -> callback -> coordinator advances next step
116
+ -> Loop until pipeline complete -> Phase 5 report + completion action
117
+ ```
118
+
119
+ **User Commands** (wake paused coordinator):
120
+
121
+ | Command | Action |
122
+ |---------|--------|
123
+ | `check` / `status` | Output execution status graph, no advancement |
124
+ | `resume` / `continue` | Check worker states, advance next step |
125
+ | `revise <TASK-ID> [feedback]` | Revise specific task with optional feedback |
126
+ | `feedback <text>` | Inject feedback into active pipeline |
127
+ | `improve [dimension]` | Auto-improve weakest quality dimension |
128
+
129
+ ---
130
+
131
+ ## Coordinator Spawn Template
132
+
133
+ ### v2 Worker Spawn (all roles)
134
+
135
+ When coordinator spawns workers, use `team-worker` agent with role-spec path:
136
+
137
+ ```
138
+ spawn_agent({
139
+ agent_type: "team_worker",
140
+ task_name: "<task-id>",
141
+ fork_context: false,
142
+ items: [
143
+ { type: "text", text: `## Role Assignment
144
+ role: <role>
145
+ role_spec: <session-folder>/role-specs/<role>.md
146
+ session: <session-folder>
147
+ session_id: <session-id>
148
+ requirement: <task-description>
149
+ inner_loop: <true|false>
150
+
151
+ Read role_spec file to load Phase 2-4 domain instructions.` },
152
+
153
+ { type: "text", text: `## Task Context
154
+ task_id: <task-id>
155
+ title: <task-title>
156
+ description: <task-description>
157
+ pipeline_phase: <pipeline-phase>` },
158
+
159
+ { type: "text", text: `## Upstream Context
160
+ <prev_context>` }
161
+ ]
162
+ })
163
+ ```
164
+
165
+ After spawning, use `wait_agent({ targets: [...], timeout_ms: 900000 })` to collect results, then `close_agent({ target: <name> })` each worker.
166
+
167
+ **Inner Loop roles** (role has 2+ serial same-prefix tasks): Set `inner_loop: true`. The team-worker agent handles the loop internally.
168
+
169
+ **Single-task roles**: Set `inner_loop: false`.
170
+
171
+ ---
172
+
173
+
174
+ ### Model Selection Guide
175
+
176
+ Roles are **dynamically generated** at runtime. Select model/reasoning_effort based on the generated role's `responsibility_type`:
177
+
178
+ | responsibility_type | model | reasoning_effort | Rationale |
179
+ |---------------------|-------|-------------------|-----------|
180
+ | exploration | (default) | medium | Read-heavy, less reasoning needed |
181
+ | analysis | (default) | high | Deep analysis requires full reasoning |
182
+ | implementation | (default) | high | Code generation needs precision |
183
+ | synthesis | (default) | medium | Aggregation over generation |
184
+ | review | (default) | high | Quality assessment needs deep reasoning |
185
+
186
+ Map each generated role's `responsibility_type` (from `team-session.json#roles`) to the table above.
187
+
188
+ Override model/reasoning_effort in spawn_agent when cost optimization is needed:
189
+ ```
190
+ spawn_agent({
191
+ agent_type: "team_worker",
192
+ task_name: "<task-id>",
193
+ fork_context: false,
194
+ model: "<model-override>",
195
+ reasoning_effort: "<effort-level>",
196
+ items: [...]
197
+ })
198
+ ```
199
+
200
+ ## v4 Agent Coordination
201
+
202
+ ### Message Semantics
203
+
204
+ | Intent | API | Example |
205
+ |--------|-----|---------|
206
+ | Queue supplementary info (don't interrupt) | `send_message` | Send upstream task findings to a running downstream worker |
207
+ | Not used in this skill | `assign_task` | No resident agents -- all workers are one-shot |
208
+ | Check running agents | `list_agents` | Verify agent health during resume |
209
+
210
+ **Note**: Since roles are dynamically generated, the coordinator must resolve task prefixes and role names from `team-session.json#roles` at runtime. There are no hardcoded role-specific examples.
211
+
212
+ ### fork_context Strategy
213
+
214
+ `fork_context: false` is the default. Consider `fork_context: true` only when:
215
+ - Runtime analysis reveals the task requires deep familiarity with the full conversation context
216
+ - The dynamically-generated role-spec indicates the worker needs project-wide understanding
217
+ - The coordinator has already accumulated significant context about the codebase
218
+
219
+ This decision should be made per-task during Phase 4 based on the role's `responsibility_type`.
220
+
221
+ ### Agent Health Check
222
+
223
+ Use `list_agents({})` in handleResume and handleComplete:
224
+
225
+ ```
226
+ // Reconcile session state with actual running agents
227
+ const running = list_agents({})
228
+ // Compare with team-session.json active_workers
229
+ // Reset orphaned tasks (in_progress but agent gone) to pending
230
+ ```
231
+
232
+ ### Named Agent Targeting
233
+
234
+ Workers are spawned with `task_name: "<task-id>"` enabling direct addressing:
235
+ - `send_message({ target: "<TASK-ID>", items: [...] })` -- queue upstream context without interrupting
236
+ - `close_agent({ target: "<TASK-ID>" })` -- cleanup by name
237
+
238
+ ## Completion Action
239
+
240
+ When pipeline completes (all tasks done), coordinator presents an interactive choice:
241
+
242
+ ```
243
+ functions.request_user_input({
244
+ questions: [{
245
+ question: "Team pipeline complete. What would you like to do?",
246
+ header: "Completion",
247
+ multiSelect: false,
248
+ options: [
249
+ { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
250
+ { label: "Keep Active", description: "Keep session for follow-up work" },
251
+ { label: "Export Results", description: "Export deliverables to target directory, then clean" }
252
+ ]
253
+ }]
254
+ })
255
+ ```
256
+
257
+ ### Action Handlers
258
+
259
+ | Choice | Steps |
260
+ |--------|-------|
261
+ | Archive & Clean | Update session status="completed" -> output final summary with artifact paths |
262
+ | Keep Active | Update session status="paused" -> output: "Resume with: Skill(skill='team-coordinate', args='resume')" |
263
+ | Export Results | functions.request_user_input(target path) -> copy artifacts to target -> Archive & Clean |
264
+
265
+ ---
266
+
267
+ ## Specs Reference
268
+
269
+ | Spec | Purpose |
270
+ |------|---------|
271
+ | [specs/pipelines.md](specs/pipelines.md) | Dynamic pipeline model, task naming, dependency graph |
272
+ | [specs/role-spec-template.md](specs/role-spec-template.md) | Template for dynamic role-spec generation |
273
+ | [specs/quality-gates.md](specs/quality-gates.md) | Quality thresholds and scoring dimensions |
274
+ | [specs/knowledge-transfer.md](specs/knowledge-transfer.md) | Context transfer protocols between roles |
275
+
276
+ ---
277
+
278
+ ## Session Directory
279
+
280
+ ```
281
+ .workflow/.team/TC-<slug>-<date>/
282
+ +-- team-session.json # Session state + dynamic role registry
283
+ +-- task-analysis.json # Phase 1 output: capabilities, dependency graph
284
+ +-- role-specs/ # Dynamic role-spec definitions (generated Phase 2)
285
+ | +-- <role-1>.md # Lightweight: frontmatter + Phase 2-4 only
286
+ | +-- <role-2>.md
287
+ +-- artifacts/ # All MD deliverables from workers
288
+ | +-- <artifact>.md
289
+ +-- .msg/ # Team message bus + state
290
+ | +-- messages.jsonl # Message log
291
+ | +-- meta.json # Session metadata + cross-role state
292
+ +-- wisdom/ # Cross-task knowledge
293
+ | +-- learnings.md
294
+ | +-- decisions.md
295
+ | +-- issues.md
296
+ +-- explorations/ # Shared explore cache
297
+ | +-- cache-index.json
298
+ | +-- explore-<angle>.json
299
+ +-- discussions/ # Inline discuss records
300
+ | +-- <round>.md
301
+ ```
302
+
303
+ ### team-session.json Schema
304
+
305
+ ```json
306
+ {
307
+ "session_id": "TC-<slug>-<date>",
308
+ "task_description": "<original user input>",
309
+ "status": "active | paused | completed",
310
+ "team_name": "<team-name>",
311
+ "roles": [
312
+ {
313
+ "name": "<role-name>",
314
+ "prefix": "<PREFIX>",
315
+ "responsibility_type": "<type>",
316
+ "inner_loop": false,
317
+ "role_spec": "role-specs/<role-name>.md"
318
+ }
319
+ ],
320
+ "pipeline": {
321
+ "dependency_graph": {},
322
+ "tasks_total": 0,
323
+ "tasks_completed": 0
324
+ },
325
+ "active_workers": [],
326
+ "completed_tasks": [],
327
+ "completion_action": "interactive",
328
+ "created_at": "<timestamp>"
329
+ }
330
+ ```
331
+
332
+ ---
333
+
334
+ ## Session Resume
335
+
336
+ Coordinator supports `resume` / `continue` for interrupted sessions:
337
+
338
+ 1. Scan `.workflow/.team/TC-*/team-session.json` for active/paused sessions
339
+ 2. Multiple matches -> request_user_input for selection
340
+ 3. Audit task states -> reconcile session state <-> task status
341
+ 4. Reset in_progress -> pending (interrupted tasks)
342
+ 5. Rebuild team and spawn needed workers only
343
+ 6. Create missing tasks, set dependencies
344
+ 7. Kick first executable task -> Phase 4 coordination loop
345
+
346
+ ---
347
+
348
+ ## Error Handling
349
+
350
+ | Scenario | Resolution |
351
+ |----------|------------|
352
+ | Unknown command | Error with available command list |
353
+ | Dynamic role-spec not found | Error, coordinator may need to regenerate |
354
+ | Command file not found | Fallback to inline execution |
355
+ | CLI tool fails | Worker proceeds with direct implementation, logs warning |
356
+ | Explore cache corrupt | Clear cache, re-explore |
357
+ | Fast-advance spawns wrong task | Coordinator reconciles on next callback |
358
+ | capability_gap reported | Coordinator generates new role-spec via handleAdapt |
359
+ | Completion action fails | Default to Keep Active, log warning |