mindsystem-cc 3.20.0 → 3.21.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 (79) hide show
  1. package/README.md +5 -6
  2. package/agents/ms-mockup-designer.md +1 -1
  3. package/agents/ms-product-researcher.md +69 -0
  4. package/agents/ms-research-synthesizer.md +1 -1
  5. package/agents/ms-researcher.md +8 -8
  6. package/agents/ms-roadmapper.md +9 -13
  7. package/bin/install.js +68 -5
  8. package/commands/ms/add-phase.md +4 -4
  9. package/commands/ms/adhoc.md +1 -1
  10. package/commands/ms/audit-milestone.md +12 -12
  11. package/commands/ms/complete-milestone.md +25 -22
  12. package/commands/ms/config.md +202 -0
  13. package/commands/ms/design-phase.md +3 -8
  14. package/commands/ms/discuss-phase.md +26 -22
  15. package/commands/ms/doctor.md +22 -202
  16. package/commands/ms/execute-phase.md +18 -7
  17. package/commands/ms/help.md +46 -39
  18. package/commands/ms/insert-phase.md +3 -3
  19. package/commands/ms/new-milestone.md +40 -16
  20. package/commands/ms/new-project.md +53 -42
  21. package/commands/ms/plan-milestone-gaps.md +4 -5
  22. package/commands/ms/plan-phase.md +2 -2
  23. package/commands/ms/progress.md +2 -4
  24. package/commands/ms/research-phase.md +7 -12
  25. package/commands/ms/research-project.md +12 -12
  26. package/mindsystem/references/continuation-format.md +3 -3
  27. package/mindsystem/references/principles.md +1 -1
  28. package/mindsystem/references/routing/audit-result-routing.md +12 -11
  29. package/mindsystem/references/routing/between-milestones-routing.md +2 -2
  30. package/mindsystem/references/routing/milestone-complete-routing.md +1 -1
  31. package/mindsystem/references/routing/next-phase-routing.md +4 -2
  32. package/mindsystem/templates/context.md +7 -6
  33. package/mindsystem/templates/milestone-archive.md +5 -5
  34. package/mindsystem/templates/milestone-context.md +1 -1
  35. package/mindsystem/templates/milestone.md +9 -9
  36. package/mindsystem/templates/project.md +2 -2
  37. package/mindsystem/templates/research-subagent-prompt.md +3 -3
  38. package/mindsystem/templates/roadmap-milestone.md +14 -14
  39. package/mindsystem/templates/roadmap.md +9 -7
  40. package/mindsystem/workflows/adhoc.md +1 -1
  41. package/mindsystem/workflows/complete-milestone.md +40 -75
  42. package/mindsystem/workflows/discuss-phase.md +137 -65
  43. package/mindsystem/workflows/doctor-fixes.md +273 -0
  44. package/mindsystem/workflows/execute-phase.md +7 -3
  45. package/mindsystem/workflows/execute-plan.md +3 -0
  46. package/mindsystem/workflows/map-codebase.md +2 -2
  47. package/mindsystem/workflows/mockup-generation.md +1 -1
  48. package/mindsystem/workflows/plan-phase.md +1 -1
  49. package/mindsystem/workflows/transition.md +2 -2
  50. package/mindsystem/workflows/verify-work.md +1 -1
  51. package/package.json +1 -1
  52. package/scripts/__pycache__/ms-tools.cpython-314.pyc +0 -0
  53. package/scripts/__pycache__/test_ms_tools.cpython-314-pytest-9.0.2.pyc +0 -0
  54. package/scripts/fixtures/scan-context/.planning/ROADMAP.md +16 -0
  55. package/scripts/fixtures/scan-context/.planning/adhoc/20260220-fix-token-SUMMARY.md +12 -0
  56. package/scripts/fixtures/scan-context/.planning/config.json +3 -0
  57. package/scripts/fixtures/scan-context/.planning/debug/resolved/token-bug.md +11 -0
  58. package/scripts/fixtures/scan-context/.planning/knowledge/auth.md +11 -0
  59. package/scripts/fixtures/scan-context/.planning/phases/02-infra/02-1-SUMMARY.md +20 -0
  60. package/scripts/fixtures/scan-context/.planning/phases/04-setup/04-1-SUMMARY.md +21 -0
  61. package/scripts/fixtures/scan-context/.planning/phases/05-auth/05-1-SUMMARY.md +28 -0
  62. package/scripts/fixtures/scan-context/.planning/todos/done/setup-db.md +10 -0
  63. package/scripts/fixtures/scan-context/.planning/todos/pending/add-logout.md +10 -0
  64. package/scripts/fixtures/scan-context/expected-output.json +257 -0
  65. package/scripts/ms-tools.py +2139 -0
  66. package/scripts/test_ms_tools.py +836 -0
  67. package/commands/ms/list-phase-assumptions.md +0 -56
  68. package/mindsystem/workflows/list-phase-assumptions.md +0 -178
  69. package/scripts/__pycache__/compare_mockups.cpython-314.pyc +0 -0
  70. package/scripts/archive-milestone-files.sh +0 -68
  71. package/scripts/archive-milestone-phases.sh +0 -138
  72. package/scripts/doctor-scan.sh +0 -402
  73. package/scripts/gather-milestone-stats.sh +0 -179
  74. package/scripts/generate-adhoc-patch.sh +0 -79
  75. package/scripts/generate-phase-patch.sh +0 -169
  76. package/scripts/scan-artifact-subsystems.sh +0 -55
  77. package/scripts/scan-planning-context.py +0 -839
  78. package/scripts/update-state.sh +0 -59
  79. package/scripts/validate-execution-order.sh +0 -104
