maestro-flow 0.4.22 → 0.4.23
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.
- package/.agents/skills/maestro-analyze/SKILL.md +78 -34
- package/.agents/skills/maestro-blueprint/SKILL.md +57 -24
- package/.agents/skills/maestro-brainstorm/SKILL.md +69 -34
- package/.agents/skills/maestro-execute/SKILL.md +45 -15
- package/.agents/skills/maestro-grill/SKILL.md +63 -38
- package/.agents/skills/maestro-init/SKILL.md +59 -17
- package/.agents/skills/maestro-milestone-audit/SKILL.md +48 -5
- package/.agents/skills/maestro-milestone-complete/SKILL.md +48 -6
- package/.agents/skills/maestro-milestone-release/SKILL.md +42 -11
- package/.agents/skills/maestro-plan/SKILL.md +19 -13
- package/.agents/skills/maestro-roadmap/SKILL.md +59 -29
- package/.agents/skills/maestro-verify/SKILL.md +46 -11
- package/.agents/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.agents/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/.agy/skills/maestro-analyze/SKILL.md +78 -34
- package/.agy/skills/maestro-blueprint/SKILL.md +57 -24
- package/.agy/skills/maestro-brainstorm/SKILL.md +69 -34
- package/.agy/skills/maestro-execute/SKILL.md +45 -15
- package/.agy/skills/maestro-grill/SKILL.md +63 -38
- package/.agy/skills/maestro-init/SKILL.md +59 -17
- package/.agy/skills/maestro-milestone-audit/SKILL.md +48 -5
- package/.agy/skills/maestro-milestone-complete/SKILL.md +48 -6
- package/.agy/skills/maestro-milestone-release/SKILL.md +42 -11
- package/.agy/skills/maestro-plan/SKILL.md +19 -13
- package/.agy/skills/maestro-roadmap/SKILL.md +59 -29
- package/.agy/skills/maestro-verify/SKILL.md +46 -11
- package/.agy/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.agy/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/.claude/commands/maestro-analyze.md +78 -34
- package/.claude/commands/maestro-blueprint.md +57 -24
- package/.claude/commands/maestro-brainstorm.md +69 -34
- package/.claude/commands/maestro-execute.md +45 -15
- package/.claude/commands/maestro-grill.md +63 -38
- package/.claude/commands/maestro-init.md +59 -17
- package/.claude/commands/maestro-milestone-audit.md +48 -5
- package/.claude/commands/maestro-milestone-complete.md +48 -6
- package/.claude/commands/maestro-milestone-release.md +42 -11
- package/.claude/commands/maestro-plan.md +19 -13
- package/.claude/commands/maestro-roadmap.md +59 -29
- package/.claude/commands/maestro-verify.md +46 -11
- package/.claude/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.claude/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/package.json +1 -1
- package/workflows/command-authoring.md +823 -0
- package/workflows/interview-mechanics.md +7 -0
|
@@ -20,6 +20,8 @@ Combines structured 6-dimension scoring with iterative deepening and decision ex
|
|
|
20
20
|
Use `-q` for quick decision extraction only (skip exploration + scoring).
|
|
21
21
|
|
|
22
22
|
Use `--gaps` for issue-focused root cause analysis (replaces manage-issue-analyze). Loads issues from issues.jsonl, performs CLI exploration against issue context/location, synthesizes root cause into issue.analysis, and outputs context.md for downstream `plan --gaps`.
|
|
23
|
+
|
|
24
|
+
Pipeline position: downstream of maestro-grill, maestro-brainstorm, and maestro-blueprint (optional upstream enrichment); upstream of maestro-plan and maestro-roadmap (consumes analysis context).
|
|
23
25
|
</purpose>
|
|
24
26
|
|
|
25
27
|
<required_reading>
|
|
@@ -45,31 +47,47 @@ $ARGUMENTS -- phase number for micro mode, topic text for macro/adhoc mode, no a
|
|
|
45
47
|
- Mixed input like `"1 phase"` is treated as text → macro mode (only bare numerics trigger micro)
|
|
46
48
|
|
|
47
49
|
**Flags:**
|
|
48
|
-
- `-y` / `--yes`: Auto mode — skip interactive scoping, use recommended defaults, auto-deepen
|
|
49
|
-
- `-c` / `--continue`: Resume from existing session (auto-detect session folder + discussion.md)
|
|
50
|
-
- `-q` / `--quick`: Quick mode — skip exploration + scoring, go straight to decision extraction (context.md only)
|
|
51
|
-
- `--from <source>`: Load upstream context package (grill:ID, brainstorm:ID, blueprint:BLP-xxx, @file, or path)
|
|
52
|
-
- `--gaps [ISS-ID]`: Issue root cause analysis mode. If ISS-ID provided, analyze single issue. If omitted, analyze all open/registered issues from issues.jsonl.
|
|
53
50
|
|
|
54
|
-
|
|
51
|
+
| Flag | Effect | Default |
|
|
52
|
+
|------|--------|---------|
|
|
53
|
+
| `-y` / `--yes` | Auto mode — skip interactive scoping, use recommended defaults, auto-deepen | false |
|
|
54
|
+
| `-c` / `--continue` | Resume from existing session (auto-detect session folder + discussion.md) | false |
|
|
55
|
+
| `-q` / `--quick` | Quick mode — skip exploration + scoring, go straight to decision extraction (context.md only) | false |
|
|
56
|
+
| `--from <source>` | Load upstream context package (grill:ID, brainstorm:ID, blueprint:BLP-xxx, @file, or path) | — |
|
|
57
|
+
| `--gaps [ISS-ID]` | Issue root cause analysis mode. If ISS-ID provided, analyze single issue. If omitted, analyze all open/registered issues from issues.jsonl | — |
|
|
58
|
+
|
|
59
|
+
**Scope routing:**
|
|
60
|
+
| Input | Mode | Scope |
|
|
61
|
+
|-------|------|-------|
|
|
62
|
+
| Pure digits (e.g. `1`, `42`) | micro | Phase-level deep analysis |
|
|
63
|
+
| Non-numeric text (e.g. `auth-refactor`) | macro | Topic impact surface |
|
|
64
|
+
| No positional arg + roadmap | micro | Milestone-wide |
|
|
65
|
+
| No positional arg + no roadmap | macro | Fallback |
|
|
66
|
+
| `--gaps [ISS-ID]` | gaps | Issue root cause analysis |
|
|
67
|
+
|
|
68
|
+
Output directory format, artifact registration schema, and output artifact listing are defined in workflow analyze.md (Output Structure section).
|
|
69
|
+
|
|
70
|
+
### Pre-load
|
|
71
|
+
|
|
72
|
+
1. **Codebase docs**: IF `.workflow/codebase/doc-index.json` exists → Read ARCHITECTURE.md for module boundaries
|
|
73
|
+
2. **Specs**: `maestro spec load --category arch` — load architecture constraints
|
|
74
|
+
3. **Wiki search**: `maestro wiki search "{topic keywords}" --json` → top 5-10 entries as prior knowledge
|
|
75
|
+
4. All optional — proceed without if unavailable (log warning)
|
|
55
76
|
|
|
56
77
|
### Role Knowledge
|
|
57
78
|
`maestro wiki list --category debug` → select relevant → `maestro wiki load`
|
|
58
79
|
</context>
|
|
59
80
|
|
|
60
81
|
<interview_protocol>
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
Exit: when all decision points are settled (or user explicitly signals to proceed), finalize session metadata. The decision table (populated incrementally during interview) uses this schema:
|
|
72
|
-
`| # | Decision | Choice | Source (user / code / default) |`
|
|
82
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
83
|
+
|
|
84
|
+
**Interaction mode**: convergent menu-driven
|
|
85
|
+
**Decision tree** (strict order): scope (phase / topic / milestone-wide / adhoc / --gaps) → depth (quick / standard / deep) → dimensions (which of the 6 to keep) → Go/No-Go threshold
|
|
86
|
+
**Scope guard**: only analyze decisions; do not prejudge plan/execute concerns
|
|
87
|
+
**Writeback target**: discussion.md (top table) + context.md "Interview Decisions"
|
|
88
|
+
**Additional search sources**: issues.jsonl (--gaps mode), roadmap.md
|
|
89
|
+
**Additional skip conditions**: input is already specific (explicit phase number or unambiguous topic)
|
|
90
|
+
**Exit condition**: all decision points settled → finalize session metadata
|
|
73
91
|
</interview_protocol>
|
|
74
92
|
|
|
75
93
|
<execution>
|
|
@@ -106,23 +124,52 @@ Phase 4: Output context.md for downstream plan --gaps
|
|
|
106
124
|
- `large` (3+ independent subsystems or hard serial dependencies) → suggest `/maestro-roadmap --from analyze:ANL-xxx`
|
|
107
125
|
- `medium` (1-2 subsystems, parallelizable) → suggest `/maestro-plan --from analyze:ANL-xxx`
|
|
108
126
|
- `small` (single-file or few-file change) → suggest `/maestro-plan --from analyze:ANL-xxx`
|
|
127
|
+
</execution>
|
|
109
128
|
|
|
110
|
-
|
|
129
|
+
<completion>
|
|
130
|
+
### Standalone report
|
|
111
131
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
132
|
+
```
|
|
133
|
+
=== ANALYSIS READY ===
|
|
134
|
+
Artifact: ANL-{id}
|
|
135
|
+
Scope: {micro|macro|adhoc|gaps}
|
|
136
|
+
Go/No-Go: {GO|NO-GO|CONDITIONAL}
|
|
137
|
+
Confidence: {high|medium|low}
|
|
138
|
+
Outputs: analysis.md, context.md, conclusions.json, discussion.md
|
|
139
|
+
Session dir: {output_dir}
|
|
140
|
+
===
|
|
141
|
+
```
|
|
116
142
|
|
|
117
|
-
|
|
118
|
-
- scope_verdict = large → `/maestro-roadmap --from analyze:ANL-xxx`
|
|
119
|
-
- scope_verdict = medium/small → `/maestro-plan --from analyze:ANL-xxx`
|
|
120
|
-
- Need more exploration → `/maestro-analyze {topic} -c`
|
|
143
|
+
### Ralph-invoked completion
|
|
121
144
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
145
|
+
End the step by calling the CLI (no text block output):
|
|
146
|
+
```
|
|
147
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Status verdicts:
|
|
151
|
+
- **DONE** — Normal completion
|
|
152
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
153
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
154
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
155
|
+
|
|
156
|
+
### Next-step routing
|
|
157
|
+
|
|
158
|
+
| Condition | Suggestion |
|
|
159
|
+
|-----------|-----------|
|
|
160
|
+
| Phase/Milestone scope, Go, UI work needed | `/maestro-impeccable build {target}` |
|
|
161
|
+
| Phase/Milestone scope, Go, ready to plan | `/maestro-plan` or `/maestro-plan {phase}` |
|
|
162
|
+
| Phase/Milestone scope, No-Go | Revisit requirements or `/maestro-brainstorm {topic}` |
|
|
163
|
+
| Macro/Adhoc, scope_verdict = large | `/maestro-roadmap --from analyze:ANL-xxx` |
|
|
164
|
+
| Macro/Adhoc, scope_verdict = medium/small | `/maestro-plan --from analyze:ANL-xxx` |
|
|
165
|
+
| Need more exploration | `/maestro-analyze {topic} -c` |
|
|
166
|
+
| Gaps scope, issues analyzed | `/maestro-plan --gaps` |
|
|
167
|
+
| Gaps scope, need more context | `/maestro-analyze --gaps {ISS-ID}` |
|
|
168
|
+
|
|
169
|
+
### Session seal
|
|
170
|
+
|
|
171
|
+
@~/.maestro/workflows/finish-work.md — SESSION_DIR=OUTPUT_DIR, SESSION_TYPE=analyze, SESSION_ID={artifact_id}, LINKED_MILESTONE={target_milestone or null}
|
|
172
|
+
</completion>
|
|
126
173
|
|
|
127
174
|
<error_codes>
|
|
128
175
|
| Code | Severity | Condition | Recovery |
|
|
@@ -166,6 +213,3 @@ Both modes (full + quick):
|
|
|
166
213
|
- [ ] Session sealed via finish-work (archive.json written, optional spec/knowhow extraction)
|
|
167
214
|
</success_criteria>
|
|
168
215
|
|
|
169
|
-
<on_complete>
|
|
170
|
-
@~/.maestro/workflows/finish-work.md — SESSION_DIR=OUTPUT_DIR, SESSION_TYPE=analyze, SESSION_ID={artifact_id}, LINKED_MILESTONE={target_milestone or null}
|
|
171
|
-
</on_complete>
|
|
@@ -20,6 +20,8 @@ Parallel to `brainstorm` as an upstream origin command:
|
|
|
20
20
|
- **blueprint** = convergent documentation (heavyweight, 6-phase formal spec chain)
|
|
21
21
|
|
|
22
22
|
Output: `.workflow/blueprint/BLP-{slug}-{date}/` containing Product Brief, PRD, Architecture, and Epics.
|
|
23
|
+
|
|
24
|
+
Pipeline position: downstream of maestro-brainstorm (optional). Upstream of maestro-analyze, maestro-roadmap, and maestro-plan.
|
|
23
25
|
</purpose>
|
|
24
26
|
|
|
25
27
|
<required_reading>
|
|
@@ -34,10 +36,13 @@ Output: `.workflow/blueprint/BLP-{slug}-{date}/` containing Product Brief, PRD,
|
|
|
34
36
|
$ARGUMENTS -- idea text, @file reference, or upstream context source.
|
|
35
37
|
|
|
36
38
|
**Flags:**
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
|
|
40
|
+
| Flag | Effect | Default |
|
|
41
|
+
|------|--------|---------|
|
|
42
|
+
| `-y` / `--yes` | Auto mode — skip interactive questions, use recommended defaults | false |
|
|
43
|
+
| `-c` / `--continue` | Resume from last checkpoint (reads blueprint-config.json) | false |
|
|
44
|
+
| `--from <source>` | Load upstream context package (brainstorm:ID, @file, or path). Consumes context-package.json | — |
|
|
45
|
+
| `--from-brainstorm SESSION-ID` | Backward compat alias for `--from brainstorm:ID` | — |
|
|
41
46
|
|
|
42
47
|
**Input types:**
|
|
43
48
|
- Direct text: `"Build a real-time collaboration platform with WebSocket"`
|
|
@@ -56,23 +61,22 @@ maestro-analyze → maestro-roadmap → maestro-plan
|
|
|
56
61
|
|
|
57
62
|
**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.
|
|
58
63
|
|
|
59
|
-
### Pre-load
|
|
60
|
-
|
|
61
|
-
|
|
64
|
+
### Pre-load
|
|
65
|
+
|
|
66
|
+
1. **Specs**: `maestro spec load --category arch` — load architecture constraints for Phase 4 decisions
|
|
67
|
+
2. **Wiki search**: `maestro wiki search "{topic keywords}" --json` → prior knowledge context
|
|
68
|
+
3. All optional — proceed without if unavailable
|
|
62
69
|
</context>
|
|
63
70
|
|
|
64
71
|
<interview_protocol>
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
Decision points: scope (full product / feature set / single feature) → spec type (service / api / library / platform) → focus areas → whether to run codebase exploration.
|
|
74
|
-
|
|
75
|
-
Exit: on consensus or explicit user signal to proceed, finalize blueprint-config.json (decisions already written incrementally) and proceed to Phase 1.
|
|
72
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
73
|
+
|
|
74
|
+
**Interaction mode**: convergent menu-driven, depth-first
|
|
75
|
+
**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
|
|
76
|
+
**Scope guard**: only specification shape; do not pre-resolve roadmap phases or plan tasks
|
|
77
|
+
**Writeback target**: blueprint-config.json (each decision persisted before next question)
|
|
78
|
+
**Additional skip conditions**: none beyond standard (-y, -c)
|
|
79
|
+
**Exit condition**: all decision points settled → finalize blueprint-config.json, proceed to Phase 1
|
|
76
80
|
</interview_protocol>
|
|
77
81
|
|
|
78
82
|
<execution>
|
|
@@ -86,15 +90,44 @@ P0: Spec Study → P1: Discovery → P1.5: Req Expansion → P2: Product Brief
|
|
|
86
90
|
|
|
87
91
|
P6 gate: Pass (>=80%) → Handoff | Review (60-79%) → Handoff w/caveats | Fail (<60%) → P6.5 Auto-Fix (max 2 iter) → re-check
|
|
88
92
|
|
|
89
|
-
|
|
93
|
+
</execution>
|
|
94
|
+
|
|
95
|
+
<completion>
|
|
96
|
+
### Standalone report
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
=== BLUEPRINT READY ===
|
|
100
|
+
Session: BLP-{slug}-{date}
|
|
101
|
+
Phases completed: P0–P6
|
|
102
|
+
Readiness score: {score}%
|
|
103
|
+
Gate verdict: {Pass|Review|Fail}
|
|
104
|
+
Output: .workflow/blueprint/BLP-{slug}-{date}/
|
|
105
|
+
Key artifacts: product-brief.md, requirements/, architecture/, epics/, readiness-report.md
|
|
106
|
+
===
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### Ralph-invoked completion
|
|
110
|
+
|
|
111
|
+
End the step by calling the CLI (no text block output):
|
|
112
|
+
```
|
|
113
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Status verdicts:
|
|
117
|
+
- **DONE** — Normal completion
|
|
118
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
119
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
120
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
121
|
+
|
|
122
|
+
### Next-step routing
|
|
90
123
|
|
|
91
124
|
| Condition | Suggestion |
|
|
92
125
|
|-----------|-----------|
|
|
93
|
-
| Need codebase analysis |
|
|
94
|
-
| Ready for roadmap |
|
|
95
|
-
| Small scope, direct plan |
|
|
96
|
-
| Need project setup |
|
|
97
|
-
</
|
|
126
|
+
| Need codebase analysis | `/maestro-analyze {topic} --from blueprint:BLP-xxx` |
|
|
127
|
+
| Ready for roadmap | `/maestro-roadmap --from blueprint:BLP-xxx` |
|
|
128
|
+
| Small scope, direct plan | `/maestro-plan --from blueprint:BLP-xxx` |
|
|
129
|
+
| Need project setup | `/maestro-init` |
|
|
130
|
+
</completion>
|
|
98
131
|
|
|
99
132
|
<error_codes>
|
|
100
133
|
| Code | Severity | Condition | Recovery |
|
|
@@ -13,6 +13,8 @@ allowed-tools:
|
|
|
13
13
|
---
|
|
14
14
|
<purpose>
|
|
15
15
|
Unified brainstorming combining interactive framework generation, multi-role parallel analysis, cross-role review, and resolution writeback. Two modes: Auto (full pipeline: guidance-specification → parallel {role}/ multi-file analysis → cross-role-reviewer compares Decision Digests for conflicts/gaps/synergies → user-confirmed resolutions patched into role files + logged in guidance §12) and Single Role (individual role analysis for an existing session). Outputs structured artifacts in `.workflow/scratch/{YYYYMMDD}-brainstorm-{slug}/` ready for downstream planning (roadmap / analyze / blueprint consume `guidance-specification.md`).
|
|
16
|
+
|
|
17
|
+
Pipeline position: downstream of maestro-grill (optional stress-test). Upstream of maestro-roadmap, maestro-analyze, and maestro-blueprint (all consume brainstorm output).
|
|
16
18
|
</purpose>
|
|
17
19
|
|
|
18
20
|
<required_reading>
|
|
@@ -38,13 +40,16 @@ $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
|
|
|
38
40
|
**Valid roles**: data-architect, product-manager, product-owner, scrum-master, subject-matter-expert, system-architect, test-strategist, ui-designer, ux-expert
|
|
39
41
|
|
|
40
42
|
**Flags**:
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
|
|
44
|
+
| Flag | Effect | Default |
|
|
45
|
+
|------|--------|---------|
|
|
46
|
+
| `--yes` / `-y` | Auto mode — skip interactive questions, use defaults | false |
|
|
47
|
+
| `--count N` | Number of roles to select (max 9) | 3 |
|
|
48
|
+
| `--session ID` | Use existing session | — |
|
|
49
|
+
| `--update` | Update existing analysis (single role) | false |
|
|
50
|
+
| `--skip-questions` | Skip context gathering questions | false |
|
|
51
|
+
| `--include-questions` | Force context gathering even if analysis exists | false |
|
|
52
|
+
| `--style-skill PKG` | Style package for ui-designer role | — |
|
|
48
53
|
|
|
49
54
|
### Pre-load specs
|
|
50
55
|
1. **Architecture specs**: Run `maestro spec load --category arch` to load architecture constraints. Use as context for multi-role analysis — ensures roles respect documented decisions.
|
|
@@ -60,39 +65,69 @@ $ARGUMENTS -- topic text for auto mode, or role name for single role mode.
|
|
|
60
65
|
</context>
|
|
61
66
|
|
|
62
67
|
<interview_protocol>
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
Decision points: 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 the DESIGN.md sub-pipeline.
|
|
72
|
-
|
|
73
|
-
Exit: on consensus or explicit user signal to proceed, finalize session metadata. The §11 table (already populated incrementally) uses this schema:
|
|
74
|
-
`| # | Decision | Choice | Source (user / code / default) |`
|
|
68
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
69
|
+
|
|
70
|
+
**Interaction mode**: convergent menu-driven
|
|
71
|
+
**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
|
|
72
|
+
**Scope guard**: only brainstorm decisions; do not pre-resolve roadmap/plan choices
|
|
73
|
+
**Writeback target**: guidance-specification.md §11 (create section if absent)
|
|
74
|
+
**Additional skip conditions**: --skip-questions, --session (existing session)
|
|
75
|
+
**Exit condition**: on consensus or explicit user signal → finalize session metadata
|
|
75
76
|
</interview_protocol>
|
|
76
77
|
|
|
77
78
|
<execution>
|
|
78
79
|
Follow '~/.maestro/workflows/brainstorm.md' completely.
|
|
79
|
-
|
|
80
|
-
**Next-step routing on completion:**
|
|
81
|
-
|
|
82
|
-
Auto mode:
|
|
83
|
-
- Project not initialized → Skill({ skill: "maestro-init" })
|
|
84
|
-
- Project initialized, need formal spec package → Skill({ skill: "maestro-blueprint", args: "--from brainstorm:{artifact_id}" })
|
|
85
|
-
- Project initialized, quick roadmap → Skill({ skill: "maestro-roadmap", args: "--from brainstorm:{artifact_id}" })
|
|
86
|
-
- Need deeper analysis first → Skill({ skill: "maestro-analyze", args: "{topic} --from brainstorm:{artifact_id}" })
|
|
87
|
-
- Need stress-testing first → Skill({ skill: "maestro-grill", args: "{topic}" })
|
|
88
|
-
- `html-prototypes/` produced with 2+ files and user wants to browse → load `~/.maestro/workflows/brainstorm-visualize.md` and launch visualizer server (optional, user-triggered)
|
|
89
|
-
- DESIGN.md established during Step 3.5 → suggest: "Run `/maestro-impeccable build <feature-description>` to build with the established design system"
|
|
90
|
-
|
|
91
|
-
Single role mode:
|
|
92
|
-
- More roles needed → Skill({ skill: "maestro-brainstorm", args: "{next_role} --session {session_id}" })
|
|
93
|
-
- All roles done, run synthesis → Skill({ skill: "maestro-brainstorm", args: "{topic} --session {session_id}" })
|
|
94
80
|
</execution>
|
|
95
81
|
|
|
82
|
+
<completion>
|
|
83
|
+
### Standalone report
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
=== BRAINSTORM READY ===
|
|
87
|
+
Session: {session_id}
|
|
88
|
+
Output: {output_dir}
|
|
89
|
+
Mode: {auto|single-role}
|
|
90
|
+
Roles: {selected_roles}
|
|
91
|
+
Findings: {review_findings_count} cross-role issues, {resolutions_applied} resolutions applied
|
|
92
|
+
Status: COMPLETE
|
|
93
|
+
========================
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Ralph-invoked completion
|
|
97
|
+
|
|
98
|
+
End the step by calling the CLI (no text block output):
|
|
99
|
+
```
|
|
100
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Status verdicts:
|
|
104
|
+
- **DONE** — Normal completion
|
|
105
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
106
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
107
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
108
|
+
|
|
109
|
+
### Next-step routing
|
|
110
|
+
|
|
111
|
+
**Auto mode:**
|
|
112
|
+
|
|
113
|
+
| Condition | Suggestion |
|
|
114
|
+
|-----------|-----------|
|
|
115
|
+
| Project not initialized | `/maestro-init` |
|
|
116
|
+
| Need formal spec package | `/maestro-blueprint --from brainstorm:{artifact_id}` |
|
|
117
|
+
| Quick roadmap needed | `/maestro-roadmap --from brainstorm:{artifact_id}` |
|
|
118
|
+
| Need deeper analysis first | `/maestro-analyze {topic} --from brainstorm:{artifact_id}` |
|
|
119
|
+
| Need stress-testing first | `/maestro-grill {topic}` |
|
|
120
|
+
| `html-prototypes/` produced with 2+ files and user wants to browse | Load `~/.maestro/workflows/brainstorm-visualize.md` and launch visualizer server |
|
|
121
|
+
| DESIGN.md established during Step 3.5 | `/maestro-impeccable build <feature-description>` |
|
|
122
|
+
|
|
123
|
+
**Single role mode:**
|
|
124
|
+
|
|
125
|
+
| Condition | Suggestion |
|
|
126
|
+
|-----------|-----------|
|
|
127
|
+
| More roles needed | `/maestro-brainstorm {next_role} --session {session_id}` |
|
|
128
|
+
| All roles done, run synthesis | `/maestro-brainstorm {topic} --session {session_id}` |
|
|
129
|
+
</completion>
|
|
130
|
+
|
|
96
131
|
<error_codes>
|
|
97
132
|
| Code | Severity | Condition | Recovery |
|
|
98
133
|
|------|----------|-----------|----------|
|
|
@@ -16,6 +16,8 @@ allowed-tools:
|
|
|
16
16
|
Execute all tasks in a plan using wave-based parallel execution with dependency-aware ordering. Each plan is executed independently (plans串行, plan内wave并行). Task summaries are written to the plan's scratch directory under `.summaries/`. Registers EXC artifact in state.json.
|
|
17
17
|
|
|
18
18
|
Invoked after /maestro-plan produces a confirmed plan. When called without args on a milestone, finds all pending plans and executes them sequentially.
|
|
19
|
+
|
|
20
|
+
Pipeline position: upstream from maestro-plan (consumes confirmed plan), downstream to maestro-verify.
|
|
19
21
|
</purpose>
|
|
20
22
|
|
|
21
23
|
<required_reading>
|
|
@@ -30,7 +32,26 @@ Invoked after /maestro-plan produces a confirmed plan. When called without args
|
|
|
30
32
|
<context>
|
|
31
33
|
$ARGUMENTS — phase number, or no args for milestone-wide execution, with optional flags.
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
### Flags
|
|
36
|
+
|
|
37
|
+
| Flag | Effect | Default |
|
|
38
|
+
|------|--------|---------|
|
|
39
|
+
| `--auto-commit` | Auto-commit after each completed task | false |
|
|
40
|
+
| `--method agent\|cli\|auto` | Execution method: Agent tool, CLI delegate, or auto-select | `auto` |
|
|
41
|
+
| `--executor <tool>` | Explicit executor tool for CLI delegate mode | First enabled in config |
|
|
42
|
+
| `--dir <path>` | Execute a specific plan directory instead of auto-discovery | — |
|
|
43
|
+
| `-y` / `--yes` | Auto mode — skip interactive questions | false |
|
|
44
|
+
|
|
45
|
+
### Scope routing
|
|
46
|
+
|
|
47
|
+
| Input | Scope | Resolution |
|
|
48
|
+
|-------|-------|------------|
|
|
49
|
+
| numeric arg | phase | Resolve plan from roadmap phase |
|
|
50
|
+
| `--dir <path>` | explicit | Use specified plan directory |
|
|
51
|
+
| no args + milestone | milestone | Find all pending plans, execute sequentially |
|
|
52
|
+
| no args + no milestone | error E001 | No plan found |
|
|
53
|
+
|
|
54
|
+
Full resolution logic, output directory format, artifact registration schema, and incremental knowhow extraction are defined in workflow `execute.md`.
|
|
34
55
|
|
|
35
56
|
### Pre-load context (before task execution)
|
|
36
57
|
|
|
@@ -81,7 +102,10 @@ For each completed/failed TASK with issue_id:
|
|
|
81
102
|
Write updated issue back to issues.jsonl
|
|
82
103
|
```
|
|
83
104
|
|
|
84
|
-
|
|
105
|
+
</execution>
|
|
106
|
+
|
|
107
|
+
<completion>
|
|
108
|
+
### Standalone report
|
|
85
109
|
|
|
86
110
|
```
|
|
87
111
|
=== EXECUTION COMPLETE ===
|
|
@@ -91,24 +115,30 @@ Failed: {failed_count} tasks
|
|
|
91
115
|
|
|
92
116
|
Summaries: {plan_dir}/.summaries/
|
|
93
117
|
Tasks: {plan_dir}/.task/
|
|
94
|
-
|
|
95
|
-
Next steps:
|
|
96
|
-
/maestro-verify -- Verify execution results
|
|
97
|
-
/maestro-verify --dir {dir} -- Verify specific plan
|
|
98
|
-
/manage-status -- View project dashboard
|
|
99
118
|
```
|
|
100
119
|
|
|
101
|
-
|
|
120
|
+
### Ralph-invoked completion
|
|
121
|
+
|
|
122
|
+
End the step by calling the CLI (no text block output):
|
|
102
123
|
```
|
|
103
|
-
|
|
104
|
-
STATUS: DONE|DONE_WITH_CONCERNS|NEEDS_RETRY
|
|
105
|
-
CONCERNS: {failed_count} tasks failed (if any)
|
|
106
|
-
NEXT: /maestro-verify
|
|
107
|
-
--- END STATUS ---
|
|
124
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
108
125
|
```
|
|
109
126
|
|
|
110
|
-
|
|
111
|
-
|
|
127
|
+
Status verdicts:
|
|
128
|
+
- **DONE** — Normal completion
|
|
129
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
130
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
131
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
132
|
+
|
|
133
|
+
### Next-step routing
|
|
134
|
+
|
|
135
|
+
| Condition | Suggestion |
|
|
136
|
+
|-----------|-----------|
|
|
137
|
+
| All tasks completed successfully | `/maestro-verify` |
|
|
138
|
+
| Specific plan needs verification | `/maestro-verify --dir {dir}` |
|
|
139
|
+
| Failed tasks exist | `/quality-debug` |
|
|
140
|
+
| View project dashboard | `/manage-status` |
|
|
141
|
+
</completion>
|
|
112
142
|
|
|
113
143
|
<error_codes>
|
|
114
144
|
| Code | Severity | Condition | Recovery |
|
|
@@ -35,57 +35,82 @@ $ARGUMENTS -- topic/plan text for interactive mode, or --from source for upstrea
|
|
|
35
35
|
- **Resume mode** (`-c` or `--session ID`): Continue from a previous grill session
|
|
36
36
|
|
|
37
37
|
**Flags:**
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
|
|
39
|
+
| Flag | Effect | Default |
|
|
40
|
+
|------|--------|---------|
|
|
41
|
+
| `-y` / `--yes` | Auto mode — CLI exploration replaces human answers | `false` |
|
|
42
|
+
| `-c` / `--continue` | Resume from last grill session | — |
|
|
43
|
+
| `--session ID` | Resume specific session | — |
|
|
44
|
+
| `--depth shallow\|standard\|deep` | Branch count 3/5/8 | `standard` |
|
|
45
|
+
| `--from <source>` | Load upstream material (`blueprint:ID`, `@file`, or path) | — |
|
|
43
46
|
|
|
44
47
|
**Output directory**: `.workflow/scratch/{YYYYMMDD}-grill-{slug}/`
|
|
45
48
|
**Produced files**: `grill-report.md`, `terminology.md`, `context-package.json`
|
|
46
49
|
|
|
47
|
-
###
|
|
48
|
-
|
|
49
|
-
`maestro spec load --category arch`
|
|
50
|
+
### Pre-load
|
|
51
|
+
|
|
52
|
+
1. **Specs**: `maestro spec load --category arch` — load architecture constraints
|
|
53
|
+
2. **Wiki search**: `maestro wiki search "{topic keywords}"` → load relevant entries before grilling
|
|
54
|
+
3. All optional — proceed without if unavailable
|
|
50
55
|
</context>
|
|
51
56
|
|
|
52
57
|
<interview_protocol>
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
- Use concrete scenarios: "What happens when a user does {action} while {condition} is true?"
|
|
66
|
-
- Probe boundaries: "You said {X} is in scope — does that include {edge_case}, or is that separate?"
|
|
67
|
-
- Challenge scale: "This touches `{table}` — at 10x current data volume, which query breaks first?"
|
|
68
|
-
|
|
69
|
-
Branch walking order: Scope & Boundaries → Data Model & State → Edge Cases & Failure Modes → Integration & Dependencies → Scale & Performance → Security & Access Control → Observability & Operations → Migration & Rollback. Number of branches determined by `--depth`.
|
|
70
|
-
|
|
71
|
-
Exit: When all depth-selected branches are fully walked (every question answered or explicitly deferred), finalize the report and generate context-package.json.
|
|
58
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
59
|
+
|
|
60
|
+
**Interaction mode override**: adversarial Socratic — NOT menu-driven
|
|
61
|
+
**Question style**:
|
|
62
|
+
- Reference specific code: "The codebase uses `{symbol}` at `{file:line}` — your proposal calls it `{term}`. Which wins?"
|
|
63
|
+
- Concrete scenarios: "What happens when {action} while {condition}?"
|
|
64
|
+
- Challenge contradictions: immediately surface conflicts with code evidence or prior answers
|
|
65
|
+
- Escalating depth: per branch basic → specific → adversarial
|
|
66
|
+
**Branch traversal** (depth-gated, --depth controls count): Scope & Boundaries → Data Model & State → Edge Cases & Failure Modes → Integration & Dependencies → Scale & Performance → Security & Access Control → Observability & Operations → Migration & Rollback
|
|
67
|
+
**Writeback target**: grill-report.md (Q&A append per question) + terminology.md (term crystallization)
|
|
68
|
+
**Additional skip conditions**: none beyond standard (-y, -c)
|
|
69
|
+
**Exit condition**: all depth-selected branches fully walked → finalize report + context-package.json
|
|
72
70
|
</interview_protocol>
|
|
73
71
|
|
|
74
72
|
<execution>
|
|
75
73
|
Follow '~/.maestro/workflows/grill.md' completely.
|
|
76
|
-
|
|
77
|
-
**Next-step routing on completion:**
|
|
78
|
-
|
|
79
|
-
Standard routing:
|
|
80
|
-
- Need multi-role elaboration → Skill({ skill: "maestro-brainstorm", args: "{topic} --from grill:{artifact_id}" })
|
|
81
|
-
- Need deep technical analysis → Skill({ skill: "maestro-analyze", args: "{topic} --from grill:{artifact_id}" })
|
|
82
|
-
- Scope is clear, ready for roadmap → Skill({ skill: "maestro-roadmap", args: "--from grill:{artifact_id}" })
|
|
83
|
-
- Need formal spec package → Skill({ skill: "maestro-blueprint", args: "--from grill:{artifact_id}" })
|
|
84
|
-
|
|
85
|
-
Resume routing:
|
|
86
|
-
- More branches to walk → Skill({ skill: "maestro-grill", args: "{topic} -c" })
|
|
87
74
|
</execution>
|
|
88
75
|
|
|
76
|
+
<completion>
|
|
77
|
+
### Standalone report
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
=== GRILL READY ===
|
|
81
|
+
Topic: {topic}
|
|
82
|
+
Branches walked: {count}/{depth_target}
|
|
83
|
+
Decisions locked: {locked_count}
|
|
84
|
+
Open risks: {risk_count}
|
|
85
|
+
Output: {output_dir}
|
|
86
|
+
Artifact: GRL-{id}
|
|
87
|
+
=== END GRILL ===
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Ralph-invoked completion
|
|
91
|
+
|
|
92
|
+
End the step by calling the CLI (no text block output):
|
|
93
|
+
```
|
|
94
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Status verdicts:
|
|
98
|
+
- **DONE** — Normal completion
|
|
99
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
100
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
101
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
102
|
+
|
|
103
|
+
### Next-step routing
|
|
104
|
+
|
|
105
|
+
| Condition | Suggestion |
|
|
106
|
+
|-----------|-----------|
|
|
107
|
+
| Need multi-role elaboration | `Skill({ skill: "maestro-brainstorm", args: "{topic} --from grill:{artifact_id}" })` |
|
|
108
|
+
| Need deep technical analysis | `Skill({ skill: "maestro-analyze", args: "{topic} --from grill:{artifact_id}" })` |
|
|
109
|
+
| Scope is clear, ready for roadmap | `Skill({ skill: "maestro-roadmap", args: "--from grill:{artifact_id}" })` |
|
|
110
|
+
| Need formal spec package | `Skill({ skill: "maestro-blueprint", args: "--from grill:{artifact_id}" })` |
|
|
111
|
+
| More branches to walk | `Skill({ skill: "maestro-grill", args: "{topic} -c" })` |
|
|
112
|
+
</completion>
|
|
113
|
+
|
|
89
114
|
<error_codes>
|
|
90
115
|
| Code | Severity | Condition | Recovery |
|
|
91
116
|
|------|----------|-----------|----------|
|