pi-maestro-flow 0.2.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 (179) hide show
  1. package/README.md +124 -0
  2. package/agents/aggregator.md +27 -0
  3. package/agents/cli-explore-agent.md +188 -0
  4. package/agents/cross-role-reviewer.md +171 -0
  5. package/agents/delegate.md +19 -0
  6. package/agents/explorer.md +23 -0
  7. package/agents/impeccable-agent.md +99 -0
  8. package/agents/ralph-executor.md +81 -0
  9. package/agents/reference.md +24 -0
  10. package/agents/role-design-author.md +220 -0
  11. package/agents/team-supervisor.md +143 -0
  12. package/agents/team-worker.md +237 -0
  13. package/agents/ui-design-agent.md +270 -0
  14. package/agents/workflow-analyzer.md +116 -0
  15. package/agents/workflow-codebase-mapper.md +77 -0
  16. package/agents/workflow-collab-planner.md +147 -0
  17. package/agents/workflow-debugger.md +104 -0
  18. package/agents/workflow-executor.md +133 -0
  19. package/agents/workflow-external-researcher.md +86 -0
  20. package/agents/workflow-integration-checker.md +83 -0
  21. package/agents/workflow-nyquist-auditor.md +85 -0
  22. package/agents/workflow-phase-researcher.md +85 -0
  23. package/agents/workflow-plan-checker.md +100 -0
  24. package/agents/workflow-planner.md +200 -0
  25. package/agents/workflow-project-researcher.md +74 -0
  26. package/agents/workflow-research-synthesizer.md +70 -0
  27. package/agents/workflow-reviewer.md +82 -0
  28. package/agents/workflow-roadmapper.md +81 -0
  29. package/agents/workflow-verifier.md +120 -0
  30. package/package.json +58 -0
  31. package/skills/codify-to-knowhow/SKILL.md +167 -0
  32. package/skills/delegation-check/SKILL.md +297 -0
  33. package/skills/domain-add/SKILL.md +75 -0
  34. package/skills/insight-challenge/SKILL.md +226 -0
  35. package/skills/learn-decompose/SKILL.md +124 -0
  36. package/skills/learn-follow/SKILL.md +163 -0
  37. package/skills/learn-investigate/SKILL.md +160 -0
  38. package/skills/learn-second-opinion/SKILL.md +128 -0
  39. package/skills/maestro/SKILL.md +239 -0
  40. package/skills/maestro-amend/SKILL.md +169 -0
  41. package/skills/maestro-analyze/SKILL.md +173 -0
  42. package/skills/maestro-blueprint/SKILL.md +159 -0
  43. package/skills/maestro-brainstorm/SKILL.md +193 -0
  44. package/skills/maestro-collab/SKILL.md +181 -0
  45. package/skills/maestro-companion/SKILL.md +536 -0
  46. package/skills/maestro-composer/SKILL.md +192 -0
  47. package/skills/maestro-execute/SKILL.md +193 -0
  48. package/skills/maestro-fork/SKILL.md +104 -0
  49. package/skills/maestro-grill/SKILL.md +151 -0
  50. package/skills/maestro-guard/SKILL.md +124 -0
  51. package/skills/maestro-help/SKILL.md +328 -0
  52. package/skills/maestro-impeccable/SKILL.md +302 -0
  53. package/skills/maestro-init/SKILL.md +151 -0
  54. package/skills/maestro-merge/SKILL.md +90 -0
  55. package/skills/maestro-milestone-audit/SKILL.md +117 -0
  56. package/skills/maestro-milestone-complete/SKILL.md +133 -0
  57. package/skills/maestro-milestone-release/SKILL.md +131 -0
  58. package/skills/maestro-next/SKILL.md +269 -0
  59. package/skills/maestro-overlay/SKILL.md +203 -0
  60. package/skills/maestro-plan/SKILL.md +194 -0
  61. package/skills/maestro-player/SKILL.md +184 -0
  62. package/skills/maestro-quick/SKILL.md +117 -0
  63. package/skills/maestro-ralph/SKILL.md +905 -0
  64. package/skills/maestro-ralph-cli/SKILL.md +976 -0
  65. package/skills/maestro-ralph-cli-execute/SKILL.md +229 -0
  66. package/skills/maestro-ralph-execute/SKILL.md +409 -0
  67. package/skills/maestro-ralph-v2/SKILL.md +1198 -0
  68. package/skills/maestro-roadmap/SKILL.md +157 -0
  69. package/skills/maestro-swarm-workflow/SKILL.md +272 -0
  70. package/skills/maestro-tools-execute/SKILL.md +143 -0
  71. package/skills/maestro-tools-register/SKILL.md +192 -0
  72. package/skills/maestro-ui-codify/SKILL.md +127 -0
  73. package/skills/maestro-universal-workflow/SKILL.md +622 -0
  74. package/skills/maestro-update/SKILL.md +156 -0
  75. package/skills/manage-codebase-rebuild/SKILL.md +111 -0
  76. package/skills/manage-drift-realign/SKILL.md +159 -0
  77. package/skills/manage-harvest/SKILL.md +121 -0
  78. package/skills/manage-issue/SKILL.md +88 -0
  79. package/skills/manage-issue-discover/SKILL.md +104 -0
  80. package/skills/manage-kg-extractors/SKILL.md +147 -0
  81. package/skills/manage-knowhow/SKILL.md +102 -0
  82. package/skills/manage-knowhow-capture/SKILL.md +109 -0
  83. package/skills/manage-knowledge-audit/SKILL.md +147 -0
  84. package/skills/manage-status/SKILL.md +80 -0
  85. package/skills/manage-wiki/SKILL.md +104 -0
  86. package/skills/odyssey-debug/SKILL.md +344 -0
  87. package/skills/odyssey-improve/SKILL.md +423 -0
  88. package/skills/odyssey-planex/SKILL.md +542 -0
  89. package/skills/odyssey-review-test-fix/SKILL.md +392 -0
  90. package/skills/odyssey-ui/SKILL.md +388 -0
  91. package/skills/prompt-generator/SKILL.md +470 -0
  92. package/skills/quality-auto-test/SKILL.md +168 -0
  93. package/skills/quality-debug/SKILL.md +176 -0
  94. package/skills/quality-refactor/SKILL.md +108 -0
  95. package/skills/quality-retrospective/SKILL.md +134 -0
  96. package/skills/quality-review/SKILL.md +169 -0
  97. package/skills/quality-sync/SKILL.md +90 -0
  98. package/skills/quality-test/SKILL.md +183 -0
  99. package/skills/scholar-anti-ai-writing/SKILL.md +173 -0
  100. package/skills/scholar-anti-ai-writing/references/patterns-chinese.md +242 -0
  101. package/skills/scholar-anti-ai-writing/references/patterns-english.md +242 -0
  102. package/skills/scholar-citation-verify/SKILL.md +166 -0
  103. package/skills/scholar-citation-verify/references/api-usage.md +372 -0
  104. package/skills/scholar-citation-verify/references/common-errors.md +384 -0
  105. package/skills/scholar-citation-verify/references/verification-rules.md +399 -0
  106. package/skills/scholar-experiment/SKILL.md +321 -0
  107. package/skills/scholar-ideation/SKILL.md +288 -0
  108. package/skills/scholar-latex-organizer/SKILL.md +186 -0
  109. package/skills/scholar-publish/SKILL.md +220 -0
  110. package/skills/scholar-rebuttal-pro/README.md +313 -0
  111. package/skills/scholar-rebuttal-pro/SKILL.md +511 -0
  112. package/skills/scholar-review/SKILL.md +227 -0
  113. package/skills/scholar-thesis-docx/README.md +111 -0
  114. package/skills/scholar-thesis-docx/README_EN.md +108 -0
  115. package/skills/scholar-thesis-docx/SKILL.md +212 -0
  116. package/skills/scholar-thesis-docx/references/failure-patterns-and-quality-gates.md +178 -0
  117. package/skills/scholar-thesis-docx/references/figure-and-code-rules.md +33 -0
  118. package/skills/scholar-thesis-docx/references/paper-format-workflow.md +68 -0
  119. package/skills/scholar-thesis-docx/references/script-usage.md +157 -0
  120. package/skills/scholar-thesis-docx/scripts/audit_docx_ooxml.py +429 -0
  121. package/skills/scholar-thesis-docx/scripts/check_word_com.ps1 +50 -0
  122. package/skills/scholar-thesis-docx/scripts/export_word_pdf.ps1 +62 -0
  123. package/skills/scholar-thesis-docx/scripts/normalize_word_styles.ps1 +498 -0
  124. package/skills/scholar-thesis-docx/scripts/render_mermaid_figure.ps1 +148 -0
  125. package/skills/scholar-writing/SKILL.md +296 -0
  126. package/skills/security-audit/SKILL.md +244 -0
  127. package/skills/skill-generator/SKILL.md +472 -0
  128. package/skills/skill-iter-tune/SKILL.md +382 -0
  129. package/skills/skill-simplify/SKILL.md +63 -0
  130. package/skills/skill-tuning/SKILL.md +174 -0
  131. package/skills/spec-add/SKILL.md +105 -0
  132. package/skills/spec-load/SKILL.md +98 -0
  133. package/skills/spec-remove/SKILL.md +74 -0
  134. package/skills/spec-setup/SKILL.md +75 -0
  135. package/skills/team-adversarial-swarm/SKILL.md +233 -0
  136. package/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
  137. package/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
  138. package/skills/team-adversarial-swarm/scripts/aco.py +473 -0
  139. package/skills/team-adversarial-swarm/scripts/pheromone.py +144 -0
  140. package/skills/team-adversarial-swarm/scripts/scoring.py +92 -0
  141. package/skills/team-adversarial-swarm/scripts/test_aco.py +475 -0
  142. package/skills/team-arch-opt/SKILL.md +158 -0
  143. package/skills/team-brainstorm/SKILL.md +171 -0
  144. package/skills/team-coordinate/SKILL.md +266 -0
  145. package/skills/team-designer/SKILL.md +160 -0
  146. package/skills/team-executor/SKILL.md +189 -0
  147. package/skills/team-frontend/SKILL.md +136 -0
  148. package/skills/team-frontend-debug/SKILL.md +198 -0
  149. package/skills/team-interactive-craft/SKILL.md +141 -0
  150. package/skills/team-issue/SKILL.md +171 -0
  151. package/skills/team-lifecycle-v4/SKILL.md +209 -0
  152. package/skills/team-motion-design/SKILL.md +142 -0
  153. package/skills/team-perf-opt/SKILL.md +175 -0
  154. package/skills/team-planex/SKILL.md +137 -0
  155. package/skills/team-quality-assurance/SKILL.md +147 -0
  156. package/skills/team-review/SKILL.md +147 -0
  157. package/skills/team-roadmap-dev/SKILL.md +169 -0
  158. package/skills/team-swarm/SKILL.md +178 -0
  159. package/skills/team-swarm/scripts/aco.py +473 -0
  160. package/skills/team-swarm/scripts/pheromone.py +144 -0
  161. package/skills/team-swarm/scripts/scoring.py +92 -0
  162. package/skills/team-swarm/scripts/test_aco.py +475 -0
  163. package/skills/team-tech-debt/SKILL.md +128 -0
  164. package/skills/team-testing/SKILL.md +143 -0
  165. package/skills/team-ui-polish/SKILL.md +141 -0
  166. package/skills/team-uidesign/SKILL.md +144 -0
  167. package/skills/team-ultra-analyze/SKILL.md +173 -0
  168. package/skills/team-ux-improve/SKILL.md +151 -0
  169. package/skills/team-visual-a11y/SKILL.md +156 -0
  170. package/skills/workflow-skill-designer/SKILL.md +496 -0
  171. package/src/extension/index.ts +222 -0
  172. package/src/extension/schemas.ts +131 -0
  173. package/src/providers/cli-tools-loader.ts +74 -0
  174. package/src/providers/provider-registry.ts +130 -0
  175. package/src/tools/delegate.ts +85 -0
  176. package/src/tools/explore.ts +134 -0
  177. package/src/tools/moa.ts +213 -0
  178. package/src/tools/status.ts +99 -0
  179. package/src/tools/wait.ts +166 -0