package/README.md CHANGED
@@ -262,14 +262,14 @@ Replace `<N>` with the phase number you're working on.
262
262
  **Run:**
263
263
 
264
264
  ```
265
- /ms:audit-milestone 1.0.0
266
- /ms:complete-milestone 1.0.0
267
- /ms:new-milestone "v1.1"
265
+ /ms:audit-milestone
266
+ /ms:complete-milestone
267
+ /ms:new-milestone
268
268
  ```
269
269
 
270
270
  **What you'll get:**
271
271
 
272
- - `.planning/milestones/v1.0/` — archived milestone (ROADMAP, REQUIREMENTS, DECISIONS, research)
272
+ - `.planning/milestones/mvp/` — archived milestone (ROADMAP, REQUIREMENTS, DECISIONS, research)
273
273
  - Active docs stay lean; full detail lives in the version folder
274
274
 
275
275
  **Tip:** Milestone review can be **report-only** (e.g., Flutter structural review) so you stay in control. Create a quality phase, or accept tech debt explicitly — your call.
@@ -338,11 +338,10 @@ Full docs live in `/ms:help` (same content as `commands/ms/help.md`).
338
338
  | `/ms:map-codebase` | Document existing repo's stack, structure, and conventions |
339
339
  | `/ms:research-project` | Do domain research and save findings to `.planning/research/` |
340
340
  | `/ms:create-roadmap` | Define requirements and create phases mapped to them |
341
- | `/ms:discuss-phase <number>` | Lock intent and constraints before planning |
341
+ | `/ms:discuss-phase <number>` | Product-informed collaborative thinking before planning |
342
342
  | `/ms:design-phase <number>` | Generate UI/UX spec for UI-heavy work |
343
343
  | `/ms:review-design [scope]` | Audit and improve existing UI quality |
344
344
  | `/ms:research-phase <number>` | Do deep research for niche phase domains |
345
- | `/ms:list-phase-assumptions <number>` | Show what Mindsystem assumes before planning |
346
345
  | `/ms:plan-phase [number] [--gaps]` | Create small, verifiable plans with optional risk-based verification |
347
346
  | `/ms:check-phase <number>` | Sanity-check plans before execution |
348
347
  | `/ms:execute-phase <phase-number>` | Run all unexecuted plans in fresh subagents |
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ms-mockup-designer
3
3
  description: Generates self-contained HTML/CSS mockups for design direction exploration. Spawned by design-phase command.
4
- model: sonnet
4
+ model: opus
5
5
  tools: Read, Write, Bash
6
6
  color: magenta
