mindsystem-cc 3.0.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.
- package/LICENSE +21 -0
- package/README.md +501 -0
- package/agents/ms-codebase-mapper.md +739 -0
- package/agents/ms-debugger.md +1184 -0
- package/agents/ms-designer.md +414 -0
- package/agents/ms-executor.md +760 -0
- package/agents/ms-integration-checker.md +423 -0
- package/agents/ms-milestone-auditor.md +448 -0
- package/agents/ms-mock-generator.md +182 -0
- package/agents/ms-plan-checker.md +746 -0
- package/agents/ms-research-synthesizer.md +248 -0
- package/agents/ms-researcher.md +962 -0
- package/agents/ms-roadmapper.md +606 -0
- package/agents/ms-verifier.md +779 -0
- package/agents/ms-verify-fixer.md +124 -0
- package/bin/install.js +296 -0
- package/commands/ms/add-phase.md +207 -0
- package/commands/ms/add-todo.md +182 -0
- package/commands/ms/audit-milestone.md +318 -0
- package/commands/ms/check-phase.md +162 -0
- package/commands/ms/check-todos.md +217 -0
- package/commands/ms/complete-milestone.md +137 -0
- package/commands/ms/create-roadmap.md +273 -0
- package/commands/ms/debug.md +149 -0
- package/commands/ms/define-requirements.md +121 -0
- package/commands/ms/design-phase.md +341 -0
- package/commands/ms/discuss-milestone.md +48 -0
- package/commands/ms/discuss-phase.md +60 -0
- package/commands/ms/do-work.md +90 -0
- package/commands/ms/execute-phase.md +289 -0
- package/commands/ms/help.md +623 -0
- package/commands/ms/insert-phase.md +227 -0
- package/commands/ms/list-phase-assumptions.md +50 -0
- package/commands/ms/map-codebase.md +71 -0
- package/commands/ms/new-milestone.md +193 -0
- package/commands/ms/new-project.md +338 -0
- package/commands/ms/pause-work.md +123 -0
- package/commands/ms/plan-milestone-gaps.md +285 -0
- package/commands/ms/plan-phase.md +105 -0
- package/commands/ms/progress.md +370 -0
- package/commands/ms/remove-phase.md +338 -0
- package/commands/ms/research-phase.md +175 -0
- package/commands/ms/research-project.md +339 -0
- package/commands/ms/resume-work.md +40 -0
- package/commands/ms/review-design.md +484 -0
- package/commands/ms/simplify-flutter.md +193 -0
- package/commands/ms/update.md +159 -0
- package/commands/ms/verify-work.md +92 -0
- package/commands/ms/whats-new.md +124 -0
- package/mindsystem/references/checkpoints.md +788 -0
- package/mindsystem/references/continuation-format.md +255 -0
- package/mindsystem/references/debugging/debugging-mindset.md +11 -0
- package/mindsystem/references/debugging/hypothesis-testing.md +11 -0
- package/mindsystem/references/debugging/investigation-techniques.md +11 -0
- package/mindsystem/references/debugging/verification-patterns.md +11 -0
- package/mindsystem/references/debugging/when-to-research.md +11 -0
- package/mindsystem/references/git-integration.md +254 -0
- package/mindsystem/references/goal-backward.md +286 -0
- package/mindsystem/references/mock-patterns.md +294 -0
- package/mindsystem/references/plan-format.md +473 -0
- package/mindsystem/references/principles.md +73 -0
- package/mindsystem/references/questioning.md +140 -0
- package/mindsystem/references/research-pitfalls.md +233 -0
- package/mindsystem/references/scope-estimation.md +256 -0
- package/mindsystem/references/tdd.md +263 -0
- package/mindsystem/references/verification-patterns.md +595 -0
- package/mindsystem/templates/DEBUG.md +159 -0
- package/mindsystem/templates/UAT.md +403 -0
- package/mindsystem/templates/adhoc-summary.md +153 -0
- package/mindsystem/templates/codebase/architecture.md +255 -0
- package/mindsystem/templates/codebase/concerns.md +310 -0
- package/mindsystem/templates/codebase/conventions.md +307 -0
- package/mindsystem/templates/codebase/integrations.md +280 -0
- package/mindsystem/templates/codebase/stack.md +186 -0
- package/mindsystem/templates/codebase/structure.md +285 -0
- package/mindsystem/templates/codebase/testing.md +480 -0
- package/mindsystem/templates/config.json +26 -0
- package/mindsystem/templates/context.md +140 -0
- package/mindsystem/templates/continue-here.md +78 -0
- package/mindsystem/templates/debug-subagent-prompt.md +91 -0
- package/mindsystem/templates/design-iteration.md +208 -0
- package/mindsystem/templates/design.md +417 -0
- package/mindsystem/templates/discovery.md +146 -0
- package/mindsystem/templates/milestone-archive.md +123 -0
- package/mindsystem/templates/milestone-context.md +93 -0
- package/mindsystem/templates/milestone.md +115 -0
- package/mindsystem/templates/phase-prompt.md +574 -0
- package/mindsystem/templates/project.md +184 -0
- package/mindsystem/templates/requirements.md +231 -0
- package/mindsystem/templates/research-project/ARCHITECTURE.md +204 -0
- package/mindsystem/templates/research-project/FEATURES.md +147 -0
- package/mindsystem/templates/research-project/PITFALLS.md +200 -0
- package/mindsystem/templates/research-project/STACK.md +120 -0
- package/mindsystem/templates/research-project/SUMMARY.md +170 -0
- package/mindsystem/templates/research-subagent-prompt.md +92 -0
- package/mindsystem/templates/research.md +529 -0
- package/mindsystem/templates/roadmap.md +214 -0
- package/mindsystem/templates/state.md +224 -0
- package/mindsystem/templates/summary.md +269 -0
- package/mindsystem/templates/user-setup.md +323 -0
- package/mindsystem/templates/verification-report.md +322 -0
- package/mindsystem/workflows/complete-milestone.md +759 -0
- package/mindsystem/workflows/create-milestone.md +203 -0
- package/mindsystem/workflows/debug.md +14 -0
- package/mindsystem/workflows/define-requirements.md +330 -0
- package/mindsystem/workflows/diagnose-issues.md +241 -0
- package/mindsystem/workflows/discovery-phase.md +293 -0
- package/mindsystem/workflows/discuss-milestone.md +310 -0
- package/mindsystem/workflows/discuss-phase.md +237 -0
- package/mindsystem/workflows/do-work.md +359 -0
- package/mindsystem/workflows/execute-phase.md +644 -0
- package/mindsystem/workflows/execute-plan.md +1828 -0
- package/mindsystem/workflows/generate-mocks.md +187 -0
- package/mindsystem/workflows/list-phase-assumptions.md +178 -0
- package/mindsystem/workflows/map-codebase.md +289 -0
- package/mindsystem/workflows/plan-phase.md +876 -0
- package/mindsystem/workflows/research-phase.md +17 -0
- package/mindsystem/workflows/research-project.md +23 -0
- package/mindsystem/workflows/resume-project.md +311 -0
- package/mindsystem/workflows/transition.md +564 -0
- package/mindsystem/workflows/verify-phase.md +629 -0
- package/mindsystem/workflows/verify-work.md +823 -0
- package/package.json +32 -0
- package/scripts/generate-phase-patch.sh +169 -0
- package/scripts/ms-lookup/README.md +112 -0
- package/scripts/ms-lookup/ms_lookup/__init__.py +3 -0
- package/scripts/ms-lookup/ms_lookup/__main__.py +6 -0
- package/scripts/ms-lookup/ms_lookup/backends/__init__.py +6 -0
- package/scripts/ms-lookup/ms_lookup/backends/context7.py +219 -0
- package/scripts/ms-lookup/ms_lookup/backends/perplexity.py +145 -0
- package/scripts/ms-lookup/ms_lookup/cache.py +48 -0
- package/scripts/ms-lookup/ms_lookup/cli.py +219 -0
- package/scripts/ms-lookup/ms_lookup/config.py +23 -0
- package/scripts/ms-lookup/ms_lookup/errors.py +24 -0
- package/scripts/ms-lookup/ms_lookup/output.py +49 -0
- package/scripts/ms-lookup/ms_lookup/tokens.py +56 -0
- package/scripts/ms-lookup/pyproject.toml +17 -0
- package/scripts/ms-lookup/uv.lock +207 -0
- package/scripts/ms-lookup-wrapper.sh +21 -0
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Help the user figure out what they want to build in the next milestone through collaborative thinking.
|
|
3
|
+
|
|
4
|
+
You're a thinking partner helping them crystallize their vision for what's next. Features first — everything else (scope, phases) derives from what they want to build.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
<process>
|
|
8
|
+
|
|
9
|
+
<step name="check_state" priority="first">
|
|
10
|
+
Load project state:
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
cat .planning/STATE.md
|
|
14
|
+
cat .planning/ROADMAP.md
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**If no active milestone (expected state after completing previous):**
|
|
18
|
+
Continue to milestone_context.
|
|
19
|
+
|
|
20
|
+
**If active milestone exists:**
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
Current milestone in progress: v[X.Y] [Name]
|
|
24
|
+
Phases [N]-[M], [P]% complete
|
|
25
|
+
|
|
26
|
+
Did you want to:
|
|
27
|
+
1. Complete current milestone first (/ms:complete-milestone)
|
|
28
|
+
2. Add phases to current milestone (/ms:add-phase)
|
|
29
|
+
3. Continue anyway - discuss next milestone scope
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Wait for user response. If "Continue anyway", proceed to milestone_context.
|
|
34
|
+
</step>
|
|
35
|
+
|
|
36
|
+
<step name="milestone_context">
|
|
37
|
+
Present context from previous milestone:
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
Last completed: v[X.Y] [Name] (shipped [DATE])
|
|
41
|
+
Key accomplishments:
|
|
42
|
+
- [From MILESTONES.md or STATE.md]
|
|
43
|
+
|
|
44
|
+
Total phases delivered: [N]
|
|
45
|
+
Next phase number: [N+1]
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Continue to intake_gate.
|
|
49
|
+
</step>
|
|
50
|
+
|
|
51
|
+
<step name="intake_gate">
|
|
52
|
+
**CRITICAL: ALL questions use AskUserQuestion. Never ask inline text questions.**
|
|
53
|
+
|
|
54
|
+
The primary question is: **What do you want to build/add/fix?**
|
|
55
|
+
|
|
56
|
+
Everything else (scope, priority, constraints) is secondary and derived from features.
|
|
57
|
+
|
|
58
|
+
Check for inputs:
|
|
59
|
+
- Pending todos from STATE.md (potential features)
|
|
60
|
+
- Untested assumptions from MILESTONE-AUDIT.md (potential infrastructure work)
|
|
61
|
+
- Known gaps or pain points from usage
|
|
62
|
+
- User's ideas for what's next
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# Check for assumptions from previous milestone audit
|
|
66
|
+
ASSUMPTIONS=$(cat .planning/v*-MILESTONE-AUDIT.md 2>/dev/null | grep -c "assumptions:" || echo 0)
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**1. Open with context-aware options:**
|
|
70
|
+
|
|
71
|
+
Use AskUserQuestion:
|
|
72
|
+
- header: "Next"
|
|
73
|
+
- question: "What do you want to add, improve, or fix in this milestone?"
|
|
74
|
+
- options:
|
|
75
|
+
- [Pending todos from STATE.md if any]
|
|
76
|
+
- [If ASSUMPTIONS > 0: "Address untested assumptions ({N} items)"]
|
|
77
|
+
- "New features"
|
|
78
|
+
- "Improvements to existing"
|
|
79
|
+
- "Bug fixes"
|
|
80
|
+
- "Let me describe"
|
|
81
|
+
|
|
82
|
+
**If user selects "Address untested assumptions":**
|
|
83
|
+
|
|
84
|
+
Present the assumptions list from MILESTONE-AUDIT.md:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
## Untested Assumptions from v{X.Y}
|
|
88
|
+
|
|
89
|
+
These tests were skipped because required states couldn't be mocked:
|
|
90
|
+
|
|
91
|
+
| Phase | Test | Expected Behavior | Reason |
|
|
92
|
+
|-------|------|-------------------|--------|
|
|
93
|
+
| 04-comments | Error state display | Shows error message when API fails | Can't mock API errors |
|
|
94
|
+
| 04-comments | Empty state | Shows placeholder when no comments | Can't clear test data |
|
|
95
|
+
| 05-auth | Session timeout | Redirects to login after 30min | Can't manipulate time |
|
|
96
|
+
|
|
97
|
+
To verify these, you'd need:
|
|
98
|
+
- Error response mocking (API interceptor or mock server)
|
|
99
|
+
- State reset capabilities (clear data for empty states)
|
|
100
|
+
- Time manipulation (for timeout testing)
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Then use AskUserQuestion:
|
|
104
|
+
- header: "Assumptions"
|
|
105
|
+
- question: "Which assumptions do you want to address?"
|
|
106
|
+
- options:
|
|
107
|
+
- "All of them — plan test infrastructure"
|
|
108
|
+
- "Just error states"
|
|
109
|
+
- "Just empty states"
|
|
110
|
+
- "None for now — they're low risk"
|
|
111
|
+
|
|
112
|
+
Continue to feature gathering based on selection.
|
|
113
|
+
|
|
114
|
+
**2. Follow the thread (don't switch topics):**
|
|
115
|
+
|
|
116
|
+
Based on their response, dig deeper into THAT topic before moving on:
|
|
117
|
+
|
|
118
|
+
| They said | Follow-up |
|
|
119
|
+
|-----------|-----------|
|
|
120
|
+
| Named a feature | "What should [feature] do? What's the core behavior?" |
|
|
121
|
+
| "New features" | "What capability is missing? What would users do with it?" |
|
|
122
|
+
| "Improvements" | "Which existing feature needs improvement? What's the friction?" |
|
|
123
|
+
| "Bug fixes" | "What's broken? How does it manifest?" |
|
|
124
|
+
|
|
125
|
+
**3. Probe for edges:**
|
|
126
|
+
|
|
127
|
+
Once you understand the feature, probe:
|
|
128
|
+
- "What's the simplest version of this that would be useful?"
|
|
129
|
+
- "What would make this feel complete vs MVP?"
|
|
130
|
+
- "Any constraints I should know about?"
|
|
131
|
+
|
|
132
|
+
**4. Explore features:**
|
|
133
|
+
|
|
134
|
+
Based on their response, use AskUserQuestion:
|
|
135
|
+
|
|
136
|
+
If they named specific features:
|
|
137
|
+
- header: "Feature Details"
|
|
138
|
+
- question: "Tell me more about [feature] - what should it do?"
|
|
139
|
+
- options: [Contextual options based on feature type + "Let me describe it"]
|
|
140
|
+
|
|
141
|
+
If they described a general direction:
|
|
142
|
+
- header: "Breaking It Down"
|
|
143
|
+
- question: "That could involve [A], [B], [C] - which matter most?"
|
|
144
|
+
- options: [Specific sub-features + "All of them" + "Something else"]
|
|
145
|
+
|
|
146
|
+
If they're not sure:
|
|
147
|
+
- header: "Starting Points"
|
|
148
|
+
- question: "What's been frustrating or missing?"
|
|
149
|
+
- options: [Pending todos from STATE.md + pain point categories + "Let me think about it"]
|
|
150
|
+
|
|
151
|
+
**5. Prioritize:**
|
|
152
|
+
|
|
153
|
+
Use AskUserQuestion:
|
|
154
|
+
- header: "Priority"
|
|
155
|
+
- question: "Which of these matters most?"
|
|
156
|
+
- options: [Features they mentioned + "All equally important" + "Let me prioritize"]
|
|
157
|
+
|
|
158
|
+
After gathering features, synthesize:
|
|
159
|
+
|
|
160
|
+
```
|
|
161
|
+
Based on what you described:
|
|
162
|
+
|
|
163
|
+
**Features:**
|
|
164
|
+
- [Feature 1]: [brief description]
|
|
165
|
+
- [Feature 2]: [brief description]
|
|
166
|
+
- [Feature 3]: [brief description]
|
|
167
|
+
|
|
168
|
+
**Estimated scope:** [N] phases
|
|
169
|
+
**Theme suggestion:** v[X.Y] [Name]
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**6. Decision gate:**
|
|
173
|
+
|
|
174
|
+
Use AskUserQuestion:
|
|
175
|
+
- header: "Ready?"
|
|
176
|
+
- question: "Ready to create the milestone, or explore more?"
|
|
177
|
+
- options (ALL THREE REQUIRED):
|
|
178
|
+
- "Create milestone" - Proceed to /ms:new-milestone
|
|
179
|
+
- "Ask more questions" - Help me think through this more
|
|
180
|
+
- "Let me add context" - I have more to share
|
|
181
|
+
|
|
182
|
+
If "Ask more questions" → return to step 2 with new probes.
|
|
183
|
+
If "Let me add context" → receive input → return to step 2.
|
|
184
|
+
Loop until "Create milestone" selected.
|
|
185
|
+
</step>
|
|
186
|
+
|
|
187
|
+
<step name="write_context">
|
|
188
|
+
Write milestone context to file for handoff.
|
|
189
|
+
|
|
190
|
+
**File:** `.planning/MILESTONE-CONTEXT.md`
|
|
191
|
+
|
|
192
|
+
Use template from ~/.claude/mindsystem/templates/milestone-context.md
|
|
193
|
+
|
|
194
|
+
**Calculate next phase number:**
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
# Find highest existing phase number
|
|
198
|
+
LAST_PHASE=$(ls -d .planning/phases/[0-9]*-* 2>/dev/null | sort -V | tail -1 | grep -oE '[0-9]+' | head -1)
|
|
199
|
+
|
|
200
|
+
if [ -n "$LAST_PHASE" ]; then
|
|
201
|
+
NEXT_PHASE=$((10#$LAST_PHASE + 1))
|
|
202
|
+
else
|
|
203
|
+
NEXT_PHASE=1
|
|
204
|
+
fi
|
|
205
|
+
echo "Next phase number: $NEXT_PHASE"
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
Populate with:
|
|
209
|
+
- Features identified during discussion
|
|
210
|
+
- Suggested milestone name and theme
|
|
211
|
+
- Estimated phase count
|
|
212
|
+
- How features map to phases
|
|
213
|
+
- Any constraints or scope boundaries mentioned
|
|
214
|
+
- **Starting phase number** (calculated above)
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
# Write the context file
|
|
218
|
+
cat > .planning/MILESTONE-CONTEXT.md << 'EOF'
|
|
219
|
+
# Milestone Context
|
|
220
|
+
|
|
221
|
+
**Generated:** [today's date]
|
|
222
|
+
**Status:** Ready for /ms:new-milestone
|
|
223
|
+
|
|
224
|
+
<features>
|
|
225
|
+
## Features to Build
|
|
226
|
+
|
|
227
|
+
- **[Feature 1]**: [description]
|
|
228
|
+
- **[Feature 2]**: [description]
|
|
229
|
+
- **[Feature 3]**: [description]
|
|
230
|
+
|
|
231
|
+
</features>
|
|
232
|
+
|
|
233
|
+
<scope>
|
|
234
|
+
## Scope
|
|
235
|
+
|
|
236
|
+
**Suggested name:** v[X.Y] [Theme Name]
|
|
237
|
+
**Estimated phases:** [N]
|
|
238
|
+
**Focus:** [One sentence theme/focus]
|
|
239
|
+
|
|
240
|
+
</scope>
|
|
241
|
+
|
|
242
|
+
<starting_phase>
|
|
243
|
+
## Starting Phase
|
|
244
|
+
|
|
245
|
+
Next phase number: $NEXT_PHASE (calculated from existing phases)
|
|
246
|
+
|
|
247
|
+
</starting_phase>
|
|
248
|
+
|
|
249
|
+
<constraints>
|
|
250
|
+
## Constraints
|
|
251
|
+
|
|
252
|
+
- [Any constraints mentioned]
|
|
253
|
+
|
|
254
|
+
</constraints>
|
|
255
|
+
|
|
256
|
+
<notes>
|
|
257
|
+
## Additional Context
|
|
258
|
+
|
|
259
|
+
[Anything else from discussion]
|
|
260
|
+
|
|
261
|
+
</notes>
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
*This file is temporary. It will be deleted after /ms:new-milestone creates the milestone.*
|
|
266
|
+
EOF
|
|
267
|
+
```
|
|
268
|
+
</step>
|
|
269
|
+
|
|
270
|
+
<step name="handoff">
|
|
271
|
+
Present summary and hand off to create-milestone:
|
|
272
|
+
|
|
273
|
+
```
|
|
274
|
+
Milestone scope defined:
|
|
275
|
+
|
|
276
|
+
**Features:**
|
|
277
|
+
- [Feature 1]: [description]
|
|
278
|
+
- [Feature 2]: [description]
|
|
279
|
+
- [Feature 3]: [description]
|
|
280
|
+
|
|
281
|
+
**Suggested milestone:** v[X.Y] [Theme Name]
|
|
282
|
+
|
|
283
|
+
Context saved to `.planning/MILESTONE-CONTEXT.md`
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## ▶ Next Up
|
|
288
|
+
|
|
289
|
+
**Create Milestone v[X.Y]** — [Theme Name]
|
|
290
|
+
|
|
291
|
+
`/ms:new-milestone`
|
|
292
|
+
|
|
293
|
+
<sub>`/clear` first → fresh context window</sub>
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
```
|
|
297
|
+
</step>
|
|
298
|
+
|
|
299
|
+
</process>
|
|
300
|
+
|
|
301
|
+
<success_criteria>
|
|
302
|
+
|
|
303
|
+
- Project state loaded (STATE.md, MILESTONES.md)
|
|
304
|
+
- Previous milestone context presented
|
|
305
|
+
- **Features identified** - What to build/add/fix (the substance)
|
|
306
|
+
- Features explored with clarifying questions
|
|
307
|
+
- Scope synthesized from features (not asked abstractly)
|
|
308
|
+
- **MILESTONE-CONTEXT.md created** with features and scope
|
|
309
|
+
- Context handed off to /ms:new-milestone
|
|
310
|
+
</success_criteria>
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Gather phase context through collaborative thinking before planning. Help the user articulate their vision for how this phase should work, look, and feel.
|
|
3
|
+
|
|
4
|
+
You are a thinking partner, not an interviewer. The user is the visionary — you are the builder. Your job is to understand their vision, not interrogate them about technical details you can figure out yourself.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
<philosophy>
|
|
8
|
+
**User = founder/visionary. Claude = builder.**
|
|
9
|
+
|
|
10
|
+
The user doesn't know (and shouldn't need to know):
|
|
11
|
+
- Codebase patterns (you read the code)
|
|
12
|
+
- Technical risks (you identify during research)
|
|
13
|
+
- Implementation constraints (you figure those out)
|
|
14
|
+
- Success metrics (you infer from the work)
|
|
15
|
+
|
|
16
|
+
The user DOES know:
|
|
17
|
+
- How they imagine it working
|
|
18
|
+
- What it should look/feel like
|
|
19
|
+
- What's essential vs nice-to-have
|
|
20
|
+
- Any specific things they have in mind
|
|
21
|
+
|
|
22
|
+
Ask about vision. Figure out implementation yourself.
|
|
23
|
+
</philosophy>
|
|
24
|
+
|
|
25
|
+
<process>
|
|
26
|
+
|
|
27
|
+
<step name="validate_phase" priority="first">
|
|
28
|
+
Phase number: $ARGUMENTS (required)
|
|
29
|
+
|
|
30
|
+
Validate phase exists in roadmap:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
if [ -f .planning/ROADMAP.md ]; then
|
|
34
|
+
cat .planning/ROADMAP.md | grep "Phase ${PHASE}:"
|
|
35
|
+
else
|
|
36
|
+
cat .planning/ROADMAP.md | grep "Phase ${PHASE}:"
|
|
37
|
+
fi
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**If phase not found:**
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
Error: Phase ${PHASE} not found in roadmap.
|
|
44
|
+
|
|
45
|
+
Use /ms:progress to see available phases.
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Exit workflow.
|
|
49
|
+
|
|
50
|
+
**If phase found:**
|
|
51
|
+
Parse phase details from roadmap:
|
|
52
|
+
|
|
53
|
+
- Phase number
|
|
54
|
+
- Phase name
|
|
55
|
+
- Phase description
|
|
56
|
+
- Status (should be "Not started" or "In progress")
|
|
57
|
+
|
|
58
|
+
Continue to check_existing.
|
|
59
|
+
</step>
|
|
60
|
+
|
|
61
|
+
<step name="check_existing">
|
|
62
|
+
Check if CONTEXT.md already exists for this phase:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
ls .planning/phases/${PHASE}-*/CONTEXT.md 2>/dev/null
|
|
66
|
+
ls .planning/phases/${PHASE}-*/${PHASE}-CONTEXT.md 2>/dev/null
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**If exists:**
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
Phase ${PHASE} already has context: [path to CONTEXT.md]
|
|
73
|
+
|
|
74
|
+
What's next?
|
|
75
|
+
1. Update context - Review and revise existing context
|
|
76
|
+
2. View existing - Show me the current context
|
|
77
|
+
3. Skip - Use existing context as-is
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Wait for user response.
|
|
81
|
+
|
|
82
|
+
If "Update context": Load existing CONTEXT.md, continue to questioning
|
|
83
|
+
If "View existing": Read and display CONTEXT.md, then offer update/skip
|
|
84
|
+
If "Skip": Exit workflow
|
|
85
|
+
|
|
86
|
+
**If doesn't exist:**
|
|
87
|
+
Continue to questioning.
|
|
88
|
+
</step>
|
|
89
|
+
|
|
90
|
+
<step name="questioning">
|
|
91
|
+
**CRITICAL: ALL questions use AskUserQuestion. Never ask inline text questions.**
|
|
92
|
+
|
|
93
|
+
Present initial context from roadmap, then immediately use AskUserQuestion:
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
Phase ${PHASE}: ${PHASE_NAME}
|
|
97
|
+
|
|
98
|
+
From the roadmap: ${PHASE_DESCRIPTION}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**1. Open:**
|
|
102
|
+
|
|
103
|
+
Use AskUserQuestion:
|
|
104
|
+
- header: "Vision"
|
|
105
|
+
- question: "How do you imagine this working?"
|
|
106
|
+
- options: 2-3 interpretations based on the phase description + "Let me describe it"
|
|
107
|
+
|
|
108
|
+
**2. Follow the thread:**
|
|
109
|
+
|
|
110
|
+
Based on their response, use AskUserQuestion:
|
|
111
|
+
- header: "[Topic they mentioned]"
|
|
112
|
+
- question: "You mentioned [X] — what would that look like?"
|
|
113
|
+
- options: 2-3 interpretations + "Something else"
|
|
114
|
+
|
|
115
|
+
**3. Sharpen the core:**
|
|
116
|
+
|
|
117
|
+
Use AskUserQuestion:
|
|
118
|
+
- header: "Essential"
|
|
119
|
+
- question: "What's the most important part of this phase?"
|
|
120
|
+
- options: Key aspects they've mentioned + "All equally important" + "Something else"
|
|
121
|
+
|
|
122
|
+
**4. Capture specifics (optional):**
|
|
123
|
+
|
|
124
|
+
If they seem to have specific ideas, use AskUserQuestion:
|
|
125
|
+
- header: "Specifics"
|
|
126
|
+
- question: "Any particular look/feel/behavior in mind?"
|
|
127
|
+
- options: Contextual options based on what they've said + "No specifics" + "Let me describe"
|
|
128
|
+
|
|
129
|
+
CRITICAL — What NOT to ask:
|
|
130
|
+
- Technical risks (you figure those out)
|
|
131
|
+
- Codebase patterns (you read the code)
|
|
132
|
+
- Success metrics (too corporate)
|
|
133
|
+
- Constraints they didn't mention (don't interrogate)
|
|
134
|
+
- What's out of scope (implicit from roadmap)
|
|
135
|
+
|
|
136
|
+
**5. Decision gate:**
|
|
137
|
+
|
|
138
|
+
Use AskUserQuestion:
|
|
139
|
+
- header: "Ready?"
|
|
140
|
+
- question: "Ready to capture this context, or explore more?"
|
|
141
|
+
- options (ALL THREE REQUIRED):
|
|
142
|
+
- "Create CONTEXT.md" - I've shared my vision
|
|
143
|
+
- "Ask more questions" - Help me think through this more
|
|
144
|
+
- "Let me add context" - I have more to share
|
|
145
|
+
|
|
146
|
+
If "Ask more questions" → return to step 2 with new probes.
|
|
147
|
+
If "Let me add context" → receive input → return to step 2.
|
|
148
|
+
Loop until "Create CONTEXT.md" selected.
|
|
149
|
+
</step>
|
|
150
|
+
|
|
151
|
+
<step name="write_context">
|
|
152
|
+
Create CONTEXT.md capturing the user's vision.
|
|
153
|
+
|
|
154
|
+
Use template from ~/.claude/mindsystem/templates/context.md
|
|
155
|
+
|
|
156
|
+
**File location:** `.planning/phases/${PHASE}-${SLUG}/${PHASE}-CONTEXT.md`
|
|
157
|
+
|
|
158
|
+
**If phase directory doesn't exist yet:**
|
|
159
|
+
Create it: `.planning/phases/${PHASE}-${SLUG}/`
|
|
160
|
+
|
|
161
|
+
Use roadmap phase name for slug (lowercase, hyphens).
|
|
162
|
+
|
|
163
|
+
Populate template sections with VISION context (not technical analysis):
|
|
164
|
+
|
|
165
|
+
- `<vision>`: How the user imagines this working
|
|
166
|
+
- `<essential>`: What must be nailed in this phase
|
|
167
|
+
- `<specifics>`: Any particular look/feel/behavior mentioned
|
|
168
|
+
- `<notes>`: Any other context gathered
|
|
169
|
+
|
|
170
|
+
Do NOT populate with your own technical analysis. That comes during research/planning.
|
|
171
|
+
|
|
172
|
+
Write file.
|
|
173
|
+
</step>
|
|
174
|
+
|
|
175
|
+
<step name="confirm_creation">
|
|
176
|
+
Present CONTEXT.md summary:
|
|
177
|
+
|
|
178
|
+
```
|
|
179
|
+
Created: .planning/phases/${PHASE}-${SLUG}/${PHASE}-CONTEXT.md
|
|
180
|
+
|
|
181
|
+
## Vision
|
|
182
|
+
[How they imagine it working]
|
|
183
|
+
|
|
184
|
+
## Essential
|
|
185
|
+
[What must be nailed]
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## ▶ Next Up
|
|
190
|
+
|
|
191
|
+
**Phase ${PHASE}: [Name]** — [Goal from ROADMAP.md]
|
|
192
|
+
|
|
193
|
+
`/ms:plan-phase ${PHASE}`
|
|
194
|
+
|
|
195
|
+
<sub>`/clear` first → fresh context window</sub>
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
**Also available:**
|
|
200
|
+
- `/ms:research-phase ${PHASE}` — investigate unknowns
|
|
201
|
+
- Review/edit CONTEXT.md before continuing
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
</step>
|
|
207
|
+
|
|
208
|
+
<step name="git_commit">
|
|
209
|
+
Commit phase context:
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
git add .planning/phases/${PHASE}-${SLUG}/${PHASE}-CONTEXT.md
|
|
213
|
+
git commit -m "$(cat <<'EOF'
|
|
214
|
+
docs(${PHASE}): capture phase context
|
|
215
|
+
|
|
216
|
+
Phase ${PHASE}: ${PHASE_NAME}
|
|
217
|
+
- Vision and goals documented
|
|
218
|
+
- Essential requirements identified
|
|
219
|
+
- Scope boundaries defined
|
|
220
|
+
EOF
|
|
221
|
+
)"
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Confirm: "Committed: docs(${PHASE}): capture phase context"
|
|
225
|
+
</step>
|
|
226
|
+
|
|
227
|
+
</process>
|
|
228
|
+
|
|
229
|
+
<success_criteria>
|
|
230
|
+
|
|
231
|
+
- Phase validated against roadmap
|
|
232
|
+
- Vision gathered through collaborative thinking (not interrogation)
|
|
233
|
+
- User's imagination captured: how it works, what's essential
|
|
234
|
+
- CONTEXT.md created in phase directory
|
|
235
|
+
- CONTEXT.md committed to git
|
|
236
|
+
- User knows next steps (typically: research or plan the phase)
|
|
237
|
+
</success_criteria>
|