maestro-flow 0.3.2 → 0.3.4

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 (187) hide show
  1. package/.claude/CLAUDE.md +2 -2
  2. package/.claude/agents/cli-explore-agent.md +1 -1
  3. package/.claude/agents/team-worker.md +237 -237
  4. package/.claude/commands/maestro-coordinate.md +65 -65
  5. package/.claude/commands/maestro-link-coordinate.md +71 -71
  6. package/.claude/commands/manage-issue-execute.md +73 -73
  7. package/.claude/commands/quality-business-test.md +110 -0
  8. package/.claude/skills/team-coordinate/SKILL.md +266 -266
  9. package/.claude/skills/team-lifecycle-v4/SKILL.md +209 -209
  10. package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +94 -94
  11. package/.claude/skills/team-lifecycle-v4/roles/executor/commands/implement.md +62 -62
  12. package/.claude/skills/team-lifecycle-v4/roles/planner/role.md +85 -85
  13. package/.claude/skills/team-lifecycle-v4/roles/writer/role.md +95 -95
  14. package/.claude/skills/team-quality-assurance/SKILL.md +147 -147
  15. package/.claude/skills/team-quality-assurance/roles/scout/role.md +75 -75
  16. package/.claude/skills/team-review/SKILL.md +147 -147
  17. package/.claude/skills/team-review/roles/reviewer/role.md +68 -68
  18. package/.claude/skills/team-review/roles/scanner/role.md +79 -79
  19. package/.claude/skills/team-tech-debt/SKILL.md +128 -128
  20. package/.claude/skills/team-tech-debt/roles/executor/role.md +76 -76
  21. package/.claude/skills/team-tech-debt/roles/scanner/role.md +90 -90
  22. package/.claude/skills/team-tech-debt/roles/validator/role.md +78 -78
  23. package/.claude/skills/team-testing/SKILL.md +143 -143
  24. package/.claude/skills/team-testing/roles/executor/role.md +99 -99
  25. package/.claude/skills/team-testing/roles/generator/role.md +98 -98
  26. package/.codex/skills/maestro-coordinate/SKILL.md +1 -1
  27. package/.codex/skills/manage-issue-analyze/SKILL.md +3 -3
  28. package/.codex/skills/manage-issue-execute/SKILL.md +4 -4
  29. package/.codex/skills/manage-issue-plan/SKILL.md +2 -2
  30. package/.codex/skills/quality-business-test/SKILL.md +223 -0
  31. package/.codex/skills/team-coordinate/SKILL.md +7 -7
  32. package/.codex/skills/team-coordinate/roles/coordinator/role.md +1 -1
  33. package/.codex/skills/team-lifecycle-v4/SKILL.md +2 -2
  34. package/.codex/skills/team-lifecycle-v4/instructions/agent-instruction.md +2 -2
  35. package/.codex/skills/team-lifecycle-v4/roles/analyst/role.md +2 -2
  36. package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +2 -2
  37. package/.codex/skills/team-lifecycle-v4/roles/executor/commands/implement.md +1 -1
  38. package/.codex/skills/team-lifecycle-v4/roles/planner/role.md +2 -2
  39. package/.codex/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  40. package/.codex/skills/team-quality-assurance/SKILL.md +2 -2
  41. package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +2 -2
  42. package/.codex/skills/team-quality-assurance/roles/scout/role.md +2 -2
  43. package/.codex/skills/team-review/SKILL.md +2 -2
  44. package/.codex/skills/team-review/roles/coordinator/role.md +2 -2
  45. package/.codex/skills/team-review/roles/reviewer/role.md +1 -1
  46. package/.codex/skills/team-review/roles/scanner/role.md +1 -1
  47. package/.codex/skills/team-tech-debt/SKILL.md +2 -2
  48. package/.codex/skills/team-tech-debt/roles/coordinator/role.md +1 -1
  49. package/.codex/skills/team-tech-debt/roles/executor/role.md +1 -1
  50. package/.codex/skills/team-tech-debt/roles/scanner/role.md +1 -1
  51. package/.codex/skills/team-tech-debt/roles/validator/role.md +1 -1
  52. package/.codex/skills/team-testing/SKILL.md +2 -2
  53. package/.codex/skills/team-testing/roles/coordinator/role.md +2 -2
  54. package/.codex/skills/team-testing/roles/executor/role.md +1 -1
  55. package/.codex/skills/team-testing/roles/generator/role.md +1 -1
  56. package/README.md +31 -2
  57. package/README.zh-CN.md +23 -1
  58. package/chains/_intent-map.json +6 -0
  59. package/chains/_router.json +14 -0
  60. package/chains/full-lifecycle.json +15 -0
  61. package/chains/quality-loop.json +16 -1
  62. package/chains/singles/business-test.json +26 -0
  63. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js +16 -2
  64. package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js.map +1 -1
  65. package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.d.ts +1 -1
  66. package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js +25 -9
  67. package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js.map +1 -1
  68. package/dashboard/dist-server/src/agents/cli-agent-runner.d.ts +3 -0
  69. package/dashboard/dist-server/src/agents/cli-agent-runner.js +78 -61
  70. package/dashboard/dist-server/src/agents/cli-agent-runner.js.map +1 -1
  71. package/dashboard/dist-server/src/agents/cli-history-store.d.ts +14 -1
  72. package/dashboard/dist-server/src/agents/cli-history-store.js +24 -2
  73. package/dashboard/dist-server/src/agents/cli-history-store.js.map +1 -1
  74. package/dashboard/dist-server/src/commands/delegate.js +142 -6
  75. package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
  76. package/dist/src/agents/cli-agent-runner.d.ts +3 -0
  77. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  78. package/dist/src/agents/cli-agent-runner.js +78 -61
  79. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  80. package/dist/src/agents/cli-history-store.d.ts +14 -1
  81. package/dist/src/agents/cli-history-store.d.ts.map +1 -1
  82. package/dist/src/agents/cli-history-store.js +24 -2
  83. package/dist/src/agents/cli-history-store.js.map +1 -1
  84. package/dist/src/commands/delegate.d.ts.map +1 -1
  85. package/dist/src/commands/delegate.js +142 -6
  86. package/dist/src/commands/delegate.js.map +1 -1
  87. package/dist/src/commands/hooks.d.ts +15 -0
  88. package/dist/src/commands/hooks.d.ts.map +1 -1
  89. package/dist/src/commands/hooks.js +29 -2
  90. package/dist/src/commands/hooks.js.map +1 -1
  91. package/dist/src/commands/install-backend.d.ts +15 -0
  92. package/dist/src/commands/install-backend.d.ts.map +1 -1
  93. package/dist/src/commands/install-backend.js +67 -0
  94. package/dist/src/commands/install-backend.js.map +1 -1
  95. package/dist/src/commands/install-ui/BackupConfig.d.ts +6 -4
  96. package/dist/src/commands/install-ui/BackupConfig.d.ts.map +1 -1
  97. package/dist/src/commands/install-ui/BackupConfig.js +39 -12
  98. package/dist/src/commands/install-ui/BackupConfig.js.map +1 -1
  99. package/dist/src/commands/install-ui/ConfigPanel.d.ts.map +1 -1
  100. package/dist/src/commands/install-ui/ConfigPanel.js +1 -1
  101. package/dist/src/commands/install-ui/ConfigPanel.js.map +1 -1
  102. package/dist/src/commands/install-ui/InstallConfirm.d.ts +3 -0
  103. package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
  104. package/dist/src/commands/install-ui/InstallConfirm.js +5 -1
  105. package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
  106. package/dist/src/commands/install-ui/InstallExecution.d.ts +2 -0
  107. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  108. package/dist/src/commands/install-ui/InstallExecution.js +30 -5
  109. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  110. package/dist/src/commands/install-ui/InstallFlow.d.ts +1 -1
  111. package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
  112. package/dist/src/commands/install-ui/InstallFlow.js +31 -6
  113. package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
  114. package/dist/src/commands/install-ui/InstallHub.d.ts +5 -0
  115. package/dist/src/commands/install-ui/InstallHub.d.ts.map +1 -1
  116. package/dist/src/commands/install-ui/InstallHub.js +24 -0
  117. package/dist/src/commands/install-ui/InstallHub.js.map +1 -1
  118. package/dist/src/commands/install-ui/InstallResult.d.ts.map +1 -1
  119. package/dist/src/commands/install-ui/InstallResult.js +1 -1
  120. package/dist/src/commands/install-ui/InstallResult.js.map +1 -1
  121. package/dist/src/commands/install-ui/StatuslineConfig.d.ts +9 -0
  122. package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -0
  123. package/dist/src/commands/install-ui/StatuslineConfig.js +13 -0
  124. package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -0
  125. package/dist/src/commands/install-ui/index.d.ts +1 -1
  126. package/dist/src/commands/install-ui/index.d.ts.map +1 -1
  127. package/dist/src/commands/install-ui/types.d.ts +6 -0
  128. package/dist/src/commands/install-ui/types.d.ts.map +1 -1
  129. package/dist/src/commands/install-ui/types.js +3 -0
  130. package/dist/src/commands/install-ui/types.js.map +1 -1
  131. package/dist/src/commands/install.d.ts.map +1 -1
  132. package/dist/src/commands/install.js +6 -1
  133. package/dist/src/commands/install.js.map +1 -1
  134. package/dist/src/commands/overlay.d.ts.map +1 -1
  135. package/dist/src/commands/overlay.js +45 -1
  136. package/dist/src/commands/overlay.js.map +1 -1
  137. package/dist/src/commands/team.d.ts +10 -0
  138. package/dist/src/commands/team.d.ts.map +1 -1
  139. package/dist/src/commands/team.js +436 -42
  140. package/dist/src/commands/team.js.map +1 -1
  141. package/dist/src/core/manifest.d.ts.map +1 -1
  142. package/dist/src/core/manifest.js +58 -0
  143. package/dist/src/core/manifest.js.map +1 -1
  144. package/dist/src/core/overlay/applier.d.ts +4 -0
  145. package/dist/src/core/overlay/applier.d.ts.map +1 -1
  146. package/dist/src/core/overlay/applier.js.map +1 -1
  147. package/dist/src/hooks/delegate-monitor.js +1 -1
  148. package/dist/src/hooks/delegate-monitor.js.map +1 -1
  149. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  150. package/dist/src/hooks/plugins/spec-injection-plugin.js +17 -1
  151. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  152. package/dist/src/hooks/spec-injector.d.ts +2 -1
  153. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  154. package/dist/src/hooks/spec-injector.js +19 -2
  155. package/dist/src/hooks/spec-injector.js.map +1 -1
  156. package/dist/src/hooks/team-monitor.d.ts.map +1 -1
  157. package/dist/src/hooks/team-monitor.js +17 -0
  158. package/dist/src/hooks/team-monitor.js.map +1 -1
  159. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  160. package/dist/src/i18n/locales/en.js +25 -1
  161. package/dist/src/i18n/locales/en.js.map +1 -1
  162. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  163. package/dist/src/i18n/locales/zh.js +25 -1
  164. package/dist/src/i18n/locales/zh.js.map +1 -1
  165. package/dist/src/i18n/types.d.ts +22 -0
  166. package/dist/src/i18n/types.d.ts.map +1 -1
  167. package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
  168. package/dist/src/mcp/delegate-channel-relay.js +9 -9
  169. package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
  170. package/dist/src/tools/index.d.ts.map +1 -1
  171. package/dist/src/tools/index.js +11 -2
  172. package/dist/src/tools/index.js.map +1 -1
  173. package/dist/src/tools/namespace-guard.d.ts +37 -0
  174. package/dist/src/tools/namespace-guard.d.ts.map +1 -0
  175. package/dist/src/tools/namespace-guard.js +126 -0
  176. package/dist/src/tools/namespace-guard.js.map +1 -0
  177. package/dist/src/tools/spec-loader.d.ts +17 -1
  178. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  179. package/dist/src/tools/spec-loader.js +71 -13
  180. package/dist/src/tools/spec-loader.js.map +1 -1
  181. package/dist/src/tools/team-members.d.ts +16 -0
  182. package/dist/src/tools/team-members.d.ts.map +1 -1
  183. package/dist/src/tools/team-members.js +31 -0
  184. package/dist/src/tools/team-members.js.map +1 -1
  185. package/package.json +2 -2
  186. package/templates/business-test-report.json +68 -0
  187. package/workflows/delegate-usage.md +330 -0
