claude-code-workflow 7.2.23 → 7.2.25

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 (212) hide show
  1. package/.ccw/workflows/cli-tools-usage.md +123 -521
  2. package/.claude/skills/brainstorm/SKILL.md +408 -408
  3. package/.claude/skills/review-cycle/SKILL.md +132 -132
  4. package/.claude/skills/spec-generator/SKILL.md +1 -1
  5. package/.claude/skills/team-designer/phases/02-scaffold-generation.md +1 -1
  6. package/.claude/skills/team-lifecycle-v4/SKILL.md +1 -1
  7. package/.claude/skills/team-review/SKILL.md +1 -1
  8. package/.claude/skills/team-ultra-analyze/SKILL.md +1 -1
  9. package/.claude/skills/workflow-multi-cli-plan/SKILL.md +1 -1
  10. package/.claude/skills/workflow-plan/SKILL.md +1 -1
  11. package/.claude/skills/workflow-test-fix/SKILL.md +1 -1
  12. package/.codex/skills/analyze-with-file/SKILL.md +966 -966
  13. package/.codex/skills/issue-discover/SKILL.md +361 -361
  14. package/.codex/skills/review-cycle/SKILL.md +1 -1
  15. package/.codex/skills/roadmap-with-file/SKILL.md +901 -901
  16. package/.codex/skills/spec-generator/SKILL.md +425 -425
  17. package/.codex/skills/spec-setup/SKILL.md +669 -669
  18. package/.codex/skills/team-arch-opt/SKILL.md +242 -175
  19. package/.codex/skills/team-arch-opt/roles/analyzer/role.md +78 -78
  20. package/.codex/skills/team-arch-opt/roles/coordinator/commands/analyze.md +57 -57
  21. package/.codex/skills/team-arch-opt/roles/coordinator/commands/monitor.md +246 -204
  22. package/.codex/skills/team-arch-opt/roles/coordinator/role.md +196 -184
  23. package/.codex/skills/team-arch-opt/roles/designer/role.md +115 -115
  24. package/.codex/skills/team-arch-opt/roles/refactorer/role.md +102 -102
  25. package/.codex/skills/team-arch-opt/roles/reviewer/role.md +111 -111
  26. package/.codex/skills/team-arch-opt/roles/validator/role.md +115 -115
  27. package/.codex/skills/team-arch-opt/specs/pipelines.md +102 -102
  28. package/.codex/skills/team-brainstorm/SKILL.md +72 -4
  29. package/.codex/skills/team-brainstorm/roles/challenger/role.md +61 -61
  30. package/.codex/skills/team-brainstorm/roles/coordinator/commands/analyze.md +58 -58
  31. package/.codex/skills/team-brainstorm/roles/coordinator/commands/monitor.md +212 -171
  32. package/.codex/skills/team-brainstorm/roles/coordinator/role.md +172 -160
  33. package/.codex/skills/team-brainstorm/roles/evaluator/role.md +56 -56
  34. package/.codex/skills/team-brainstorm/roles/ideator/role.md +69 -69
  35. package/.codex/skills/team-brainstorm/roles/synthesizer/role.md +57 -57
  36. package/.codex/skills/team-brainstorm/specs/pipelines.md +72 -72
  37. package/.codex/skills/team-coordinate/SKILL.md +71 -3
  38. package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +45 -5
  39. package/.codex/skills/team-coordinate/roles/coordinator/role.md +402 -389
  40. package/.codex/skills/team-coordinate/specs/knowledge-transfer.md +111 -111
  41. package/.codex/skills/team-coordinate/specs/pipelines.md +97 -97
  42. package/.codex/skills/team-coordinate/specs/quality-gates.md +112 -112
  43. package/.codex/skills/team-designer/SKILL.md +153 -153
  44. package/.codex/skills/team-designer/phases/01-requirements-analysis.md +250 -250
  45. package/.codex/skills/team-designer/phases/02-scaffold-generation.md +228 -228
  46. package/.codex/skills/team-designer/phases/03-content-generation.md +330 -330
  47. package/.codex/skills/team-designer/phases/04-validation.md +320 -320
  48. package/.codex/skills/team-executor/SKILL.md +29 -2
  49. package/.codex/skills/team-executor/roles/executor/commands/monitor.md +23 -15
  50. package/.codex/skills/team-frontend/SKILL.md +77 -3
  51. package/.codex/skills/team-frontend/roles/analyst/role.md +92 -92
  52. package/.codex/skills/team-frontend/roles/architect/role.md +86 -86
  53. package/.codex/skills/team-frontend/roles/coordinator/commands/analyze.md +52 -52
  54. package/.codex/skills/team-frontend/roles/coordinator/commands/monitor.md +222 -188
  55. package/.codex/skills/team-frontend/roles/coordinator/role.md +189 -177
  56. package/.codex/skills/team-frontend/roles/developer/role.md +93 -93
  57. package/.codex/skills/team-frontend/roles/qa/role.md +79 -79
  58. package/.codex/skills/team-frontend/specs/pipelines.md +76 -76
  59. package/.codex/skills/team-frontend-debug/SKILL.md +66 -3
  60. package/.codex/skills/team-frontend-debug/roles/analyzer/role.md +208 -208
  61. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/analyze.md +174 -174
  62. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/dispatch.md +198 -198
  63. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/monitor.md +177 -143
  64. package/.codex/skills/team-frontend-debug/roles/coordinator/role.md +164 -152
  65. package/.codex/skills/team-frontend-debug/roles/fixer/role.md +147 -147
  66. package/.codex/skills/team-frontend-debug/roles/reproducer/role.md +147 -147
  67. package/.codex/skills/team-frontend-debug/roles/tester/role.md +231 -231
  68. package/.codex/skills/team-frontend-debug/roles/verifier/role.md +172 -172
  69. package/.codex/skills/team-frontend-debug/specs/debug-tools.md +215 -215
  70. package/.codex/skills/team-frontend-debug/specs/pipelines.md +94 -94
  71. package/.codex/skills/team-issue/SKILL.md +83 -4
  72. package/.codex/skills/team-issue/roles/coordinator/commands/analyze.md +64 -64
  73. package/.codex/skills/team-issue/roles/coordinator/commands/dispatch.md +273 -273
  74. package/.codex/skills/team-issue/roles/coordinator/commands/monitor.md +235 -194
  75. package/.codex/skills/team-issue/roles/coordinator/role.md +206 -194
  76. package/.codex/skills/team-issue/roles/explorer/role.md +94 -94
  77. package/.codex/skills/team-issue/roles/implementer/role.md +87 -87
  78. package/.codex/skills/team-issue/roles/integrator/role.md +84 -84
  79. package/.codex/skills/team-issue/roles/planner/role.md +81 -81
  80. package/.codex/skills/team-issue/roles/reviewer/role.md +86 -86
  81. package/.codex/skills/team-issue/specs/pipelines.md +124 -124
  82. package/.codex/skills/team-lifecycle-v4/MIGRATION-PLAN.md +6 -6
  83. package/.codex/skills/team-lifecycle-v4/SKILL.md +305 -242
  84. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +1 -1
  85. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +66 -24
  86. package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +13 -1
  87. package/.codex/skills/team-lifecycle-v4/roles/supervisor/role.md +1 -1
  88. package/.codex/skills/team-lifecycle-v4/templates/architecture.md +254 -254
  89. package/.codex/skills/team-lifecycle-v4/templates/epics.md +196 -196
  90. package/.codex/skills/team-lifecycle-v4/templates/product-brief.md +133 -133
  91. package/.codex/skills/team-lifecycle-v4/templates/requirements.md +224 -224
  92. package/.codex/skills/team-perf-opt/SKILL.md +68 -3
  93. package/.codex/skills/team-perf-opt/roles/benchmarker/role.md +89 -89
  94. package/.codex/skills/team-perf-opt/roles/coordinator/commands/analyze.md +61 -61
  95. package/.codex/skills/team-perf-opt/roles/coordinator/commands/monitor.md +35 -1
  96. package/.codex/skills/team-perf-opt/roles/coordinator/role.md +179 -167
  97. package/.codex/skills/team-perf-opt/roles/optimizer/role.md +97 -97
  98. package/.codex/skills/team-perf-opt/roles/profiler/role.md +73 -73
  99. package/.codex/skills/team-perf-opt/roles/reviewer/role.md +75 -75
  100. package/.codex/skills/team-perf-opt/roles/strategist/role.md +94 -94
  101. package/.codex/skills/team-perf-opt/specs/pipelines.md +65 -65
  102. package/.codex/skills/team-planex/SKILL.md +65 -3
  103. package/.codex/skills/team-planex/roles/coordinator/commands/analyze.md +52 -52
  104. package/.codex/skills/team-planex/roles/coordinator/commands/monitor.md +210 -164
  105. package/.codex/skills/team-planex/roles/coordinator/role.md +171 -159
  106. package/.codex/skills/team-planex/roles/executor/role.md +91 -91
  107. package/.codex/skills/team-planex/roles/planner/role.md +112 -112
  108. package/.codex/skills/team-planex/specs/pipelines.md +93 -93
  109. package/.codex/skills/team-quality-assurance/SKILL.md +60 -3
  110. package/.codex/skills/team-quality-assurance/roles/analyst/role.md +80 -80
  111. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/analyze.md +72 -72
  112. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +108 -108
  113. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +243 -209
  114. package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +176 -164
  115. package/.codex/skills/team-quality-assurance/roles/executor/role.md +66 -66
  116. package/.codex/skills/team-quality-assurance/roles/generator/role.md +68 -68
  117. package/.codex/skills/team-quality-assurance/roles/scout/role.md +67 -67
  118. package/.codex/skills/team-quality-assurance/roles/strategist/role.md +71 -71
  119. package/.codex/skills/team-quality-assurance/specs/pipelines.md +115 -115
  120. package/.codex/skills/team-review/SKILL.md +58 -3
  121. package/.codex/skills/team-review/roles/coordinator/commands/analyze.md +71 -71
  122. package/.codex/skills/team-review/roles/coordinator/commands/dispatch.md +90 -90
  123. package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +225 -185
  124. package/.codex/skills/team-review/roles/coordinator/role.md +175 -163
  125. package/.codex/skills/team-review/roles/fixer/role.md +76 -76
  126. package/.codex/skills/team-review/roles/reviewer/role.md +68 -68
  127. package/.codex/skills/team-review/roles/scanner/role.md +71 -71
  128. package/.codex/skills/team-review/specs/pipelines.md +102 -102
  129. package/.codex/skills/team-roadmap-dev/SKILL.md +55 -3
  130. package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/analyze.md +61 -61
  131. package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/monitor.md +502 -468
  132. package/.codex/skills/team-roadmap-dev/roles/coordinator/role.md +335 -322
  133. package/.codex/skills/team-roadmap-dev/roles/executor/role.md +71 -71
  134. package/.codex/skills/team-roadmap-dev/roles/planner/role.md +76 -76
  135. package/.codex/skills/team-roadmap-dev/roles/verifier/role.md +74 -74
  136. package/.codex/skills/team-roadmap-dev/specs/pipelines.md +93 -93
  137. package/.codex/skills/team-tech-debt/SKILL.md +56 -3
  138. package/.codex/skills/team-tech-debt/roles/assessor/role.md +69 -69
  139. package/.codex/skills/team-tech-debt/roles/coordinator/commands/analyze.md +47 -47
  140. package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +272 -231
  141. package/.codex/skills/team-tech-debt/roles/coordinator/role.md +172 -160
  142. package/.codex/skills/team-tech-debt/roles/executor/role.md +76 -76
  143. package/.codex/skills/team-tech-debt/roles/planner/role.md +69 -69
  144. package/.codex/skills/team-tech-debt/roles/scanner/role.md +82 -82
  145. package/.codex/skills/team-tech-debt/roles/validator/role.md +75 -75
  146. package/.codex/skills/team-tech-debt/specs/pipelines.md +47 -47
  147. package/.codex/skills/team-testing/SKILL.md +72 -3
  148. package/.codex/skills/team-testing/roles/analyst/role.md +95 -95
  149. package/.codex/skills/team-testing/roles/coordinator/commands/analyze.md +70 -70
  150. package/.codex/skills/team-testing/roles/coordinator/commands/dispatch.md +106 -106
  151. package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +283 -242
  152. package/.codex/skills/team-testing/roles/coordinator/role.md +184 -172
  153. package/.codex/skills/team-testing/roles/executor/role.md +96 -96
  154. package/.codex/skills/team-testing/roles/generator/role.md +95 -95
  155. package/.codex/skills/team-testing/roles/strategist/role.md +83 -83
  156. package/.codex/skills/team-testing/specs/pipelines.md +101 -101
  157. package/.codex/skills/team-uidesign/SKILL.md +65 -3
  158. package/.codex/skills/team-uidesign/roles/coordinator/commands/analyze.md +59 -59
  159. package/.codex/skills/team-uidesign/roles/coordinator/commands/dispatch.md +156 -156
  160. package/.codex/skills/team-uidesign/roles/coordinator/commands/monitor.md +234 -194
  161. package/.codex/skills/team-uidesign/roles/coordinator/role.md +211 -199
  162. package/.codex/skills/team-uidesign/roles/designer/role.md +69 -69
  163. package/.codex/skills/team-uidesign/roles/implementer/role.md +72 -72
  164. package/.codex/skills/team-uidesign/roles/researcher/role.md +82 -82
  165. package/.codex/skills/team-uidesign/roles/reviewer/role.md +67 -67
  166. package/.codex/skills/team-uidesign/specs/pipelines.md +76 -76
  167. package/.codex/skills/team-ultra-analyze/SKILL.md +73 -3
  168. package/.codex/skills/team-ultra-analyze/roles/analyst/role.md +90 -90
  169. package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/analyze.md +73 -73
  170. package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/monitor.md +50 -9
  171. package/.codex/skills/team-ultra-analyze/roles/coordinator/role.md +255 -243
  172. package/.codex/skills/team-ultra-analyze/roles/discussant/role.md +104 -104
  173. package/.codex/skills/team-ultra-analyze/roles/explorer/role.md +74 -74
  174. package/.codex/skills/team-ultra-analyze/roles/synthesizer/role.md +78 -78
  175. package/.codex/skills/team-ultra-analyze/specs/pipelines.md +64 -64
  176. package/.codex/skills/team-ux-improve/SKILL.md +64 -3
  177. package/.codex/skills/team-ux-improve/roles/coordinator/commands/analyze.md +62 -62
  178. package/.codex/skills/team-ux-improve/roles/coordinator/commands/dispatch.md +233 -233
  179. package/.codex/skills/team-ux-improve/roles/coordinator/commands/monitor.md +195 -160
  180. package/.codex/skills/team-ux-improve/roles/coordinator/role.md +170 -158
  181. package/.codex/skills/team-ux-improve/roles/designer/role.md +122 -122
  182. package/.codex/skills/team-ux-improve/roles/diagnoser/role.md +93 -93
  183. package/.codex/skills/team-ux-improve/roles/explorer/role.md +77 -77
  184. package/.codex/skills/team-ux-improve/roles/implementer/role.md +102 -102
  185. package/.codex/skills/team-ux-improve/roles/scanner/role.md +93 -93
  186. package/.codex/skills/team-ux-improve/roles/tester/role.md +84 -84
  187. package/.codex/skills/team-ux-improve/specs/pipelines.md +54 -54
  188. package/.codex/skills/workflow-test-fix-cycle/SKILL.md +402 -402
  189. package/README.md +1 -0
  190. package/package.json +1 -1
  191. package/.claude/skills/team-iterdev/SKILL.md +0 -127
  192. package/.claude/skills/team-iterdev/roles/architect/role.md +0 -65
  193. package/.claude/skills/team-iterdev/roles/coordinator/commands/analyze.md +0 -62
  194. package/.claude/skills/team-iterdev/roles/coordinator/commands/dispatch.md +0 -234
  195. package/.claude/skills/team-iterdev/roles/coordinator/commands/monitor.md +0 -182
  196. package/.claude/skills/team-iterdev/roles/coordinator/role.md +0 -153
  197. package/.claude/skills/team-iterdev/roles/developer/role.md +0 -74
  198. package/.claude/skills/team-iterdev/roles/reviewer/role.md +0 -66
  199. package/.claude/skills/team-iterdev/roles/tester/role.md +0 -88
  200. package/.claude/skills/team-iterdev/specs/pipelines.md +0 -94
  201. package/.claude/skills/team-iterdev/specs/team-config.json +0 -172
  202. package/.codex/skills/team-iterdev/SKILL.md +0 -158
  203. package/.codex/skills/team-iterdev/roles/architect/role.md +0 -65
  204. package/.codex/skills/team-iterdev/roles/coordinator/commands/analyze.md +0 -62
  205. package/.codex/skills/team-iterdev/roles/coordinator/commands/dispatch.md +0 -187
  206. package/.codex/skills/team-iterdev/roles/coordinator/commands/monitor.md +0 -186
  207. package/.codex/skills/team-iterdev/roles/coordinator/role.md +0 -181
  208. package/.codex/skills/team-iterdev/roles/developer/role.md +0 -74
  209. package/.codex/skills/team-iterdev/roles/reviewer/role.md +0 -66
  210. package/.codex/skills/team-iterdev/roles/tester/role.md +0 -88
  211. package/.codex/skills/team-iterdev/specs/pipelines.md +0 -94
  212. package/.codex/skills/team-iterdev/specs/team-config.json +0 -172