@@ -0,0 +1,159 @@
1
+ ---
2
+ name: maestro-blueprint
3
+ description: "Generate formal specification package (Product Brief, PRD, Architecture, Epics) through 6-phase document chain Arguments: <idea or @file> [-y] [-c] [--from <source>]"
4
+ allowed-tools: Read Write Edit Bash Glob Grep Agent AskUserQuestion
5
+ ---
6
+
7
+ <purpose>
8
+ 6-phase formal specification chain: Product Brief → PRD → Architecture → Epics. Pure documentation — no code generation.
9
+
10
+ Pipeline: brainstorm (optional) → **blueprint** → analyze / roadmap / plan.
11
+ </purpose>
12
+
13
+ <required_reading>
14
+ @~/.maestro/workflows/blueprint.md
15
+ </required_reading>
16
+
17
+ <deferred_reading>
18
+ - [blueprint-config.json](~/.maestro/templates/blueprint-config.json) — read when initializing blueprint configuration
19
+ </deferred_reading>
20
+
21
+ <context>
22
+ $ARGUMENTS -- idea text, @file reference, or upstream context source.
23
+
24
+ **Flags:**
25
+
26
+ | Flag | Effect | Default |
27
+ |------|--------|---------|
28
+ | `-y` / `--yes` | Auto mode — skip interactive questions, use recommended defaults | false |
29
+ | `-c` / `--continue` | Resume from last checkpoint (reads blueprint-config.json) | false |
30
+ | `--from <source>` | Load upstream context package (brainstorm:ID, @file, or path). Consumes context-package.json | — |
31
+ | `--from-brainstorm SESSION-ID` | Backward compat alias for `--from brainstorm:ID` | — |
32
+
33
+ **Input types:**
34
+ - Direct text: `"Build a real-time collaboration platform with WebSocket"`
35
+ - File reference: `@requirements.md`
36
+ - Context import: `--from brainstorm:BRN-001` or `--from @requirements.md` or `--from path/`
37
+ - Resume: `-c` (resumes from first incomplete phase)
38
+
39
+ **Output boundary**: ALL file writes MUST target `.workflow/blueprint/BLP-{slug}-{date}/` or `.workflow/state.json` only. NEVER modify source code or files outside these paths.
40
+
41
+ ### Pre-load
42
+
43
+ 1. **Specs**: `maestro load --type spec --category arch` — load architecture constraints for Phase 4 decisions
44
+ 2. **Wiki search**: `maestro search "{topic keywords}" --json` → prior knowledge context
45
+ 3. All optional — proceed without if unavailable
46
+ </context>
47
+
48
+ <interview_protocol>
49
+ Follows @~/.maestro/workflows/interview-mechanics.md standard.
50
+
51
+ **Interaction mode**: convergent menu-driven, depth-first
52
+ **Decision tree** (strict depth-first): scope (full product / feature set / single feature) → spec type (service / api / library / platform) → focus areas → whether to run codebase exploration → requirement priorities
53
+ **Scope guard**: only specification shape; do not pre-resolve roadmap phases or plan tasks
54
+ **Writeback target**: blueprint-config.json (each decision persisted before next question)
55
+ **Additional skip conditions**: none beyond standard (-y, -c)
56
+ **Exit condition**: all decision points settled → finalize blueprint-config.json, proceed to Phase 1
57
+ </interview_protocol>
58
+
59
+ <execution>
60
+ Follow `~/.maestro/workflows/blueprint.md` completely.
61
+
62
+ ### Phase chain
63
+
64
+ ```
65
+ P0: Spec Study → P1: Discovery → P1.5: Req Expansion → P2: Product Brief → P3: PRD → P4: Architecture → P5: Epics → P6: Readiness Check
66
+ ```
67
+
68
+ P6 gate: Pass (>=80%) → Handoff | Review (60-79%) → Handoff w/caveats | Fail (<60%) → P6.5 Auto-Fix (max 2 iter) → re-check
69
+
70
+ ### Phase Gates (MANDATORY, BLOCKING)
71
+
72
+ Each phase produces artifacts that are prerequisites for the next. Do NOT advance past a gate without verifying the prior phase's output exists.
73
+
74
+ **GATE P0 → P1**: `blueprint-config.json` created with session metadata.
75
+ **GATE P1 → P1.5**: Discovery context gathered (codebase patterns, upstream context loaded).
76
+ **GATE P1.5 → P2**: Requirements expanded from discovery findings.
77
+ **GATE P2 → P3**: `product-brief.md` written with vision, goals, scope, multi-perspective synthesis.
78
+ **GATE P3 → P4**: `requirements/` directory with `_index.md` + individual `REQ-*.md` + `NFR-*.md` files. All requirements have RFC 2119 keywords and acceptance criteria.
79
+ **GATE P4 → P5**: `architecture/` directory with `_index.md` + individual `ADR-*.md` files.
80
+ **GATE P5 → P6**: `epics/` directory with `_index.md` + individual `EPIC-*.md` files. Cross-Epic dependency map present.
81
+ **GATE P6**: Readiness score computed. Pass (≥80%) or Review (≥60%) required for handoff.
82
+
83
+ </execution>
84
+
85
+ <completion>
86
+ ### Standalone report
87
+
88
+ ```
89
+ === BLUEPRINT READY ===
90
+ Session: BLP-{slug}-{date}
91
+ Phases completed: P0–P6
92
+ Readiness score: {score}%
93
+ Gate verdict: {Pass|Review|Fail}
94
+ Output: .workflow/blueprint/BLP-{slug}-{date}/
95
+ Key artifacts: product-brief.md, requirements/, architecture/, epics/, readiness-report.md
96
+ ===
97
+ ```
98
+
99
+ ### Ralph-invoked completion
100
+
101
+ End the step by calling the CLI (no text block output):
102
+ ```
103
+ maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
104
+ ```
105
+
106
+ Status verdicts:
107
+ - **DONE** — Normal completion
108
+ - **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
109
+ - **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
110
+ - **BLOCKED** — External hard blocker; pass `--reason`
111
+
112
+ ### Next-step routing
113
+
114
+ | Condition | Suggestion |
115
+ |-----------|-----------|
116
+ | Need codebase analysis | `/maestro-analyze {topic} --from blueprint:BLP-xxx` |
117
+ | Ready for roadmap | `/maestro-roadmap --from blueprint:BLP-xxx` |
118
+ | Small scope, direct plan | `/maestro-plan --from blueprint:BLP-xxx` |
119
+ | Need project setup | `/maestro-init` |
120
+ </completion>
121
+
122
+ <error_codes>
123
+ | Code | Severity | Condition | Recovery |
124
+ |------|----------|-----------|----------|
125
+ | E001 | error | Idea text or @file required | Prompt user for input |
126
+ | E002 | error | Context source not found (--from) | Show available sessions/sources |
127
+ | E006 | error | `.workflow/` not initialized | Run maestro-init first |
128
+ | E007 | error | Phase 6 readiness Fail after 2 auto-fix iterations | Present manual fix options |
129
+ | W001 | warning | CLI analysis failed, using fallback | Continue with available data |
130
+ | W002 | warning | Codebase exploration failed | Continue without codebase context |
131
+ | W003 | warning | Glossary has < 5 terms | Note in readiness check |
132
+ | W004 | warning | Review-level readiness score (60-79%) | Proceed with caveats |
133
+ | W005 | warning | External research agent failed | Continue without apiResearchContext |
134
+ </error_codes>
135
+
136
+ <success_criteria>
137
+ - [ ] Interactive mode: interview decisions persisted in blueprint-config.json
138
+ - [ ] `blueprint-config.json` created with session metadata and phase tracking
139
+ - [ ] `product-brief.md` with vision, goals, scope, multi-perspective synthesis
140
+ - [ ] `glossary.json` with 5+ core terms for cross-document consistency
141
+ - [ ] `requirements/` directory with `_index.md` + individual `REQ-*.md` + `NFR-*.md` files
142
+ - [ ] All requirements have RFC 2119 keywords and acceptance criteria
143
+ - [ ] `architecture/` directory with `_index.md` + individual `ADR-*.md` files
144
+ - [ ] Architecture includes state machine, config model, error handling, observability (service type)
145
+ - [ ] `epics/` directory with `_index.md` + individual `EPIC-*.md` files
146
+ - [ ] Cross-Epic dependency map (Mermaid) and MVP subset tagged
147
+ - [ ] `readiness-report.md` with 4-dimension quality scores and traceability matrix
148
+ - [ ] `blueprint-summary.md` with one-page executive summary
149
+ - [ ] All documents have valid YAML frontmatter with session_id
150
+ - [ ] Glossary terms used consistently across all documents
151
+ - [ ] Readiness gate: Pass (>=80%) or Review (>=60%) with documented caveats
152
+ - [ ] Artifact registered in state.json (type=blueprint)
153
+ - [ ] context-package.json generated for downstream consumption
154
+ - [ ] On gate Pass/Review: session sealed via finish-work (finish-work.md includes AskUserQuestion confirmation before state.json artifact registration and optional spec/knowhow extraction). On Fail: skip — session stays active, excluded from wiki search.
155
+ </success_criteria>
156
+
157
+ <on_complete>
158
+ @~/.maestro/workflows/finish-work.md — SESSION_DIR={session_dir}, SESSION_TYPE=blueprint, SESSION_ID={session_id}, LINKED_MILESTONE=null
159
+ </on_complete>
@@ -0,0 +1,193 @@
1
+ ---
2
+ name: maestro-brainstorm
3
+ description: "Use when exploring ideas, evaluating approaches, or needing multi-perspective analysis before implementation Arguments: [topic|role-name] [--yes] [--count N] [--session ID] [--update] [--skip-questions] [--include-questions] [--style-skill PKG] [--review-only] [--from <source>]"
4
+ allowed-tools: Read Write Edit Bash Glob Grep Agent AskUserQuestion
5
+ ---
6
+
7
+ <purpose>
8
+ Multi-role brainstorming with cross-role conflict resolution. Auto mode: guidance-specification → parallel role analysis → cross-role review → resolution writeback. Single role mode: individual role analysis for existing session.
9
+
10
+ Pipeline: grill (optional) → **brainstorm** → roadmap / analyze / blueprint.
11
+ </purpose>
12
+
13
+ <required_reading>
14
+ @~/.maestro/workflows/brainstorm.md
15
+ </required_reading>
16
+
17
+ <deferred_reading>
18
+ - [scratch-index.json](~/.maestro/templates/scratch-index.json) — read when operating in scratch mode
19
+ - [index.json](~/.maestro/templates/index.json) — read when operating in phase mode
20
+ - [brainstorm-visualize.md](~/.maestro/workflows/brainstorm-visualize.md) — read when html-prototypes/ produced and user wants to browse them
21
+ - [boundary-grill.md](~/.maestro/workflows/boundary-grill.md) — read when boundary conflicts detected (in cross-role review)
22
+ </deferred_reading>
23
+
24
+ <context>
25
+ $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
26
+
27
+ **Auto mode**: topic text (e.g., "Build real-time collaboration platform") triggers full pipeline.
28
+ **Single role mode**: valid role name (e.g., "system-architect") runs one role analysis.
29
+ **All output** goes to `.workflow/scratch/{YYYYMMDD}-brainstorm-{slug}/` (orchestrator MUST resolve this to an absolute path before passing to sub-agents).
30
+ **Artifact registration**: On completion, registers artifact (type=brainstorm) in state.json.
31
+ **Output boundary**: ALL file writes MUST target `{output_dir}/` or `.workflow/state.json` only. NEVER modify source code or files outside these paths.
32
+ **Produced files**: `guidance-specification.md`, `design-research.md` (optional), `{role}/analysis.md` + `{role}/analysis-F-*.md` + `{role}/findings-*.md` (per selected role).
33
+
34
+ **Valid roles**: data-architect, product-manager, product-owner, scrum-master, subject-matter-expert, system-architect, test-strategist, ui-designer, ux-expert
35
+
36
+ **Flags**:
37
+
38
+ | Flag | Effect | Default |
39
+ |------|--------|---------|
40
+ | `--yes` / `-y` | Auto mode — skip interactive questions, use defaults | false |
41
+ | `--count N` | Number of roles to select (max 9) | 3 |
42
+ | `--session ID` | Use existing session | — |
43
+ | `--update` | Update existing analysis (single role) | false |
44
+ | `--skip-questions` | Skip context gathering questions | false |
45
+ | `--include-questions` | Force context gathering even if analysis exists | false |
46
+ | `--style-skill PKG` | Style package for ui-designer role | — |
47
+ | `--review-only` | Run cross-role review on existing analyses without re-running role analysis | false |
48
+ | `--from <source>` | Load upstream context package (grill:ID, blueprint:ID, @file, or path) | — |
49
+
50
+ ### Pre-load specs
51
+ 1. **Architecture specs**: Run `maestro load --type spec --category arch` to load architecture constraints. Use as context for multi-role analysis — ensures roles respect documented decisions.
52
+ 2. Optional — proceed without if unavailable.
53
+
54
+ ### Role Knowledge
55
+ 1. `maestro search --category arch` → identify relevant entries
56
+ 2. `maestro load --type knowhow --id <id1> [id2...]` → load selected documents
57
+ </context>
58
+
59
+ <interview_protocol>
60
+ Follows @~/.maestro/workflows/interview-mechanics.md standard.
61
+
62
+ **Interaction mode**: convergent menu-driven
63
+ **Decision tree** (flexible order — user may jump between branches): mode (auto / single-role / review-only) → role selection and --count → --from upstream source (grill:ID, blueprint:ID, @file, path) → whether to enable design-research and DESIGN.md sub-pipeline
64
+ **Scope guard**: only brainstorm decisions; do not pre-resolve roadmap/plan choices
65
+ **Writeback target**: guidance-specification.md §11 (create section if absent)
66
+ **Additional skip conditions**: --skip-questions, --session (existing session)
67
+ **Exit condition**: on consensus or explicit user signal → finalize session metadata
68
+ </interview_protocol>
69
+
70
+ <execution>
71
+ Follow '~/.maestro/workflows/brainstorm.md' completely.
72
+
73
+ ### Phase Gates (MANDATORY, BLOCKING)
74
+
75
+ These gates apply to Auto mode (full pipeline). Do NOT advance past a gate until ALL conditions are met.
76
+
77
+ **GATE 1: Framework → Role Analysis** (Step 1 → Step 3)
78
+ - REQUIRED: `guidance-specification.md` written with §10 feature decomposition and RFC 2119 keywords.
79
+ - REQUIRED: Role selection completed (interactive or auto-default).
80
+ - BLOCKED if missing: complete framework generation before spawning role agents.
81
+
82
+ **GATE 2: Role Analysis → Cross-Role Review** (Step 3 → Step 4.5)
83
+ - REQUIRED: Every selected role has `{role}/analysis.md` with §2 Decision Digest (4 tables).
84
+ - REQUIRED: Per-feature files `{role}/analysis-F-*.md` written for each feature in §10.
85
+ - BLOCKED if missing: complete all role analyses before spawning cross-role-reviewer.
86
+
87
+ **GATE 2.5: Cross-Role Review → Boundary Grill** (Step 4.5 → Step 4.6)
88
+ - REQUIRED: Boundary grill executed per workflow boundary-grill.md after cross-role review.
89
+ - NON-BLOCKING: conflicts logged as warnings.
90
+
91
+ **GATE 3: Cross-Role Review → Completion** (Step 4.5/4.6 → Report)
92
+ - REQUIRED: Cross-role-reviewer output received with `patch_targets[]`.
93
+ - REQUIRED: Boundary grill completed.
94
+ - REQUIRED: Resolutions applied and logged (details in workflow).
95
+ - BLOCKED if missing: complete review synthesis before reporting.
96
+
97
+ </execution>
98
+
99
+ <completion>
100
+ ### Standalone report
101
+
102
+ ```
103
+ === BRAINSTORM READY ===
104
+ Session: {session_id}
105
+ Output: {output_dir}
106
+ Mode: {auto|single-role}
107
+ Roles: {selected_roles}
108
+ Findings: {review_findings_count} cross-role issues, {resolutions_applied} resolutions applied
109
+ Status: COMPLETE
110
+ ========================
111
+ ```
112
+
113
+ ### Ralph-invoked completion
114
+
115
+ End the step by calling the CLI (no text block output):
116
+ ```
117
+ maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
118
+ ```
119
+
120
+ Status verdicts:
121
+ - **DONE** — Normal completion
122
+ - **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
123
+ - **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
124
+ - **BLOCKED** — External hard blocker; pass `--reason`
125
+
126
+ ### Next-step routing
127
+
128
+ **Auto mode:**
129
+
130
+ | Condition | Suggestion |
131
+ |-----------|-----------|
132
+ | Project not initialized | `/maestro-init` |
133
+ | Need formal spec package | `/maestro-blueprint --from brainstorm:{artifact_id}` |
134
+ | Quick roadmap needed | `/maestro-roadmap --from brainstorm:{artifact_id}` |
135
+ | Need deeper analysis first | `/maestro-analyze {topic} --from brainstorm:{artifact_id}` |
136
+ | Need stress-testing first | `/maestro-grill {topic}` |
137
+ | `html-prototypes/` produced with 2+ files and user wants to browse | Load `~/.maestro/workflows/brainstorm-visualize.md` and launch visualizer server |
138
+ | DESIGN.md established during Step 3.5 | `/maestro-impeccable build <feature-description>` |
139
+
140
+ **Single role mode:**
141
+
142
+ | Condition | Suggestion |
143
+ |-----------|-----------|
144
+ | More roles needed | `/maestro-brainstorm {next_role} --session {session_id}` |
145
+ | All roles done, run synthesis | `/maestro-brainstorm {topic} --session {session_id}` |
146
+ </completion>
147
+
148
+ <error_codes>
149
+ | Code | Severity | Condition | Recovery |
150
+ |------|----------|-----------|----------|
151
+ | E001 | error | Topic or role argument required | Prompt user for topic text or role name |
152
+ | E002 | error | No active session for single role mode | Guide user to run auto mode first |
153
+ | E003 | error | Invalid role name | Show valid roles list |
154
+ | E006 | error | `--review-only` but no `{role}/analysis.md` found | Run auto or single-role mode first |
155
+ | E007 | error | `--review-only` but `guidance-specification.md` missing | Run auto mode to generate guidance first |
156
+ | W001 | warning | Fewer than 10 ideas in divergent phase | Proceed with available ideas |
157
+ | W002 | warning | Project context (.workflow/) not found | Continue without project context |
158
+ | W003 | warning | Role template not found | Use generic analysis structure |
159
+ | W004 | warning | Validation score < 60 | Log warning, suggest manual review |
160
+ | W005 | warning | External research agent failed | Continue without designResearchContext |
161
+ | W006 | warning | Reviewer patch_targets heading drift (no match) | Skip that patch; report in final summary |
162
+ </error_codes>
163
+
164
+ <success_criteria>
165
+ **Auto mode**:
166
+ - [ ] Interactive mode: interview decision table written to `guidance-specification.md` §11 and session metadata
167
+ - [ ] `guidance-specification.md` with RFC 2119 keywords, terminology, non-goals, feature decomposition (§10), decision tracking (§11), cross-role resolutions placeholder (§12)
168
+ - [ ] `design-research.md` persisted when Step 1.7 external research ran (fail-soft: absence not a failure)
169
+ - [ ] If `ui-designer` in selected_roles AND Step 3.5 ran: `.workflow/impeccable/DESIGN.md` exists (visual style established via impeccable explore)
170
+ - [ ] `{role}/analysis.md` written for each selected role, containing §2 Decision Digest (4 tables) + §3 Cross-Cutting Foundations + §4 File Index
171
+ - [ ] `{role}/analysis-F-{id}-{slug}.md` written per feature (one file per feature, < 2000 words)
172
+ - [ ] `system-architect/analysis.md` §3 includes Data Model + State Machine when system-architect is selected
173
+ - [ ] `ui-designer/analysis.md` references DESIGN.md visual constraints when ui-designer is selected
174
+ - [ ] Each `{role}/analysis.md` §2 Decisions table has ≥ 1 row per feature
175
+ - [ ] Cross-role review (Step 4.5) executed; reviewer compares §2 Decision Digests; output includes `patch_targets[]` for every finding
176
+ - [ ] Boundary grill executed after cross-role review (skip if no conflicts detected)
177
+ - [ ] Boundary grill results written to guidance-specification.md §12.5 (if conflicts found)
178
+ - [ ] If findings exist: each accepted resolution applied via Edit (annotate / strikeout / append) AND logged in `guidance-specification.md` §12 "Cross-Role Resolutions"
179
+ - [ ] If zero findings: final report explicitly states "No cross-role issues detected"; guidance §12 unchanged
180
+ - [ ] Heading-drift patch failures surfaced in final report (if any)
181
+ - [ ] Session metadata updated with completion status (review_findings_count, resolutions_applied, patches_skipped)
182
+
183
+ **Single role mode**:
184
+ - [ ] `{role}/analysis.md` written with §2 Decision Digest + §4 File Index
185
+ - [ ] `{role}/analysis-F-*.md` written when guidance §10 feature list available
186
+ - [ ] §2 Decisions table references guidance decision IDs
187
+ - [ ] Session metadata updated
188
+ - [ ] Session sealed via finish-work (auto mode only)
189
+ </success_criteria>
190
+
191
+ <on_complete>
192
+ @~/.maestro/workflows/finish-work.md — SESSION_DIR={output_dir}, SESSION_TYPE=brainstorm, SESSION_ID={artifact_id}, LINKED_MILESTONE=null
193
+ </on_complete>
@@ -0,0 +1,181 @@
1
+ ---
2
+ name: maestro-collab
3
+ description: "Use when a question needs cross-verification from multiple CLI tools or diverse analytical perspectives Arguments: <requirement> [--tools agy,qwen,claude] [--mode analysis|write] [--rule <template>] [-y]"
4
+ allowed-tools: Read Write Bash Glob Grep Agent AskUserQuestion
5
+ ---
6
+
7
+ <purpose>
8
+ Fan-out requirement to multiple CLI tools in parallel → cross-verify for consensus/conflicts → synthesize into unified report with downstream artifacts (context.md + conclusions.json).
9
+ </purpose>
10
+
11
+ <context>
12
+ $ARGUMENTS — requirement text and optional flags.
13
+
14
+ **Flags**:
15
+ - `--tools <list>`: Comma-separated CLI tools (default: first 3 enabled)
16
+ - `--mode analysis|write`: Delegate mode (default: analysis)
17
+ - `--rule <template>`: Shared rule template for all delegates
18
+ - `-y`: Skip plan confirmation
19
+
20
+ **Pre-load** (optional): `maestro load --type spec --category arch` + `maestro search --category arch` → include in delegate prompts.
21
+
22
+ **Output**: `.workflow/scratch/{YYYYMMDD}-collab-{slug}/`
23
+ - `collab-report.md` — merged findings with consensus/conflict/unique tags
24
+ - `context.md` — Locked/Free/Deferred decisions (plan compatible)
25
+ - `conclusions.json` — structured: session_id, tools[], consensus_level, recommendation, confidence, dimensions[], decisions[]
26
+ - `per-tool/{tool}-output.md` — raw outputs
27
+ </context>
28
+
29
+ <state_machine>
30
+
31
+ <states>
32
+ S_PARSE — 解析参数、提取 flags PERSIST: —
33
+ S_DISCOVER — 发现可用 CLI 工具 PERSIST: —
34
+ S_CONFIRM — 展示计划、用户确认(-y 跳过) PERSIST: —
35
+ S_FANOUT — 构建 prompt、并行启动 delegate、STOP PERSIST: —
36
+ S_COLLECT — 回调到达、收集结果 PERSIST: per-tool outputs
37
+ S_CROSS_VERIFY — 分类发现(共识/冲突/独有) PERSIST: —
38
+ S_BOUNDARY_GRILL — 边界冲突检测与解决 PERSIST: —
39
+ S_SYNTHESIZE — 解决冲突、生成 3 个输出文件 PERSIST: outputs
40
+ S_REGISTER — 注册 CLB artifact PERSIST: state.json
41
+ S_REPORT — 显示摘要 + next-step routing PERSIST: —
42
+ </states>
43
+
44
+ <transitions>
45
+
46
+ S_PARSE:
47
+ → S_DISCOVER WHEN: requirement non-empty DO: extract requirement, tools, mode, rule, autoYes
48
+ → S_PARSE WHEN: requirement empty DO: AskUserQuestion for requirement
49
+
50
+ S_DISCOVER:
51
+ → S_CONFIRM WHEN: eligible tools >= 2 DO: A_DISCOVER_TOOLS
52
+ → ERROR(E002) WHEN: eligible tools < 2
53
+
54
+ S_CONFIRM:
55
+ → S_FANOUT WHEN: autoYes DO: A_SETUP_SESSION
56
+ → S_FANOUT WHEN: user confirms "执行" DO: A_SETUP_SESSION
57
+ → S_DISCOVER WHEN: user selects "修改工具选择" DO: re-select tools, validate >= 2
58
+ → END WHEN: user cancels
59
+
60
+ S_FANOUT:
61
+ → S_COLLECT DO: A_PARALLEL_DELEGATE then STOP — wait for callbacks
62
+
63
+ S_COLLECT:
64
+ → S_CROSS_VERIFY WHEN: all callbacks arrived DO: A_COLLECT_OUTPUTS
65
+ → ERROR(E004) WHEN: all delegates failed
66
+ GUARD: 1+ succeeded → continue with partial results (W001)
67
+
68
+ S_CROSS_VERIFY:
69
+ → S_BOUNDARY_GRILL DO: A_CLASSIFY_FINDINGS
70
+
71
+ S_BOUNDARY_GRILL:
72
+ → S_SYNTHESIZE WHEN: no boundary conflicts detected DO: —
73
+ → S_SYNTHESIZE WHEN: conflicts detected + resolved DO: A_BOUNDARY_GRILL
74
+ GUARD: max 3 conflicts × 3 questions; non-blocking
75
+
76
+ S_SYNTHESIZE:
77
+ → S_REGISTER DO: A_GENERATE_OUTPUTS
78
+
79
+ S_REGISTER:
80
+ → S_REPORT WHEN: user confirms or -y DO: append CLB artifact to state.json (type: collab, scope: adhoc)
81
+ → S_REPORT WHEN: user declines DO: skip artifact registration, proceed to report
82
+ GUARD: AskUserQuestion "Register collab artifact to state.json?" (skipped if -y)
83
+
84
+ S_REPORT:
85
+ → END DO: display summary (requirement, tools, consensus_level, per-tool status, artifact id, output dir)
86
+
87
+ </transitions>
88
+
89
+ <actions>
90
+
91
+ ### A_DISCOVER_TOOLS
92
+
93
+ ```
94
+ Bash("maestro tools list --json 2>/dev/null || cat ~/.maestro/cli-tools.json")
95
+ ```
96
+ **Note:** Shell commands MUST use the Bash tool (not PowerShell). Use POSIX syntax within Bash calls.
97
+ Filter: enabled == true. If --mode write: exclude type == "api-endpoint".
98
+ Auto-select (no --tools): first 3 eligible in config order.
99
+
100
+ ### A_SETUP_SESSION
101
+
102
+ Create: `.workflow/scratch/{YYYYMMDD}-collab-{slug}/` + `per-tool/`.
103
+
104
+ ### A_PARALLEL_DELEGATE
105
+
106
+ 1. Build shared prompt:
107
+ ```
108
+ PURPOSE: {requirement}; success = actionable findings with evidence
109
+ TASK: {auto-decomposed into 3-5 specific verbs}
110
+ MODE: {delegateMode}
111
+ CONTEXT: @**/*
112
+ EXPECTED: Structured findings with file:line refs, confidence (0-100), prioritized recommendations
113
+ CONSTRAINTS: {from requirement}
114
+ ```
115
+ 2. Launch ALL delegates in ONE message — multiple `Bash(run_in_background: true)`:
116
+ ```
117
+ maestro delegate "${prompt}" --to {tool} --mode ${mode} [--rule ${rule}]
118
+ ```
119
+ 3. **STOP immediately after launch. Wait for background callbacks.**
120
+
121
+ ### A_COLLECT_OUTPUTS
122
+
123
+ On each callback: `maestro delegate output <id>` → write `per-tool/{tool}-output.md`.
124
+
125
+ ### A_CLASSIFY_FINDINGS
126
+
127
+ Read all per-tool outputs. For each finding:
128
+
129
+ | Condition | Tag |
130
+ |-----------|-----|
131
+ | 2+ tools agree | CONSENSUS |
132
+ | Tools disagree | CONFLICT |
133
+ | 1 tool only | UNIQUE |
134
+
135
+ consensus_level = consensus_count / total_findings * 100.
136
+ If consensus_level < 40%: W003.
137
+
138
+ ### A_BOUNDARY_GRILL
139
+
140
+ Run boundary grill per `~/.maestro/workflows/boundary-grill.md`.
141
+ Input: classified CONFLICT findings + per-tool outputs. Check upstream scope if `--from` used.
142
+ IF conflicts → tag with resolution, feed into A_GENERATE_OUTPUTS. No conflicts → pass through.
143
+
144
+ ### A_GENERATE_OUTPUTS
145
+
146
+ Resolve conflicts via evidence-weighted voting:
147
+ - Higher confidence wins; more specific evidence (file:line) wins over general; tied → SUGGESTED
148
+
149
+ Write 3 files:
150
+ 1. **collab-report.md**: Summary, Consensus Findings, Resolved Conflicts, Unresolved Items, Unique Insights, Recommendations, Per-Tool Confidence table
151
+ 2. **context.md**: Locked (CONSENSUS items), Free (UNIQUE with strong evidence), Deferred (UNRESOLVED conflicts). Standard Locked/Free/Deferred format for plan compatibility.
152
+ 3. **conclusions.json**: session_id, subject, mode, tools[], consensus_level, recommendation (Go/No-Go/Conditional), confidence, dimensions[{name, score, findings}], decisions[{title, classification, source_tools, rationale}]
153
+
154
+ </actions>
155
+
156
+ </state_machine>
157
+
158
+ <error_codes>
159
+ | Code | Condition | Recovery |
160
+ |------|-----------|----------|
161
+ | E002 | Fewer than 2 eligible tools | Check cli-tools.json, enable more tools |
162
+ | E004 | All delegates failed | Abort with per-tool error details |
163
+ | W001 | One tool failed | Continue with remaining (partial degradation) |
164
+ | W003 | consensus_level < 40% | Flag in summary, recommend manual review |
165
+ </error_codes>
166
+
167
+ <success_criteria>
168
+ - [ ] All delegates launched in parallel via Bash(run_in_background: true), STOP after launch
169
+ - [ ] Cross-verification: consensus/conflict/unique classification with consensus_level
170
+ - [ ] Boundary grill executed on CONFLICT items (skip if no boundary conflicts detected)
171
+ - [ ] Boundary grill results written to collab-report.md § Boundary Grill Results (if conflicts found)
172
+ - [ ] 3 output files produced (collab-report.md, context.md, conclusions.json)
173
+ - [ ] CLB artifact registered in state.json
174
+ - [ ] Partial degradation: continued if 1+ tools succeeded
175
+ </success_criteria>
176
+
177
+ <next_step_routing>
178
+ - Deep feasibility → `/maestro-analyze "{topic}"`
179
+ - Plan from conclusions → `/maestro-plan --dir {dir}`
180
+ - Expand → `/maestro-brainstorm "{topic}"`
181
+ </next_step_routing>