@@ -1,209 +1,209 @@
1
- ---
2
- name: team-lifecycle-v4
3
- description: Full lifecycle team skill — plan, develop, test, review in one coordinated session. Role-based architecture with coordinator-driven beat model. Triggers on "team lifecycle v4".
4
- allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Agent(*), AskUserQuestion(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*), mcp__ccw-tools__team_msg(*)
5
- ---
6
-
7
- # Team Lifecycle v4
8
-
9
- Orchestrate multi-agent software development: specification → planning → implementation → testing → review.
10
-
11
- ## Architecture
12
-
13
- ```
14
- Skill(skill="team-lifecycle-v4", args="task description")
15
- |
16
- SKILL.md (this file) = Router
17
- |
18
- +--------------+--------------+
19
- | |
20
- no --role flag --role <name>
21
- | |
22
- Coordinator Worker
23
- roles/coordinator/role.md roles/<name>/role.md
24
- |
25
- +-- analyze → dispatch → spawn → STOP
26
- |
27
- +--------+---+--------+
28
- v v v
29
- [team-worker] ... [team-supervisor]
30
- per-task resident agent
31
- lifecycle message-driven
32
- (woken via SendMessage)
33
- ```
34
-
35
- ## Role Registry
36
-
37
- | Role | Path | Prefix | Inner Loop |
38
- |------|------|--------|------------|
39
- | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | — | — |
40
- | analyst | [roles/analyst/role.md](roles/analyst/role.md) | RESEARCH-* | false |
41
- | writer | [roles/writer/role.md](roles/writer/role.md) | DRAFT-* | true |
42
- | planner | [roles/planner/role.md](roles/planner/role.md) | PLAN-* | true |
43
- | executor | [roles/executor/role.md](roles/executor/role.md) | IMPL-* | true |
44
- | tester | [roles/tester/role.md](roles/tester/role.md) | TEST-* | false |
45
- | reviewer | [roles/reviewer/role.md](roles/reviewer/role.md) | REVIEW-*, QUALITY-*, IMPROVE-* | false |
46
- | supervisor | [roles/supervisor/role.md](roles/supervisor/role.md) | CHECKPOINT-* | false |
47
-
48
- ## Role Router
49
-
50
- Parse `$ARGUMENTS`:
51
- - Has `--role <name>` → Read `roles/<name>/role.md`, execute Phase 2-4
52
- - No `--role` → `@roles/coordinator/role.md`, execute entry router
53
-
54
- ## Shared Constants
55
-
56
- - **Session prefix**: `TLV4`
57
- - **Session path**: `.workflow/.team/TLV4-<slug>-<date>/`
58
- - **CLI tools**: `maestro cli --mode analysis` (read-only), `maestro cli --mode write` (modifications)
59
- - **Message bus**: `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)`
60
-
61
- ## Worker Spawn Template
62
-
63
- Coordinator spawns workers using this template:
64
-
65
- ```
66
- Agent({
67
- subagent_type: "team-worker",
68
- description: "Spawn <role> worker",
69
- team_name: <team-name>,
70
- name: "<role>",
71
- run_in_background: true,
72
- prompt: `## Role Assignment
73
- role: <role>
74
- role_spec: <skill_root>/roles/<role>/role.md
75
- session: <session-folder>
76
- session_id: <session-id>
77
- team_name: <team-name>
78
- requirement: <task-description>
79
- inner_loop: <true|false>
80
-
81
- ## Progress Milestones
82
- session_id: <session-id>
83
- Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
84
- Report blockers immediately via team_msg type="blocker".
85
- Report completion via team_msg type="task_complete" after final SendMessage.
86
-
87
- Read role_spec file (@<skill_root>/roles/<role>/role.md) to load Phase 2-4 domain instructions.
88
- Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
89
- })
90
- ```
91
-
92
- ## Supervisor Spawn Template
93
-
94
- Supervisor is a **resident agent** (independent from team-worker). Spawned once during session init, woken via SendMessage for each CHECKPOINT task.
95
-
96
- ### Spawn (Phase 2 — once per session)
97
-
98
- ```
99
- Agent({
100
- subagent_type: "team-supervisor",
101
- description: "Spawn resident supervisor",
102
- team_name: <team-name>,
103
- name: "supervisor",
104
- run_in_background: true,
105
- prompt: `## Role Assignment
106
- role: supervisor
107
- role_spec: <skill_root>/roles/supervisor/role.md
108
- session: <session-folder>
109
- session_id: <session-id>
110
- team_name: <team-name>
111
- requirement: <task-description>
112
-
113
- ## Progress Milestones
114
- session_id: <session-id>
115
- Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
116
- Report blockers immediately via team_msg type="blocker".
117
- Report completion via team_msg type="task_complete" after final SendMessage.
118
-
119
- Read role_spec file (@<skill_root>/roles/supervisor/role.md) to load checkpoint definitions.
120
- Init: load baseline context, report ready, go idle.
121
- Wake cycle: coordinator sends checkpoint requests via SendMessage.`
122
- })
123
- ```
124
-
125
- ### Wake (handleSpawnNext — per CHECKPOINT task)
126
-
127
- ```
128
- SendMessage({
129
- type: "message",
130
- recipient: "supervisor",
131
- content: `## Checkpoint Request
132
- task_id: <CHECKPOINT-NNN>
133
- scope: [<upstream-task-ids>]
134
- pipeline_progress: <done>/<total> tasks completed`,
135
- summary: "Checkpoint request: <CHECKPOINT-NNN>"
136
- })
137
- ```
138
-
139
- ### Shutdown (handleComplete)
140
-
141
- ```
142
- SendMessage({
143
- type: "shutdown_request",
144
- recipient: "supervisor",
145
- content: "Pipeline complete, shutting down supervisor"
146
- })
147
- ```
148
-
149
- ## User Commands
150
-
151
- | Command | Action |
152
- |---------|--------|
153
- | `check` / `status` | View execution status graph |
154
- | `resume` / `continue` | Advance to next step |
155
- | `revise <TASK-ID> [feedback]` | Revise specific task |
156
- | `feedback <text>` | Inject feedback for revision |
157
- | `recheck` | Re-run quality check |
158
- | `improve [dimension]` | Auto-improve weakest dimension |
159
-
160
- ## Completion Action
161
-
162
- When pipeline completes, coordinator presents:
163
-
164
- ```
165
- AskUserQuestion({
166
- questions: [{
167
- question: "Pipeline complete. What would you like to do?",
168
- header: "Completion",
169
- multiSelect: false,
170
- options: [
171
- { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
172
- { label: "Keep Active", description: "Keep session for follow-up work" },
173
- { label: "Export Results", description: "Export deliverables to target directory" }
174
- ]
175
- }]
176
- })
177
- ```
178
-
179
- ## Specs Reference
180
-
181
- - [specs/pipelines.md](specs/pipelines.md) — Pipeline definitions and task registry
182
- - [specs/quality-gates.md](specs/quality-gates.md) — Quality gate criteria and scoring
183
- - [specs/knowledge-transfer.md](specs/knowledge-transfer.md) — Artifact and state transfer protocols
184
-
185
- ## Session Directory
186
-
187
- ```
188
- .workflow/.team/TLV4-<slug>-<date>/
189
- ├── team-session.json # Session state + role registry
190
- ├── spec/ # Spec phase outputs
191
- ├── plan/ # Implementation plan + TASK-*.json
192
- ├── artifacts/ # All deliverables
193
- ├── wisdom/ # Cross-task knowledge
194
- ├── explorations/ # Shared explore cache
195
- ├── discussions/ # Discuss round records
196
- └── .msg/ # Team message bus
197
- ```
198
-
199
- ## Error Handling
200
-
201
- | Scenario | Resolution |
202
- |----------|------------|
203
- | Unknown command | Error with available command list |
204
- | Role not found | Error with role registry |
205
- | CLI tool fails | Worker fallback to direct implementation |
206
- | Fast-advance conflict | Coordinator reconciles on next callback |
207
- | Supervisor crash | Respawn with `recovery: true`, auto-rebuilds from existing reports |
208
- | Supervisor not ready for CHECKPOINT | Spawn/respawn supervisor, wait for ready, then wake |
209
- | Completion action fails | Default to Keep Active |
1
+ ---
2
+ name: team-lifecycle-v4
3
+ description: Full lifecycle team skill — plan, develop, test, review in one coordinated session. Role-based architecture with coordinator-driven beat model. Triggers on "team lifecycle v4".
4
+ allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Agent(*), AskUserQuestion(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*), mcp__ccw-tools__team_msg(*)
5
+ ---
6
+
7
+ # Team Lifecycle v4
8
+
9
+ Orchestrate multi-agent software development: specification → planning → implementation → testing → review.
10
+
11
+ ## Architecture
12
+
13
+ ```
14
+ Skill(skill="team-lifecycle-v4", args="task description")
15
+ |
16
+ SKILL.md (this file) = Router
17
+ |
18
+ +--------------+--------------+
19
+ | |
20
+ no --role flag --role <name>
21
+ | |
22
+ Coordinator Worker
23
+ roles/coordinator/role.md roles/<name>/role.md
24
+ |
25
+ +-- analyze → dispatch → spawn → STOP
26
+ |
27
+ +--------+---+--------+
28
+ v v v
29
+ [team-worker] ... [team-supervisor]
30
+ per-task resident agent
31
+ lifecycle message-driven
32
+ (woken via SendMessage)
33
+ ```
34
+
35
+ ## Role Registry
36
+
37
+ | Role | Path | Prefix | Inner Loop |
38
+ |------|------|--------|------------|
39
+ | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | — | — |
40
+ | analyst | [roles/analyst/role.md](roles/analyst/role.md) | RESEARCH-* | false |
41
+ | writer | [roles/writer/role.md](roles/writer/role.md) | DRAFT-* | true |
42
+ | planner | [roles/planner/role.md](roles/planner/role.md) | PLAN-* | true |
43
+ | executor | [roles/executor/role.md](roles/executor/role.md) | IMPL-* | true |
44
+ | tester | [roles/tester/role.md](roles/tester/role.md) | TEST-* | false |
45
+ | reviewer | [roles/reviewer/role.md](roles/reviewer/role.md) | REVIEW-*, QUALITY-*, IMPROVE-* | false |
46
+ | supervisor | [roles/supervisor/role.md](roles/supervisor/role.md) | CHECKPOINT-* | false |
47
+
48
+ ## Role Router
49
+
50
+ Parse `$ARGUMENTS`:
51
+ - Has `--role <name>` → Read `roles/<name>/role.md`, execute Phase 2-4
52
+ - No `--role` → `@roles/coordinator/role.md`, execute entry router
53
+
54
+ ## Shared Constants
55
+
56
+ - **Session prefix**: `TLV4`
57
+ - **Session path**: `.workflow/.team/TLV4-<slug>-<date>/`
58
+ - **CLI tools**: `maestro delegate --mode analysis` (read-only), `maestro delegate --mode write` (modifications)
59
+ - **Message bus**: `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)`
60
+
61
+ ## Worker Spawn Template
62
+
63
+ Coordinator spawns workers using this template:
64
+
65
+ ```
66
+ Agent({
67
+ subagent_type: "team-worker",
68
+ description: "Spawn <role> worker",
69
+ team_name: <team-name>,
70
+ name: "<role>",
71
+ run_in_background: true,
72
+ prompt: `## Role Assignment
73
+ role: <role>
74
+ role_spec: <skill_root>/roles/<role>/role.md
75
+ session: <session-folder>
76
+ session_id: <session-id>
77
+ team_name: <team-name>
78
+ requirement: <task-description>
79
+ inner_loop: <true|false>
80
+
81
+ ## Progress Milestones
82
+ session_id: <session-id>
83
+ Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
84
+ Report blockers immediately via team_msg type="blocker".
85
+ Report completion via team_msg type="task_complete" after final SendMessage.
86
+
87
+ Read role_spec file (@<skill_root>/roles/<role>/role.md) to load Phase 2-4 domain instructions.
88
+ Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
89
+ })
90
+ ```
91
+
92
+ ## Supervisor Spawn Template
93
+
94
+ Supervisor is a **resident agent** (independent from team-worker). Spawned once during session init, woken via SendMessage for each CHECKPOINT task.
95
+
96
+ ### Spawn (Phase 2 — once per session)
97
+
98
+ ```
99
+ Agent({
100
+ subagent_type: "team-supervisor",
101
+ description: "Spawn resident supervisor",
102
+ team_name: <team-name>,
103
+ name: "supervisor",
104
+ run_in_background: true,
105
+ prompt: `## Role Assignment
106
+ role: supervisor
107
+ role_spec: <skill_root>/roles/supervisor/role.md
108
+ session: <session-folder>
109
+ session_id: <session-id>
110
+ team_name: <team-name>
111
+ requirement: <task-description>
112
+
113
+ ## Progress Milestones
114
+ session_id: <session-id>
115
+ Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
116
+ Report blockers immediately via team_msg type="blocker".
117
+ Report completion via team_msg type="task_complete" after final SendMessage.
118
+
119
+ Read role_spec file (@<skill_root>/roles/supervisor/role.md) to load checkpoint definitions.
120
+ Init: load baseline context, report ready, go idle.
121
+ Wake cycle: coordinator sends checkpoint requests via SendMessage.`
122
+ })
123
+ ```
124
+
125
+ ### Wake (handleSpawnNext — per CHECKPOINT task)
126
+
127
+ ```
128
+ SendMessage({
129
+ type: "message",
130
+ recipient: "supervisor",
131
+ content: `## Checkpoint Request
132
+ task_id: <CHECKPOINT-NNN>
133
+ scope: [<upstream-task-ids>]
134
+ pipeline_progress: <done>/<total> tasks completed`,
135
+ summary: "Checkpoint request: <CHECKPOINT-NNN>"
136
+ })
137
+ ```
138
+
139
+ ### Shutdown (handleComplete)
140
+
141
+ ```
142
+ SendMessage({
143
+ type: "shutdown_request",
144
+ recipient: "supervisor",
145
+ content: "Pipeline complete, shutting down supervisor"
146
+ })
147
+ ```
148
+
149
+ ## User Commands
150
+
151
+ | Command | Action |
152
+ |---------|--------|
153
+ | `check` / `status` | View execution status graph |
154
+ | `resume` / `continue` | Advance to next step |
155
+ | `revise <TASK-ID> [feedback]` | Revise specific task |
156
+ | `feedback <text>` | Inject feedback for revision |
157
+ | `recheck` | Re-run quality check |
158
+ | `improve [dimension]` | Auto-improve weakest dimension |
159
+
160
+ ## Completion Action
161
+
162
+ When pipeline completes, coordinator presents:
163
+
164
+ ```
165
+ AskUserQuestion({
166
+ questions: [{
167
+ question: "Pipeline complete. What would you like to do?",
168
+ header: "Completion",
169
+ multiSelect: false,
170
+ options: [
171
+ { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
172
+ { label: "Keep Active", description: "Keep session for follow-up work" },
173
+ { label: "Export Results", description: "Export deliverables to target directory" }
174
+ ]
175
+ }]
176
+ })
177
+ ```
178
+
179
+ ## Specs Reference
180
+
181
+ - [specs/pipelines.md](specs/pipelines.md) — Pipeline definitions and task registry
182
+ - [specs/quality-gates.md](specs/quality-gates.md) — Quality gate criteria and scoring
183
+ - [specs/knowledge-transfer.md](specs/knowledge-transfer.md) — Artifact and state transfer protocols
184
+
185
+ ## Session Directory
186
+
187
+ ```
188
+ .workflow/.team/TLV4-<slug>-<date>/
189
+ ├── team-session.json # Session state + role registry
190
+ ├── spec/ # Spec phase outputs
191
+ ├── plan/ # Implementation plan + TASK-*.json
192
+ ├── artifacts/ # All deliverables
193
+ ├── wisdom/ # Cross-task knowledge
194
+ ├── explorations/ # Shared explore cache
195
+ ├── discussions/ # Discuss round records
196
+ └── .msg/ # Team message bus
197
+ ```
198
+
199
+ ## Error Handling
200
+
201
+ | Scenario | Resolution |
202
+ |----------|------------|
203
+ | Unknown command | Error with available command list |
204
+ | Role not found | Error with role registry |
205
+ | CLI tool fails | Worker fallback to direct implementation |
206
+ | Fast-advance conflict | Coordinator reconciles on next callback |
207
+ | Supervisor crash | Respawn with `recovery: true`, auto-rebuilds from existing reports |
208
+ | Supervisor not ready for CHECKPOINT | Spawn/respawn supervisor, wait for ready, then wake |
209
+ | Completion action fails | Default to Keep Active |
@@ -1,94 +1,94 @@
1
- ---
2
- role: analyst
3
- prefix: RESEARCH
4
- inner_loop: false
5
- discuss_rounds: [DISCUSS-001]
6
- message_types:
7
- success: research_ready
8
- error: error
9
- ---
10
-
11
- # Analyst
12
-
13
- Research and codebase exploration for context gathering.
14
-
15
- ## Identity
16
- - Tag: [analyst] | Prefix: RESEARCH-*
17
- - Responsibility: Gather structured context from topic and codebase
18
-
19
- ## Boundaries
20
- ### MUST
21
- - Extract structured seed information from task topic
22
- - Explore codebase if project detected
23
- - Package context for downstream roles
24
- ### MUST NOT
25
- - Implement code or modify files
26
- - Make architectural decisions
27
- - Skip codebase exploration when project files exist
28
-
29
- ## Phase 2: Seed Analysis
30
-
31
- 1. Read upstream artifacts via team_msg(operation="get_state")
32
- 2. Extract session folder from task description
33
- 3. Parse topic from task description
34
- 4. If topic references file (@path or .md/.txt) → read it
35
- 5. CLI seed analysis:
36
- ```
37
- Bash({ command: `maestro cli -p "PURPOSE: Analyze topic, extract structured seed info.
38
- TASK: • Extract problem statement • Identify target users • Determine domain
39
- • List constraints • Identify 3-5 exploration dimensions
40
- TOPIC: <topic-content>
41
- MODE: analysis
42
- EXPECTED: JSON with: problem_statement, target_users[], domain, constraints[], exploration_dimensions[]" --tool gemini --mode analysis`, run_in_background: false })
43
- ```
44
- 6. Parse result JSON
45
-
46
- ## Phase 3: Codebase Exploration
47
-
48
- | Condition | Action |
49
- |-----------|--------|
50
- | package.json / Cargo.toml / pyproject.toml / go.mod exists | Explore |
51
- | No project files | Skip (codebase_context = null) |
52
-
53
- When project detected:
54
- ```
55
- Bash({ command: `maestro cli -p "PURPOSE: Explore codebase for context
56
- TASK: • Identify tech stack • Map architecture patterns • Document conventions • List integration points
57
- MODE: analysis
58
- CONTEXT: @**/*
59
- EXPECTED: JSON with: tech_stack[], architecture_patterns[], conventions[], integration_points[]" --tool gemini --mode analysis`, run_in_background: false })
60
- ```
61
-
62
- ### Tech Profile Scan
63
-
64
- After codebase exploration, scan results for context-aware trigger signals (based on detected codebase characteristics):
65
-
66
- 1. Check imports/dependencies → framework signals (`sql_detected`, `auth_detected`, `ml_detected`, `frontend_framework`)
67
- 2. Check file patterns → infrastructure signals (`devops_detected`, `data_migration`, `realtime_detected`)
68
- 3. Check code patterns → risk signals (`perf_sensitive`, `crypto_usage`, `legacy_patterns`, `test_gap`)
69
- 4. Include `tech_profile` in Phase 5 state_update data:
70
- ```json
71
- "tech_profile": {
72
- "signals": ["<detected signals>"],
73
- "evidence": { "<signal>": ["<file paths>"] },
74
- "confidence": "high|medium|low"
75
- }
76
- ```
77
-
78
- ## Phase 4: Context Packaging
79
-
80
- 1. Write spec-config.json → <session>/spec/
81
- 2. Write discovery-context.json → <session>/spec/
82
- 3. Inline Discuss (DISCUSS-001):
83
- - Artifact: <session>/spec/discovery-context.json
84
- - Perspectives: product, risk, coverage
85
- 4. Handle verdict per consensus protocol
86
- 5. Report: complexity, codebase presence, dimensions, discuss verdict, output paths
87
-
88
- ## Error Handling
89
-
90
- | Scenario | Resolution |
91
- |----------|------------|
92
- | CLI failure | Fallback to direct analysis |
93
- | No project detected | Continue as new project |
94
- | Topic too vague | Report with clarification questions |
1
+ ---
2
+ role: analyst
3
+ prefix: RESEARCH
4
+ inner_loop: false
5
+ discuss_rounds: [DISCUSS-001]
6
+ message_types:
7
+ success: research_ready
8
+ error: error
9
+ ---
10
+
11
+ # Analyst
12
+
13
+ Research and codebase exploration for context gathering.
14
+
15
+ ## Identity
16
+ - Tag: [analyst] | Prefix: RESEARCH-*
17
+ - Responsibility: Gather structured context from topic and codebase
18
+
19
+ ## Boundaries
20
+ ### MUST
21
+ - Extract structured seed information from task topic
22
+ - Explore codebase if project detected
23
+ - Package context for downstream roles
24
+ ### MUST NOT
25
+ - Implement code or modify files
26
+ - Make architectural decisions
27
+ - Skip codebase exploration when project files exist
28
+
29
+ ## Phase 2: Seed Analysis
30
+
31
+ 1. Read upstream artifacts via team_msg(operation="get_state")
32
+ 2. Extract session folder from task description
33
+ 3. Parse topic from task description
34
+ 4. If topic references file (@path or .md/.txt) → read it
35
+ 5. CLI seed analysis:
36
+ ```
37
+ Bash({ command: `maestro delegate "PURPOSE: Analyze topic, extract structured seed info.
38
+ TASK: • Extract problem statement • Identify target users • Determine domain
39
+ • List constraints • Identify 3-5 exploration dimensions
40
+ TOPIC: <topic-content>
41
+ MODE: analysis
42
+ EXPECTED: JSON with: problem_statement, target_users[], domain, constraints[], exploration_dimensions[]" --tool gemini --mode analysis`, run_in_background: false })
43
+ ```
44
+ 6. Parse result JSON
45
+
46
+ ## Phase 3: Codebase Exploration
47
+
48
+ | Condition | Action |
49
+ |-----------|--------|
50
+ | package.json / Cargo.toml / pyproject.toml / go.mod exists | Explore |
51
+ | No project files | Skip (codebase_context = null) |
52
+
53
+ When project detected:
54
+ ```
55
+ Bash({ command: `maestro delegate "PURPOSE: Explore codebase for context
56
+ TASK: • Identify tech stack • Map architecture patterns • Document conventions • List integration points
57
+ MODE: analysis
58
+ CONTEXT: @**/*
59
+ EXPECTED: JSON with: tech_stack[], architecture_patterns[], conventions[], integration_points[]" --tool gemini --mode analysis`, run_in_background: false })
60
+ ```
61
+
62
+ ### Tech Profile Scan
63
+
64
+ After codebase exploration, scan results for context-aware trigger signals (based on detected codebase characteristics):
65
+
66
+ 1. Check imports/dependencies → framework signals (`sql_detected`, `auth_detected`, `ml_detected`, `frontend_framework`)
67
+ 2. Check file patterns → infrastructure signals (`devops_detected`, `data_migration`, `realtime_detected`)
68
+ 3. Check code patterns → risk signals (`perf_sensitive`, `crypto_usage`, `legacy_patterns`, `test_gap`)
69
+ 4. Include `tech_profile` in Phase 5 state_update data:
70
+ ```json
71
+ "tech_profile": {
72
+ "signals": ["<detected signals>"],
73
+ "evidence": { "<signal>": ["<file paths>"] },
74
+ "confidence": "high|medium|low"
75
+ }
76
+ ```
77
+
78
+ ## Phase 4: Context Packaging
79
+
80
+ 1. Write spec-config.json → <session>/spec/
81
+ 2. Write discovery-context.json → <session>/spec/
82
+ 3. Inline Discuss (DISCUSS-001):
83
+ - Artifact: <session>/spec/discovery-context.json
84
+ - Perspectives: product, risk, coverage
85
+ 4. Handle verdict per consensus protocol
86
+ 5. Report: complexity, codebase presence, dimensions, discuss verdict, output paths
87
+
88
+ ## Error Handling
89
+
90
+ | Scenario | Resolution |
91
+ |----------|------------|
92
+ | CLI failure | Fallback to direct analysis |
93
+ | No project detected | Continue as new project |
94
+ | Topic too vague | Report with clarification questions |