7
7
  ---
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: ms-product-researcher
3
+ description: Researches competitor products, UX patterns, and industry best practices for phase-level product decisions. Spawned by /ms:discuss-phase.
4
+ model: sonnet
5
+ tools: WebSearch, WebFetch
6
+ color: cyan
7
+ ---
8
+
9
+ <input>
10
+ You receive: `<product_context>` (Who It's For, Core Value, How It's Different), `<phase_requirements>` (phase goal + mapped requirements), `<research_focus>` (specific product questions to investigate).
11
+ </input>
12
+
13
+ <role>
14
+ You are a Mindsystem product researcher. Deliver prescriptive, audience-grounded product intelligence — "Users expect X" beats "Consider whether X."
15
+
16
+ **Prescriptive, not exploratory.** "Users expect inline editing for this type of content" beats "You could consider inline editing or modal editing or page-based editing." Make a recommendation, explain why, let the user override.
17
+
18
+ **Audience-grounded.** Every recommendation ties back to the target audience from `<product_context>`. "Enterprise users expect X" is different from "Consumer app users expect Y." Never give generic advice.
19
+
20
+ **Competitor-aware, not competitor-driven.** Know what exists. Recommend what fits THIS product's positioning. "Competitors do X, but given your differentiation of Y, consider Z" is the ideal output shape.
21
+
22
+ **Concise and structured.** Target 2000-3000 tokens max. The orchestrator weaves your findings into a briefing — dense signal beats comprehensive coverage.
23
+ </role>
24
+
25
+ <tool_strategy>
26
+
27
+ | Need | Tool | Why |
28
+ |------|------|-----|
29
+ | Competitor features | WebSearch | Discover what exists |
30
+ | UX pattern details | WebFetch | Read specific articles/docs |
31
+ | Industry best practices | WebSearch | Current standards |
32
+ | Product comparisons | WebSearch | Side-by-side analysis |
33
+
34
+ **Include current year** in search queries for freshness.
35
+
36
+ **Budget:** 5-8 searches max. Prioritize breadth over depth — the user needs a landscape, not a dissertation.
37
+ </tool_strategy>
38
+
39
+ <output>
40
+ Return structured text (do NOT write files). Use this format:
41
+
42
+ ```markdown
43
+ ## PRODUCT RESEARCH COMPLETE
44
+
45
+ ### Competitor Landscape
46
+ [How 3-5 relevant competitors handle this. Specific features, not vague descriptions.]
47
+
48
+ ### UX Patterns Users Expect
49
+ [Industry conventions for this type of feature. What feels "right" to the target audience.]
50
+
51
+ ### Audience Expectations
52
+ [What the target audience specifically expects, grounded in Who It's For from `<product_context>`.]
53
+
54
+ ### Key Tradeoffs
55
+ [2-3 decision points with pros/cons and recommendation for each.]
56
+
57
+ ### Recommendations
58
+ [Prescriptive recommendations tied to this product's positioning. "Do X because Y."]
59
+ ```
60
+ </output>
61
+
62
+ <success_criteria>
63
+ - Findings grounded in target audience, not generic
64
+ - Competitor analysis names specific products and features
65
+ - Recommendations are prescriptive with reasoning
66
+ - Total output 2000-3000 tokens
67
+ - No technical implementation details
68
+ - Every recommendation connects to product positioning
69
+ </success_criteria>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ms-research-synthesizer
3
3
  description: Synthesizes research outputs from parallel researcher agents into SUMMARY.md. Spawned by /ms:research-project after 4 researcher agents complete.
4
- model: haiku
4
+ model: sonnet
5
5
  tools: Read, Write, Bash
6
6
  color: purple
7
7
  ---
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ms-researcher
3
3
  description: Conducts comprehensive research using systematic methodology, source verification, and structured output. Spawned by /ms:research-phase and /ms:research-project orchestrators.
4
- model: sonnet
4
+ model: opus
5
5
  tools: Read, Write, Bash, Grep, Glob, WebSearch, WebFetch
6
6
  color: cyan
7
7
  ---
@@ -195,18 +195,18 @@ When researching "best library for X":
195
195
 
196
196
  ## ms-lookup CLI
197
197
 
198
- The CLI is at `~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh`.
198
+ The CLI is available as `ms-lookup`.
199
199
 
200
200
  ### Library Documentation
201
201
 
202
202
  ```bash
203
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh docs <library> "<query>"
203
+ ms-lookup docs <library> "<query>"
204
204
  ```
205
205
 
206
206
  Example:
207
207
  ```bash
208
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh docs nextjs "app router file conventions"
209
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh docs "react-three-fiber" "physics setup"
208
+ ms-lookup docs nextjs "app router file conventions"
209
+ ms-lookup docs "react-three-fiber" "physics setup"
210
210
  ```
211
211
 
212
212
  **When to use:** Library APIs, framework features, configuration options, version-specific behavior. This is your PRIMARY source for library-specific questions — most authoritative.
@@ -216,13 +216,13 @@ Example:
216
216
  ### Deep Research
217
217
 
218
218
  ```bash
219
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh deep "<query>"
219
+ ms-lookup deep "<query>"
220
220
  ```
221
221
 
222
222
  Example:
223
223
  ```bash
224
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh deep "authentication patterns for SaaS applications"
225
- ~/.claude/mindsystem/scripts/ms-lookup-wrapper.sh deep "WebGPU browser support and production readiness 2026"
224
+ ms-lookup deep "authentication patterns for SaaS applications"
225
+ ms-lookup deep "WebGPU browser support and production readiness 2026"
226
226
  ```
227
227
 
228
228
  **When to use:** Architecture decisions, technology comparisons, comprehensive ecosystem surveys, best practices synthesis. Use for HIGH-VALUE research questions — this costs money.
@@ -222,20 +222,16 @@ All use binary Likely/Unlikely with parenthetical reason. These are hints to use
222
222
 
223
223
  ### Discussion Indicators
224
224
 
225
- **Problem it solves:** User's mental model isn't documented. Planning happens without understanding what's essential vs nice-to-have.
225
+ **Problem it solves:** Claude plans based on assumptions about user intent. Discussion surfaces those assumptions before they become embedded in plans.
226
226
 
227
- **Likely when ANY of:**
228
- - Phase goal mentions "user can [verb]" without specifying HOW
229
- - Success criteria have multiple valid interpretations
230
- - Phase involves UX decisions (not just backend)
231
- - Requirements mention experiential qualities ("should feel", "intuitive")
232
- - Novel feature not based on existing patterns
227
+ **Default: Likely.** Every phase benefits from surfacing Claude's assumptions before planning. Discussion now provides deep artifact loading, assumptions surfacing, and product-informed questions — valuable even for seemingly "clear" phases.
233
228
 
234
- **Unlikely when ALL of:**
235
- - Requirements are specific and unambiguous
236
- - Backend/infrastructure only (APIs, database, CI/CD)
237
- - Follows clearly established patterns
238
- - Bug fix, performance, or technical debt work
229
+ **When Likely**, the rationale enumerates 2-4 phase-specific assumptions or open questions (not generic labels like "ambiguous user flow"). Example: "Likely (assumes password reset uses email not SMS, unclear if social login needed, session duration unspecified)"
230
+
231
+ **Unlikely only when ALL of:**
232
+ - Fully mechanical (zero design decisions)
233
+ - Zero ambiguity in scope or approach
234
+ - Examples: version bump, rename-only refactor, config-only change, pure deletion/cleanup
239
235
 
240
236
  ### Design Indicators
241
237
 
@@ -273,7 +269,7 @@ All use binary Likely/Unlikely with parenthetical reason. These are hints to use
273
269
  For each phase in ROADMAP.md:
274
270
 