@@ -1,194 +1,235 @@
1
- # Monitor Pipeline
2
-
3
- Event-driven pipeline coordination. Beat model: coordinator wake -> process -> spawn -> STOP.
4
-
5
- ## Constants
6
-
7
- - SPAWN_MODE: spawn_agent
8
- - ONE_STEP_PER_INVOCATION: true
9
- - FAST_ADVANCE_AWARE: true
10
- - WORKER_AGENT: team_worker
11
- - MAX_FIX_CYCLES: 2
12
-
13
- ## Handler Router
14
-
15
- | Source | Handler |
16
- |--------|---------|
17
- | Message contains [explorer], [planner], [reviewer], [integrator], [implementer] | handleCallback |
18
- | "consensus_blocked" | handleConsensus |
19
- | "capability_gap" | handleAdapt |
20
- | "check" or "status" | handleCheck |
21
- | "resume" or "continue" | handleResume |
22
- | All tasks completed | handleComplete |
23
- | Default | handleSpawnNext |
24
-
25
- ## handleCallback
26
-
27
- Worker completed. Process and advance.
28
-
29
- 1. Parse message to identify role and task ID:
30
-
31
- | Message Pattern | Role Detection |
32
- |----------------|---------------|
33
- | `[explorer]` or task ID `EXPLORE-*` | explorer |
34
- | `[planner]` or task ID `SOLVE-*` | planner |
35
- | `[reviewer]` or task ID `AUDIT-*` | reviewer |
36
- | `[integrator]` or task ID `MARSHAL-*` | integrator |
37
- | `[implementer]` or task ID `BUILD-*` | implementer |
38
-
39
- 2. Mark task as completed: Read tasks.json, update matching entry status to "completed", write back
40
- 3. Record completion in session state
41
-
42
- 4. **Review gate check** (when reviewer completes):
43
- - If completed task is AUDIT-* AND pipeline is full or batch:
44
- - Read audit report from `<session>/audits/audit-report.json`
45
- - Read .msg/meta.json for fix_cycles
46
-
47
- | Verdict | fix_cycles < max | Action |
48
- |---------|-----------------|--------|
49
- | rejected | Yes | Increment fix_cycles, create SOLVE-fix + AUDIT re-review tasks (add to tasks.json per dispatch.md Review-Fix Cycle), proceed to handleSpawnNext |
50
- | rejected | No (>= max) | Force proceed -- log warning, unblock MARSHAL |
51
- | concerns | - | Log concerns, proceed to MARSHAL (non-blocking) |
52
- | approved | - | Proceed to MARSHAL via handleSpawnNext |
53
-
54
- - Log team_msg with type "review_result" or "fix_required"
55
- - If force proceeding past rejection, mark skipped fix tasks as completed (skip)
56
-
57
- 5. **Deferred BUILD task creation** (when integrator completes):
58
- - If completed task is MARSHAL-* AND pipeline is batch:
59
- - Read execution queue from `.workflow/issues/queue/execution-queue.json`
60
- - Parse parallel_groups to determine BUILD task count M
61
- - Create BUILD-001..M tasks dynamically (add to tasks.json per dispatch.md Batch Pipeline BUILD section)
62
- - Proceed to handleSpawnNext
63
-
64
- 6. Close completed agent: `close_agent({ id: <agentId> })`
65
- 7. Proceed to handleSpawnNext
66
-
67
- ## handleCheck
68
-
69
- Read-only status report, then STOP.
70
-
71
- ```
72
- [coordinator] Pipeline Status (<pipeline-mode>)
73
- [coordinator] Progress: <done>/<total> (<pct>%)
74
- [coordinator] Active: <workers with elapsed time>
75
- [coordinator] Ready: <pending tasks with resolved deps>
76
- [coordinator] Fix Cycles: <fix_cycles>/<max_fix_cycles>
77
- [coordinator] Commands: 'resume' to advance | 'check' to refresh
78
- ```
79
-
80
- ## handleResume
81
-
82
- 1. Audit task list: Tasks stuck in "in_progress" -> reset to "pending"
83
- 2. Proceed to handleSpawnNext
84
-
85
- ## handleSpawnNext
86
-
87
- Find ready tasks, spawn workers, STOP.
88
-
89
- 1. Collect: completedSubjects, inProgressSubjects, readySubjects
90
- 2. No ready + work in progress -> report waiting, STOP
91
- 3. No ready + nothing in progress -> handleComplete
92
- 4. Has ready -> for each:
93
- a. Update tasks.json entry status -> "in_progress"
94
- b. team_msg log -> task_unblocked
95
- c. Spawn team_worker:
96
- ```
97
- const agentId = spawn_agent({
98
- agent_type: "team_worker",
99
- items: [{ type: "text", text: `## Role Assignment
100
- role: <role>
101
- role_spec: ~ or <project>/.codex/skills/team-issue/roles/<role>/role.md
102
- session: <session-folder>
103
- session_id: <session-id>
104
- team_name: issue
105
- requirement: <task-description>
106
- inner_loop: false
107
-
108
- Read role_spec file to load Phase 2-4 domain instructions.
109
- Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).` }]
110
- })
111
- ```
112
- d. Collect results: `wait_agent({ ids: [agentId], timeout_ms: 900000 })`
113
- e. Read discoveries from output files
114
- f. Update tasks.json with results
115
- g. Close agent: `close_agent({ id: agentId })`
116
-
117
- 5. Parallel spawn rules:
118
-
119
- | Pipeline | Scenario | Spawn Behavior |
120
- |----------|----------|---------------|
121
- | Quick | All stages | One worker at a time |
122
- | Full | All stages | One worker at a time |
123
- | Batch | EXPLORE-001..N unblocked | Spawn ALL N explorer workers in parallel (max 5) |
124
- | Batch | BUILD-001..M unblocked | Spawn ALL M implementer workers in parallel (max 3) |
125
- | Batch | Other stages | One worker at a time |
126
-
127
- **Parallel spawn** (Batch mode with multiple ready tasks for same role):
128
- ```
129
- const agentIds = []
130
- for (const task of readyTasks) {
131
- agentIds.push(spawn_agent({
132
- agent_type: "team_worker",
133
- items: [{ type: "text", text: `## Role Assignment
134
- role: <role>
135
- role_spec: ~ or <project>/.codex/skills/team-issue/roles/<role>/role.md
136
- session: <session-folder>
137
- session_id: <session-id>
138
- team_name: issue
139
- requirement: <task-description>
140
- agent_name: <role>-<N>
141
- inner_loop: false
142
-
143
- Read role_spec file to load Phase 2-4 domain instructions.
144
- Execute built-in Phase 1 (task discovery, owner=<role>-<N>) -> role Phase 2-4 -> built-in Phase 5 (report).` }]
145
- }))
146
- }
147
- const results = wait_agent({ ids: agentIds, timeout_ms: 900000 })
148
- // Process results, close agents
149
- for (const id of agentIds) { close_agent({ id }) }
150
- ```
151
-
152
- 6. Update session, output summary, STOP
153
-
154
- ## handleComplete
155
-
156
- Pipeline done. Generate report and completion action.
157
-
158
- Completion check by mode:
159
- | Mode | Completion Condition |
160
- |------|---------------------|
161
- | quick | All 4 tasks completed |
162
- | full | All 5 tasks (+ any fix cycle tasks) completed |
163
- | batch | All N EXPLORE + N SOLVE + 1 AUDIT + 1 MARSHAL + M BUILD (+ any fix cycle tasks) completed |
164
-
165
- 1. Verify all tasks completed via reading tasks.json
166
- 2. If any tasks not completed, return to handleSpawnNext
167
- 3. If all completed -> transition to coordinator Phase 5
168
-
169
- ## handleConsensus
170
-
171
- Handle consensus_blocked signals.
172
-
173
- | Severity | Action |
174
- |----------|--------|
175
- | HIGH | Pause pipeline, notify user with findings summary |
176
- | MEDIUM | Log finding, attempt to continue |
177
- | LOW | Log finding, continue pipeline |
178
-
179
- ## handleAdapt
180
-
181
- Capability gap reported mid-pipeline.
182
-
183
- 1. Parse gap description
184
- 2. Check if existing role covers it -> redirect
185
- 3. Role count < 6 -> generate dynamic role-spec in <session>/role-specs/
186
- 4. Create new task (add to tasks.json), spawn worker
187
- 5. Role count >= 6 -> merge or pause
188
-
189
- ## Fast-Advance Reconciliation
190
-
191
- On every coordinator wake:
192
- 1. Read team_msg entries with type="fast_advance"
193
- 2. Sync active_workers with spawned successors
194
- 3. No duplicate spawns
1
+ # Monitor Pipeline
2
+
3
+ Event-driven pipeline coordination. Beat model: coordinator wake -> process -> spawn -> STOP.
4
+
5
+ ## Constants
6
+
7
+ - SPAWN_MODE: spawn_agent
8
+ - ONE_STEP_PER_INVOCATION: true
9
+ - FAST_ADVANCE_AWARE: true
10
+ - WORKER_AGENT: team_worker
11
+ - MAX_FIX_CYCLES: 2
12
+
13
+ ## Handler Router
14
+
15
+ | Source | Handler |
16
+ |--------|---------|
17
+ | Message contains [explorer], [planner], [reviewer], [integrator], [implementer] | handleCallback |
18
+ | "consensus_blocked" | handleConsensus |
19
+ | "capability_gap" | handleAdapt |
20
+ | "check" or "status" | handleCheck |
21
+ | "resume" or "continue" | handleResume |
22
+ | All tasks completed | handleComplete |
23
+ | Default | handleSpawnNext |
24
+
25
+ ## handleCallback
26
+
27
+ Worker completed. Process and advance.
28
+
29
+ 1. Parse message to identify role and task ID:
30
+
31
+ | Message Pattern | Role Detection |
32
+ |----------------|---------------|
33
+ | `[explorer]` or task ID `EXPLORE-*` | explorer |
34
+ | `[planner]` or task ID `SOLVE-*` | planner |
35
+ | `[reviewer]` or task ID `AUDIT-*` | reviewer |
36
+ | `[integrator]` or task ID `MARSHAL-*` | integrator |
37
+ | `[implementer]` or task ID `BUILD-*` | implementer |
38
+
39
+ 2. Mark task as completed: Read tasks.json, update matching entry status to "completed", write back
40
+ 3. Record completion in session state
41
+
42
+ 4. **Review gate check** (when reviewer completes):
43
+ - If completed task is AUDIT-* AND pipeline is full or batch:
44
+ - Read audit report from `<session>/audits/audit-report.json`
45
+ - Read .msg/meta.json for fix_cycles
46
+
47
+ | Verdict | fix_cycles < max | Action |
48
+ |---------|-----------------|--------|
49
+ | rejected | Yes | Increment fix_cycles, create SOLVE-fix + AUDIT re-review tasks (add to tasks.json per dispatch.md Review-Fix Cycle), proceed to handleSpawnNext |
50
+ | rejected | No (>= max) | Force proceed -- log warning, unblock MARSHAL |
51
+ | concerns | - | Log concerns, proceed to MARSHAL (non-blocking) |
52
+ | approved | - | Proceed to MARSHAL via handleSpawnNext |
53
+
54
+ - Log team_msg with type "review_result" or "fix_required"
55
+ - If force proceeding past rejection, mark skipped fix tasks as completed (skip)
56
+
57
+ 5. **Deferred BUILD task creation** (when integrator completes):
58
+ - If completed task is MARSHAL-* AND pipeline is batch:
59
+ - Read execution queue from `.workflow/issues/queue/execution-queue.json`
60
+ - Parse parallel_groups to determine BUILD task count M
61
+ - Create BUILD-001..M tasks dynamically (add to tasks.json per dispatch.md Batch Pipeline BUILD section)
62
+ - Proceed to handleSpawnNext
63
+
64
+ 6. Close completed agent: `close_agent({ target: <agentId> })`
65
+ 7. Proceed to handleSpawnNext
66
+
67
+ ## handleCheck
68
+
69
+ Read-only status report, then STOP.
70
+
71
+ ```
72
+ [coordinator] Pipeline Status (<pipeline-mode>)
73
+ [coordinator] Progress: <done>/<total> (<pct>%)
74
+ [coordinator] Active: <workers with elapsed time>
75
+ [coordinator] Ready: <pending tasks with resolved deps>
76
+ [coordinator] Fix Cycles: <fix_cycles>/<max_fix_cycles>
77
+ [coordinator] Commands: 'resume' to advance | 'check' to refresh
78
+ ```
79
+
80
+ ## handleResume
81
+
82
+ **Agent Health Check** (v4):
83
+ ```
84
+ // Verify actual running agents match session state
85
+ const runningAgents = list_agents({})
86
+ // For each active_agent in tasks.json:
87
+ // - If agent NOT in runningAgents -> agent crashed
88
+ // - Reset that task to pending, remove from active_agents
89
+ // This prevents stale agent references from blocking the pipeline
90
+ ```
91
+
92
+ 1. Audit task list: Tasks stuck in "in_progress" -> reset to "pending"
93
+ 2. Proceed to handleSpawnNext
94
+
95
+ ## handleSpawnNext
96
+
97
+ Find ready tasks, spawn workers, STOP.
98
+
99
+ 1. Collect: completedSubjects, inProgressSubjects, readySubjects
100
+ 2. No ready + work in progress -> report waiting, STOP
101
+ 3. No ready + nothing in progress -> handleComplete
102
+ 4. Has ready -> for each:
103
+ a. Update tasks.json entry status -> "in_progress"
104
+ b. team_msg log -> task_unblocked
105
+ c. Spawn team_worker:
106
+ ```
107
+ const agentId = spawn_agent({
108
+ agent_type: "team_worker",
109
+ task_name: taskId, // e.g., "EXPLORE-001" enables named targeting
110
+ items: [{ type: "text", text: `## Role Assignment
111
+ role: <role>
112
+ role_spec: ~ or <project>/.codex/skills/team-issue/roles/<role>/role.md
113
+ session: <session-folder>
114
+ session_id: <session-id>
115
+ team_name: issue
116
+ requirement: <task-description>
117
+ inner_loop: false
118
+
119
+ Read role_spec file to load Phase 2-4 domain instructions.
120
+ Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).` }]
121
+ })
122
+ ```
123
+ d. Collect results: `wait_agent({ targets: [taskId], timeout_ms: 900000 })`
124
+ e. Read discoveries from output files
125
+ f. Update tasks.json with results
126
+ g. Close agent: `close_agent({ target: taskId })` // Use task_name, not agentId
127
+
128
+ 5. Parallel spawn rules:
129
+
130
+ | Pipeline | Scenario | Spawn Behavior |
131
+ |----------|----------|---------------|
132
+ | Quick | All stages | One worker at a time |
133
+ | Full | All stages | One worker at a time |
134
+ | Batch | EXPLORE-001..N unblocked | Spawn ALL N explorer workers in parallel (max 5) |
135
+ | Batch | BUILD-001..M unblocked | Spawn ALL M implementer workers in parallel (max 3) |
136
+ | Batch | Other stages | One worker at a time |
137
+
138
+ **Parallel spawn** (Batch mode with multiple ready tasks for same role):
139
+ ```
140
+ const agentIds = []
141
+ for (const task of readyTasks) {
142
+ agentIds.push(spawn_agent({
143
+ agent_type: "team_worker",
144
+ task_name: task.id, // e.g., "EXPLORE-001" enables named targeting
145
+ items: [{ type: "text", text: `## Role Assignment
146
+ role: <role>
147
+ role_spec: ~ or <project>/.codex/skills/team-issue/roles/<role>/role.md
148
+ session: <session-folder>
149
+ session_id: <session-id>
150
+ team_name: issue
151
+ requirement: <task-description>
152
+ agent_name: <role>-<N>
153
+ inner_loop: false
154
+
155
+ Read role_spec file to load Phase 2-4 domain instructions.
156
+ Execute built-in Phase 1 (task discovery, owner=<role>-<N>) -> role Phase 2-4 -> built-in Phase 5 (report).` }]
157
+ }))
158
+ }
159
+ // Use task_name for stable targeting (v4)
160
+ const taskNames = readyTasks.map(t => t.id)
161
+ const results = wait_agent({ targets: taskNames, timeout_ms: 900000 })
162
+ if (results.timed_out) {
163
+ for (const taskId of taskNames) { state.tasks[taskId].status = 'timed_out'; close_agent({ target: taskId }) }
164
+ } else {
165
+ // Process results, close agents
166
+ for (const taskId of taskNames) { close_agent({ target: taskId }) }
167
+ }
168
+ ```
169
+
170
+ **Cross-Agent Supplementary Context** (v4):
171
+
172
+ When spawning workers in a later pipeline phase, send upstream results as supplementary context to already-running workers:
173
+
174
+ ```
175
+ // Example: Send exploration results to running planner
176
+ send_message({
177
+ target: "<running-agent-task-name>",
178
+ items: [{ type: "text", text: `## Supplementary Context\n${upstreamFindings}` }]
179
+ })
180
+ // Note: send_message queues info without interrupting the agent's current work
181
+ ```
182
+
183
+ Use `send_message` (not `assign_task`) for supplementary info that enriches but doesn't redirect the agent's current task.
184
+
185
+ 6. Update session, output summary, STOP
186
+
187
+ ## handleComplete
188
+
189
+ **Cleanup Verification** (v4):
190
+ ```
191
+ // Verify all agents are properly closed
192
+ const remaining = list_agents({})
193
+ // If any team agents still running -> close_agent each
194
+ // Ensures clean session shutdown
195
+ ```
196
+
197
+ Pipeline done. Generate report and completion action.
198
+
199
+ Completion check by mode:
200
+ | Mode | Completion Condition |
201
+ |------|---------------------|
202
+ | quick | All 4 tasks completed |
203
+ | full | All 5 tasks (+ any fix cycle tasks) completed |
204
+ | batch | All N EXPLORE + N SOLVE + 1 AUDIT + 1 MARSHAL + M BUILD (+ any fix cycle tasks) completed |
205
+
206
+ 1. Verify all tasks completed via reading tasks.json
207
+ 2. If any tasks not completed, return to handleSpawnNext
208
+ 3. If all completed -> transition to coordinator Phase 5
209
+
210
+ ## handleConsensus
211
+
212
+ Handle consensus_blocked signals.
213
+
214
+ | Severity | Action |
215
+ |----------|--------|
216
+ | HIGH | Pause pipeline, notify user with findings summary |
217
+ | MEDIUM | Log finding, attempt to continue |
218
+ | LOW | Log finding, continue pipeline |
219
+
220
+ ## handleAdapt
221
+
222
+ Capability gap reported mid-pipeline.
223
+
224
+ 1. Parse gap description
225
+ 2. Check if existing role covers it -> redirect
226
+ 3. Role count < 6 -> generate dynamic role-spec in <session>/role-specs/
227
+ 4. Create new task (add to tasks.json), spawn worker
228
+ 5. Role count >= 6 -> merge or pause
229
+
230
+ ## Fast-Advance Reconciliation
231
+
232
+ On every coordinator wake:
233
+ 1. Read team_msg entries with type="fast_advance"
234
+ 2. Sync active_workers with spawned successors
235
+ 3. No duplicate spawns