275
271
  ```markdown
276
- **Discuss**: Likely (ambiguous user flow) | Unlikely (clear requirements)
272
+ **Discuss**: Likely (assumes X, unclear if Y, Z unspecified) | Unlikely (mechanical change, zero decisions)
277
273
  **Discuss topics**: [What to clarify] (only if Likely)
278
274
  **Design**: Likely (significant new UI) | Unlikely (backend only)
279
275
  **Design focus**: [What to design] (only if Likely)
package/bin/install.js CHANGED
@@ -404,6 +404,65 @@ function cleanupOrphanedFiles(claudeDir, filesToRemove) {
404
404
  }
405
405
  }
406
406
 
407
+ /**
408
+ * Generate CLI wrapper scripts and configure PATH hook
409
+ */
410
+ function generateWrappers(claudeDir) {
411
+ const binDir = path.join(claudeDir, 'bin');
412
+ fs.mkdirSync(binDir, { recursive: true });
413
+
414
+ const wrappers = {
415
+ 'ms-tools': '#!/usr/bin/env bash\nexec uv run "$(dirname "$0")/../mindsystem/scripts/ms-tools.py" "$@"\n',
416
+ 'ms-lookup': '#!/usr/bin/env bash\nexec "$(dirname "$0")/../mindsystem/scripts/ms-lookup-wrapper.sh" "$@"\n',
417
+ 'ms-compare-mockups': '#!/usr/bin/env bash\nexec uv run "$(dirname "$0")/../mindsystem/scripts/compare_mockups.py" "$@"\n',
418
+ };
419
+
420
+ for (const [name, content] of Object.entries(wrappers)) {
421
+ fs.writeFileSync(path.join(binDir, name), content);
422
+ fs.chmodSync(path.join(binDir, name), '755');
423
+ }
424
+
425
+ console.log(` ${green}✓${reset} Generated CLI wrappers (${Object.keys(wrappers).join(', ')})`);
426
+ }
427
+
428
+ function ensurePathHook(claudeDir, isGlobal, configDir) {
429
+ const settingsPath = path.join(claudeDir, 'settings.json');
430
+ let settings = {};
431
+ if (fs.existsSync(settingsPath)) {
432
+ settings = JSON.parse(fs.readFileSync(settingsPath, 'utf8'));
433
+ }
434
+
435
+ if (!settings.hooks) settings.hooks = {};
436
+ if (!Array.isArray(settings.hooks.SessionStart))
437
+ settings.hooks.SessionStart = [];
438
+
439
+ // Idempotent — skip if already present
440
+ const marker = 'mindsystem/bin';
441
+ if (settings.hooks.SessionStart.some(e => JSON.stringify(e).includes(marker)))
442
+ return;
443
+
444
+ // Build PATH expression
445
+ let binExpr;
446
+ if (isGlobal) {
447
+ binExpr = configDir
448
+ ? `${claudeDir}/bin`
449
+ : '$HOME/.claude/bin';
450
+ } else {
451
+ binExpr = '$CLAUDE_PROJECT_DIR/.claude/bin';
452
+ }
453
+
454
+ settings.hooks.SessionStart.push({
455
+ matcher: '',
456
+ hooks: [{
457
+ type: 'command',
458
+ command: `echo 'export PATH="${binExpr}:$PATH"' >> "$CLAUDE_ENV_FILE"`
459
+ }]
460
+ });
461
+
462
+ fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));
463
+ console.log(` ${green}✓${reset} Configured PATH hook`);
464
+ }
465
+
407
466
  /**
408
467
  * Recursively copy directory, replacing paths in .md files
409
468
  */
@@ -466,8 +525,8 @@ function installFile(srcPath, destPath, pathPrefix) {
466
525
  fs.copyFileSync(srcPath, destPath);
467
526
  }
468
527
 
469
- // Make shell scripts executable
470
- if (srcPath.endsWith('.sh')) {
528
+ // Make scripts executable
529
+ if (srcPath.endsWith('.sh') || srcPath.endsWith('.py')) {
471
530
  fs.chmodSync(destPath, '755');
472
531
  }
473
532
  }
@@ -563,7 +622,11 @@ async function install(isGlobal) {
563
622
  fs.writeFileSync(versionDest, pkg.version);
564
623
  console.log(` ${green}✓${reset} Wrote VERSION (${pkg.version})`);
565
624
 
566
- // Phase 7: Check Python for ms-lookup
625
+ // Phase 7: Generate CLI wrappers and PATH hook
626
+ generateWrappers(claudeDir);
627
+ ensurePathHook(claudeDir, isGlobal, configDir);
628
+
629
+ // Phase 8: Check Python for ms-lookup
567
630
  const msLookupPath = path.join(claudeDir, 'mindsystem', 'scripts', 'ms-lookup');
568
631
  if (fs.existsSync(msLookupPath)) {
569
632
  try {
@@ -583,13 +646,13 @@ async function install(isGlobal) {
583
646
  }
584
647
  }
585
648
 
586
- // Phase 8: Cleanup orphaned files
649
+ // Phase 9: Cleanup orphaned files
587
650
  if (orphans.length > 0) {
588
651
  console.log('');
589
652
  cleanupOrphanedFiles(claudeDir, orphans);
590
653
  }
591
654
 
592
- // Phase 9: Write new manifest
655
+ // Phase 10: Write new manifest
593
656
  const newManifest = {
594
657
  version: pkg.version,
595
658
  installedAt: new Date().toISOString(),
@@ -66,7 +66,7 @@ Parse the roadmap to find the current milestone section:
66
66
  Example structure:
67
67
 
68
68
  ```
69
- ## Current Milestone: v1.0 Foundation
69
+ ## Current Milestone: Foundation
70
70
 
71
71
  ### Phase 4: Focused Command System
72
72
  ### Phase 5: Path Routing & Validation
@@ -121,9 +121,9 @@ Add the new phase entry to the roadmap:
121
121
 
122
122
  2. Before writing the phase entry, analyze the description to determine pre-work flags:
123
123
 
124
- **Discuss**: Likely when description mentions user-facing features, UX decisions,
125
- experiential qualities, or novel features. Unlikely for backend/infra, bug fixes,
126
- technical debt, or clear-cut work.
124
+ **Discuss**: Default Likely enumerate 2-4 assumptions or open questions specific
125
+ to the phase. Unlikely only for fully mechanical zero-decision work (version bump,
126
+ rename-only refactor, config-only change, pure deletion/cleanup).
127
127
 
128
128
  **Design**: Likely when description involves UI work, visual elements, forms,
129
129
  dashboards, or multi-screen flows. Unlikely for backend-only, API, infrastructure,
@@ -71,7 +71,7 @@ Single git commit with all changes (code + code review changes + PLAN.md + SUMMA
71
71
 
72
72
  <step name="generate_patch">
73
73
  Generate patch file from adhoc commit.
74
- Run generate-adhoc-patch.sh with commit hash and output path.
74
+ Run `ms-tools generate-adhoc-patch` with commit hash and output path.
75
75
  </step>
76
76
 
77
77
  <step name="completion">
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ms:audit-milestone
3
3
  description: Audit milestone completion against original intent before archiving
4
- argument-hint: "[version]"
4
+ argument-hint: "[name]"
5
5
  allowed-tools:
6
6
  - Read
7
7
  - Glob
@@ -22,7 +22,7 @@ Verify milestone achieved its definition of done. Check requirements coverage, c
22
22
  </execution_context>
23
23
 
24
24
  <context>
25
- Version: $ARGUMENTS (optional — defaults to current milestone)
25
+ Milestone: $ARGUMENTS (optional — defaults to current milestone from PROJECT.md)
26
26
 
27
27
  **Original Intent:**
28
28
  @.planning/PROJECT.md
@@ -130,13 +130,13 @@ For each requirement in REQUIREMENTS.md mapped to this milestone:
130
130
  - Check phase verification status
131
131
  - Determine: satisfied | partial | unsatisfied
132
132
 
133
- ## 6. Aggregate into v{version}-MILESTONE-AUDIT.md
133
+ ## 6. Aggregate into MILESTONE-AUDIT.md
134
134
 
135
- Create `.planning/v{version}-MILESTONE-AUDIT.md` with:
135
+ Create `.planning/MILESTONE-AUDIT.md` with:
136
136
 
137
137
  ```yaml
138
138
  ---
139
- milestone: {version}
139
+ milestone: {name}
140
140
  audited: {timestamp}
141
141
  status: passed | gaps_found | tech_debt
142
142
  scores:
@@ -231,7 +231,7 @@ For agents with `mode: analyze-only` (e.g., `ms-flutter-reviewer`):
231
231
  Task(
232
232
  prompt="
233
233
  <objective>
234
- Analyze code from milestone {version} for structural issues.
234
+ Analyze code from milestone {name} for structural issues.
235
235
  Report findings only — do NOT make changes.
236
236
  </objective>
237
237
 
@@ -341,7 +341,7 @@ Findings are already tracked in `.planning/TECH-DEBT.md` via Step 8.5. Continue
341
341
 
342
342
  ### Path B: Simplifier Agents (default)
343
343
 
344
- For agents without `mode: analyze-only` (e.g., `ms-code-simplifier`, `ms-flutter-simplifier`):
344
+ For agents without `mode: analyze-only` (e.g., `ms-code-simplifier`, `ms-flutter-code-quality`):
345
345
 
346
346
  **B1. Spawn code review agent:**
347
347
 
@@ -349,7 +349,7 @@ For agents without `mode: analyze-only` (e.g., `ms-code-simplifier`, `ms-flutter
349
349
  Task(
350
350
  prompt="
351
351
  <objective>
352
- Review code from milestone {version}.
352
+ Review code from milestone {name}.
353
353
  Focus on architectural patterns, cross-phase consistency, and structural improvements.
354
354
  Preserve all functionality. Make changes that improve clarity and maintainability.
355
355
  </objective>
@@ -402,9 +402,9 @@ After code review (all sources now available), generate or update `.planning/TEC
402
402
  ## 9. Commit Audit Report
403
403
 
404
404
  ```bash
405
- git add .planning/v{version}-MILESTONE-AUDIT.md .planning/TECH-DEBT.md
405
+ git add .planning/MILESTONE-AUDIT.md .planning/TECH-DEBT.md
406
406
  git commit -m "$(cat <<'EOF'
407
- docs(milestone): complete v{version} audit
407
+ docs(milestone): complete {name} audit
408
408
 
409
409
  Status: {status}
410
410
  Scores: Requirements {N}/{M} | Phases {N}/{M} | Integration {N}/{M} | Flows {N}/{M}
@@ -425,11 +425,11 @@ Read `~/.claude/mindsystem/references/routing/audit-result-routing.md` and follo
425
425
  - [ ] Tech debt collected into .planning/TECH-DEBT.md (de-duplicated, TD-{N} IDs assigned)
426
426
  - [ ] Assumptions aggregated by phase
427
427
  - [ ] Integration checker spawned for cross-phase wiring
428
- - [ ] v{version}-MILESTONE-AUDIT.md created with assumptions section
428
+ - [ ] MILESTONE-AUDIT.md created with assumptions section
429
429
  - [ ] Code review completed (or skipped if config says "skip")
430
430
  - [ ] If analyze-only reviewer: YAML findings parsed and added to report
431
431
  - [ ] If analyze-only reviewer: Binary decision presented (quality phase vs tech debt)
432
432
  - [ ] If quality phase chosen: Phase directory created, ROADMAP updated with TECH-DEBT.md scope
433
- - [ ] MILESTONE-AUDIT.md committed to git
433
+ - [ ] MILESTONE-AUDIT.md and TECH-DEBT.md committed to git
434
434
  - [ ] Results presented with actionable next steps
435
435
  </success_criteria>
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  type: prompt
3
3
  name: ms:complete-milestone
4
- description: Archive completed milestone and prepare for next version
5
- argument-hint: <version>
4
+ description: Archive completed milestone and prepare for next milestone
5
+ argument-hint: "[name]"
6
6
  allowed-tools:
7
7
  - Read
8
8
  - Write
@@ -11,10 +11,10 @@ allowed-tools:
11
11
  ---
12
12
 
13
13
  <objective>
14
- Mark milestone {{version}} complete, archive to milestones/, and update ROADMAP.md and REQUIREMENTS.md.
14
+ Mark milestone complete, archive to milestones/, and update ROADMAP.md and REQUIREMENTS.md.
15
15
 
16
- Purpose: Create historical record of shipped version, archive milestone artifacts (roadmap + requirements), and prepare for next milestone.
17
- Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tagged.
16
+ Purpose: Create historical record of shipped milestone, archive milestone artifacts (roadmap + requirements), and prepare for next milestone.
17
+ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved.
18
18
  </objective>
19
19
 
20
20
  <execution_context>
@@ -33,16 +33,22 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
33
33
 
34
34
  **User input:**
35
35
 
36
- - Version: {{version}} (e.g., "1.0", "1.1", "2.0")
36
+ - Milestone: $ARGUMENTS (optional auto-detect from PROJECT.md `## Current Milestone:` header)
37
37
  </context>
38
38
 
39
39
  <process>
40
40
 
41
41
  **Follow complete-milestone.md workflow:**
42
42
 
43
- 0. **Check for audit:**
43
+ 0. **Resolve milestone identity:**
44
44
 
45
- - Look for `.planning/v{{version}}-MILESTONE-AUDIT.md`
45
+ - If argument provided: use as milestone name, generate slug
46
+ - If no argument: parse milestone name from PROJECT.md `## Current Milestone:` header, generate slug
47
+ - If neither found: error — ask user for milestone name
48
+
49
+ 0.5. **Check for audit:**
50
+
51
+ - Look for `.planning/MILESTONE-AUDIT.md`
46
52
  - If missing or stale: recommend `/ms:audit-milestone` first
47
53
  - If audit status is `gaps_found`: recommend `/ms:plan-milestone-gaps` first
48
54
  - If audit status is `passed`: proceed to step 1
@@ -50,7 +56,7 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
50
56
  ```markdown
51
57
  ## Pre-flight Check
52
58
 
53
- {If no v{{version}}-MILESTONE-AUDIT.md:}
59
+ {If no MILESTONE-AUDIT.md:}
54
60
  ⚠ No milestone audit found. Run `/ms:audit-milestone` first to verify
55
61
  requirements coverage, cross-phase integration, and E2E flows.
56
62
 
@@ -65,7 +71,7 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
65
71
  1. **Verify readiness and gather stats:**
66
72
 
67
73
  ```bash
68
- ~/.claude/mindsystem/scripts/gather-milestone-stats.sh $PHASE_START $PHASE_END
74
+ ms-tools gather-milestone-stats $PHASE_START $PHASE_END
69
75
  ```
70
76
 
71
77
  - If NOT READY: stop and report incomplete plans
@@ -89,26 +95,26 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
89
95
 
90
96
  5. **Archive milestone:**
91
97
 
92
- - Create `.planning/milestones/v{{version}}/` directory
93
- - Create `.planning/milestones/v{{version}}/ROADMAP.md` from template
98
+ - Create `.planning/milestones/{{slug}}/` directory
99
+ - Create `.planning/milestones/{{slug}}/ROADMAP.md` from template
94
100
  - Delete ROADMAP.md
95
101
 
96
102
  6. **Archive requirements:**
97
103
 
98
- - Create `.planning/milestones/v{{version}}/REQUIREMENTS.md`
104
+ - Create `.planning/milestones/{{slug}}/REQUIREMENTS.md`
99
105
  - Mark all requirements as complete with outcomes
100
106
  - Delete `.planning/REQUIREMENTS.md`
101
107
 
102
108
  7. **Archive milestone files:**
103
109
 
104
110
  ```bash
105
- ~/.claude/mindsystem/scripts/archive-milestone-files.sh v{{version}}
111
+ ms-tools archive-milestone-files {{slug}}
106
112
  ```
107
113
 
108
114
  8. **Archive and cleanup phases:**
109
115
 
110
116
  ```bash
111
- ~/.claude/mindsystem/scripts/archive-milestone-phases.sh $PHASE_START $PHASE_END v{{version}}
117
+ ms-tools archive-milestone-phases $PHASE_START $PHASE_END {{slug}}
112
118
  ```
113
119
 
114
120
  9. **Update STATE.md:**
@@ -116,12 +122,10 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
116
122
  - Update project reference with current core value and next focus
117
123
  - Reset current position for next milestone
118
124
 
119
- 10. **Commit and tag:**
125
+ 10. **Commit:**
120
126
 
121
127
  - Stage: MILESTONES.md, PROJECT.md, STATE.md, archive files, deletions
122
- - Commit: `chore: archive v{{version}} milestone`
123
- - Tag: `git tag -a v{{version}} -m "[milestone summary]"`
124
- - Ask about pushing tag
128
+ - Commit: `chore: archive {{name}} milestone`
125
129
 
126
130
  11. **Offer next steps:**
127
131
  - `/ms:new-milestone` — discover goals and update PROJECT.md
@@ -136,10 +140,9 @@ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tag
136
140
  - PROJECT.md full evolution review completed (What This Is, Core Value, Requirements, Key Decisions, Context)
137
141
  - All shipped requirements moved to Validated in PROJECT.md
138
142
  - Key Decisions updated with outcomes
139
- - Milestone archived to `.planning/milestones/v{{version}}/ROADMAP.md`
140
- - Requirements archived to `.planning/milestones/v{{version}}/REQUIREMENTS.md`
143
+ - Milestone archived to `.planning/milestones/{{slug}}/ROADMAP.md`
144
+ - Requirements archived to `.planning/milestones/{{slug}}/REQUIREMENTS.md`
141
145
  - `.planning/REQUIREMENTS.md` deleted (fresh for next milestone)
142
- - Git tag v{{version}} created
143
146
  </success_criteria>
144
147
 
145
148
  <critical_rules>