mindsystem-cc 4.4.1 → 4.5.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/README.md +17 -7
- package/agents/ms-compounder.md +19 -7
- package/agents/ms-consolidator.md +11 -1
- package/agents/ms-designer.md +25 -47
- package/agents/ms-executor.md +1 -1
- package/agents/ms-mockup-designer.md +7 -4
- package/agents/ms-plan-checker.md +32 -27
- package/agents/ms-plan-writer.md +12 -8
- package/commands/ms/adhoc.md +11 -1
- package/commands/ms/config.md +47 -9
- package/commands/ms/design-phase.md +83 -63
- package/commands/ms/discuss-phase.md +1 -0
- package/commands/ms/doctor.md +7 -3
- package/commands/ms/execute-phase.md +1 -5
- package/commands/ms/help.md +6 -5
- package/commands/ms/remove-phase.md +7 -25
- package/commands/ms/research-phase.md +13 -0
- package/commands/ms/review-design.md +1 -1
- package/commands/ms/verify-work.md +1 -3
- package/mindsystem/references/design-directions.md +2 -2
- package/mindsystem/references/knowledge-quality.md +89 -0
- package/mindsystem/references/plan-format.md +2 -13
- package/mindsystem/references/prework-status.md +6 -32
- package/mindsystem/references/routing/next-phase-routing.md +7 -41
- package/mindsystem/references/scope-estimation.md +8 -4
- package/mindsystem/templates/config.json +6 -0
- package/mindsystem/templates/design.md +1 -1
- package/mindsystem/templates/knowledge.md +18 -3
- package/mindsystem/workflows/adhoc.md +63 -0
- package/mindsystem/workflows/discuss-phase.md +12 -0
- package/mindsystem/workflows/doctor-fixes.md +71 -0
- package/mindsystem/workflows/execute-phase.md +19 -6
- package/mindsystem/workflows/execute-plan.md +1 -7
- package/mindsystem/workflows/mockup-generation.md +1 -1
- package/mindsystem/workflows/plan-phase.md +41 -77
- package/mindsystem/workflows/verify-work.md +8 -77
- package/package.json +1 -1
- package/scripts/ms-tools.py +481 -0
- package/agents/ms-verify-fixer.md +0 -125
- package/mindsystem/workflows/transition.md +0 -460
package/README.md
CHANGED
|
@@ -29,11 +29,12 @@ Then `/ms:new-project` to initialize. See the [full walkthrough](#end-to-end-wal
|
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
|
-
## What's new in v4.
|
|
32
|
+
## What's new in v4.5
|
|
33
33
|
|
|
34
|
-
- **
|
|
35
|
-
- **
|
|
36
|
-
- **
|
|
34
|
+
- **Config-driven skill loading** — configure phase skills once via `/ms:config` instead of interactive prompts at every phase start. Loaded automatically across all workflows.
|
|
35
|
+
- **Browser verification for adhoc work** — `/ms:adhoc` now includes automated browser verification, matching `/ms:execute-phase` visual QA.
|
|
36
|
+
- **Design aesthetic exploration** — design-phase gathers actual design tokens from your codebase instead of shallow grep, producing richer context for mockups.
|
|
37
|
+
- **Plan checker respects single-plan mode** — scope observations become informational, no more suggestions to split plans you intentionally kept together.
|
|
37
38
|
|
|
38
39
|
See [CHANGELOG.md](CHANGELOG.md) for the complete history.
|
|
39
40
|
|
|
@@ -265,7 +266,7 @@ Unnecessary instructions aren't wasted space — they interfere with the ones th
|
|
|
265
266
|
|
|
266
267
|
### Browser verification
|
|
267
268
|
|
|
268
|
-
During execute-phase
|
|
269
|
+
During execute-phase and `/ms:adhoc`, web projects get automatic visual QA via [agent-browser](https://github.com/anthropics/agent-browser). A checklist is derived from execution summaries, then each route is verified with screenshots and programmatic diagnostics (console logs, JS errors, network failures). Clear mismatches get fixed inline; anything deeper is reported with screenshot evidence for verify-work. Enabled by default — disable per-project via `/ms:config`.
|
|
269
270
|
|
|
270
271
|
### Built-in code review
|
|
271
272
|
|
|
@@ -285,7 +286,7 @@ For work that's too coherent for a todo but too small for a full phase. `/ms:adh
|
|
|
285
286
|
|
|
286
287
|
### Project health
|
|
287
288
|
|
|
288
|
-
`/ms:doctor` runs
|
|
289
|
+
`/ms:doctor` runs 14 health checks: subsystem vocabulary, directory structure, milestone naming, phase archival, knowledge files, phase summaries, PLAN cleanup, CLI wrappers, API keys, phase directory naming, browser verification prerequisites, roadmap format, phase skills, version freshness. Fixes are applied in dependency order with atomic commits. Safe to run repeatedly.
|
|
289
290
|
|
|
290
291
|
### Smart routing
|
|
291
292
|
|
|
@@ -462,6 +463,15 @@ Mindsystem stores project config in `.planning/config.json`. Run `/ms:config` to
|
|
|
462
463
|
// Populated by /ms:new-project, refined by /ms:doctor.
|
|
463
464
|
"subsystems": ["auth", "api", "database"],
|
|
464
465
|
|
|
466
|
+
// Skills loaded per phase. Names match installed skill directories.
|
|
467
|
+
// Configured via /ms:config. Loaded automatically during each phase.
|
|
468
|
+
"skills": {
|
|
469
|
+
"discuss": [],
|
|
470
|
+
"design": [],
|
|
471
|
+
"research": [],
|
|
472
|
+
"plan": []
|
|
473
|
+
},
|
|
474
|
+
|
|
465
475
|
// Code review after execution. One reviewer per tier.
|
|
466
476
|
// null → falls back to "ms-code-simplifier" (default)
|
|
467
477
|
// "ms-code-reviewer" → structural: architecture and design issues
|
|
@@ -512,7 +522,7 @@ Full docs live in `/ms:help`.
|
|
|
512
522
|
| `/ms:help` | Show the full command reference |
|
|
513
523
|
| `/ms:progress` | Show where you are and what to run next |
|
|
514
524
|
| `/ms:new-project` | Initialize `.planning/` and capture project intent |
|
|
515
|
-
| `/ms:config` | Configure code reviewers, mockups, plan mode, gitignore, git remote |
|
|
525
|
+
| `/ms:config` | Configure skills, code reviewers, mockups, plan mode, gitignore, git remote |
|
|
516
526
|
| `/ms:map-codebase` | Document existing repo's stack, structure, and conventions |
|
|
517
527
|
| `/ms:research-milestone` | Milestone-scoped research saved to `.planning/MILESTONE-RESEARCH.md` |
|
|
518
528
|
| `/ms:create-roadmap` | Define requirements and create phases mapped to them |
|
package/agents/ms-compounder.md
CHANGED
|
@@ -25,6 +25,10 @@ You are a Mindsystem knowledge compounder spawned by the compound workflow to up
|
|
|
25
25
|
|
|
26
26
|
</inputs>
|
|
27
27
|
|
|
28
|
+
<references>
|
|
29
|
+
@~/.claude/mindsystem/references/knowledge-quality.md
|
|
30
|
+
</references>
|
|
31
|
+
|
|
28
32
|
<extraction_guide>
|
|
29
33
|
|
|
30
34
|
## What to Extract From Raw Changes
|
|
@@ -59,15 +63,19 @@ ls .planning/knowledge/*.md 2>/dev/null
|
|
|
59
63
|
|
|
60
64
|
Read only the files matching confirmed affected subsystems. On first run, `.planning/knowledge/` may not exist — start fresh.
|
|
61
65
|
|
|
62
|
-
## Step 3: Extract Knowledge From Changes
|
|
66
|
+
## Step 3: Classify and Extract Knowledge From Changes
|
|
67
|
+
|
|
68
|
+
Classify each change signal before extraction:
|
|
63
69
|
|
|
64
|
-
|
|
70
|
+
| Signal Type | Action |
|
|
71
|
+
|------------|--------|
|
|
72
|
+
| Decision with rationale (chose X over Y because Z) | Extract |
|
|
73
|
+
| Structural pattern (how components connect, data flows) | Extract |
|
|
74
|
+
| Non-obvious pitfall or gotcha | Extract |
|
|
75
|
+
| Code-derivable detail (schema fields, component props, config values) | Skip |
|
|
76
|
+
| Implementation description without alternative considered | Skip |
|
|
65
77
|
|
|
66
|
-
|
|
67
|
-
- **Decisions with rationale** — not just "used X" but "used X because Y"
|
|
68
|
-
- **Structural patterns** — how components connect, data flows, API contracts
|
|
69
|
-
- **Gotchas discovered** — failure modes, workarounds, non-obvious behavior
|
|
70
|
-
- **Significant file changes** — new entry points, renamed modules, deleted code
|
|
78
|
+
Apply the extraction guide to change content that passes classification. Then apply the knowledge-quality.md filtering test — drop entries that fail. For entries that pass, check existing knowledge files for cross-subsystem duplication — use `(see {subsystem})` cross-references instead of duplicating.
|
|
71
79
|
|
|
72
80
|
## Step 4: Merge Into Existing Knowledge
|
|
73
81
|
|
|
@@ -81,6 +89,8 @@ For each affected subsystem, edit the knowledge file to reflect current state:
|
|
|
81
89
|
|
|
82
90
|
Use `Edit` for existing files — targeted changes preserve content you haven't inspected. Use `Write` only for new files (subsystem has no knowledge file yet).
|
|
83
91
|
|
|
92
|
+
While merging, review the touched file's existing entries through the same quality gate. Remove entries that are now code-derivable, superseded by new decisions, or duplicated in another subsystem's knowledge file. This is opportunistic maintenance during normal writes, not a full audit.
|
|
93
|
+
|
|
84
94
|
## Step 5: Update Knowledge Files and Return Report
|
|
85
95
|
|
|
86
96
|
```bash
|
|
@@ -142,4 +152,6 @@ If changes suggest a subsystem not in the confirmed list, note it as a proposal
|
|
|
142
152
|
- [ ] Report returned with update counts
|
|
143
153
|
- [ ] Empty sections omitted from knowledge files
|
|
144
154
|
- [ ] Existing knowledge files read for affected subsystems only
|
|
155
|
+
- [ ] Extracted entries pass the knowledge-quality.md filtering test
|
|
156
|
+
- [ ] No cross-subsystem duplication (cross-references used instead)
|
|
145
157
|
</success_criteria>
|
|
@@ -41,6 +41,10 @@ You are a Mindsystem knowledge consolidator spawned by execute-phase after plan
|
|
|
41
41
|
|
|
42
42
|
</inputs>
|
|
43
43
|
|
|
44
|
+
<references>
|
|
45
|
+
@~/.claude/mindsystem/references/knowledge-quality.md
|
|
46
|
+
</references>
|
|
47
|
+
|
|
44
48
|
<extraction_guide>
|
|
45
49
|
|
|
46
50
|
## What to Extract Per Artifact
|
|
@@ -68,7 +72,7 @@ You are a Mindsystem knowledge consolidator spawned by execute-phase after plan
|
|
|
68
72
|
| DESIGN Content | Target Knowledge Section |
|
|
69
73
|
|----------------|------------------------|
|
|
70
74
|
| Wireframe layouts, inline annotations | Design |
|
|
71
|
-
| Design
|
|
75
|
+
| Design reasoning (why this approach, not pixel values) | Design |
|
|
72
76
|
| Behavior notes, interaction patterns | Design |
|
|
73
77
|
| States tables, platform hints | Design |
|
|
74
78
|
|
|
@@ -135,6 +139,8 @@ Apply the extraction guide to each artifact:
|
|
|
135
139
|
|
|
136
140
|
Extract knowledge, not descriptions. "Using React" is not knowledge. "Using React over Vue because of ecosystem maturity and team familiarity" is knowledge.
|
|
137
141
|
|
|
142
|
+
Apply the knowledge-quality.md filtering test to each extracted entry before assigning it to a subsystem. Drop entries that fail. For entries that pass, check existing knowledge files for cross-subsystem duplication — use `(see {subsystem})` cross-references instead of duplicating.
|
|
143
|
+
|
|
138
144
|
## Step 6: Merge Into Knowledge Files
|
|
139
145
|
|
|
140
146
|
For each affected subsystem, edit the knowledge file to reflect current state:
|
|
@@ -147,6 +153,8 @@ For each affected subsystem, edit the knowledge file to reflect current state:
|
|
|
147
153
|
|
|
148
154
|
Use `Edit` for existing files — targeted changes preserve content you haven't inspected. Use `Write` only for new files (subsystem has no knowledge file yet).
|
|
149
155
|
|
|
156
|
+
While merging, review the touched file's existing entries through the same quality gate. Remove entries that are now code-derivable, superseded by new decisions, or duplicated in another subsystem's knowledge file. This is opportunistic maintenance during normal writes, not a full audit.
|
|
157
|
+
|
|
150
158
|
## Step 7: Update Knowledge Files
|
|
151
159
|
|
|
152
160
|
```bash
|
|
@@ -225,5 +233,7 @@ Use `+N` for new entries added, `updated` for sections rewritten with changes, `
|
|
|
225
233
|
- [ ] Empty sections omitted from knowledge files
|
|
226
234
|
- [ ] PLAN.md files deleted from phase directory
|
|
227
235
|
- [ ] CONTEXT.md, DESIGN.md, RESEARCH.md, SUMMARY.md preserved
|
|
236
|
+
- [ ] Extracted entries pass the knowledge-quality.md filtering test
|
|
237
|
+
- [ ] No cross-subsystem duplication (cross-references used instead)
|
|
228
238
|
- [ ] No commits made
|
|
229
239
|
</success_criteria>
|
package/agents/ms-designer.md
CHANGED
|
@@ -15,7 +15,7 @@ You are spawned by:
|
|
|
15
15
|
Your job: Transform user vision into concrete, implementable design specifications that prevent generic AI output and ensure professional-grade interfaces.
|
|
16
16
|
|
|
17
17
|
**Core responsibilities:**
|
|
18
|
-
-
|
|
18
|
+
- Parse existing project aesthetic from `<existing_aesthetic>` block
|
|
19
19
|
- Apply quality-forcing patterns (commercial benchmark, pre-emptive criticism, self-review)
|
|
20
20
|
- Create ASCII wireframes with inline annotations (token refs, spacing, dimensions, component names)
|
|
21
21
|
- Specify component states, non-obvious behaviors, and implementation hints per screen
|
|
@@ -55,22 +55,18 @@ Your job: Transform user vision into concrete, implementable design specificatio
|
|
|
55
55
|
| `## What Must Be Nailed` | Non-negotiables — design MUST support these |
|
|
56
56
|
| `## Specific Ideas` | References to existing products — learn from these |
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
**`<existing_aesthetic>`** — Project visual identity from orchestrator
|
|
59
59
|
|
|
60
60
|
| Element | How You Use It |
|
|
61
61
|
|---------|----------------|
|
|
62
|
-
| Color palette | Use exact values
|
|
63
|
-
|
|
|
64
|
-
| Spacing
|
|
65
|
-
|
|
|
62
|
+
| Color palette | Use exact values — don't deviate |
|
|
63
|
+
| Typography | Match font families and hierarchy |
|
|
64
|
+
| Spacing scale | Follow established scale |
|
|
65
|
+
| Component inventory | Reference existing components, harmonize new ones |
|
|
66
|
+
| Layout conventions | Follow established patterns |
|
|
67
|
+
| Platform | Target platform conventions |
|
|
66
68
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
| Discovery | How You Use It |
|
|
70
|
-
|-----------|----------------|
|
|
71
|
-
| Existing components | Design new components to harmonize |
|
|
72
|
-
| Layout patterns | Follow established structure conventions |
|
|
73
|
-
| Interaction patterns | Match existing behaviors |
|
|
69
|
+
If the block states "No existing aesthetic" → design fresh with platform conventions.
|
|
74
70
|
|
|
75
71
|
**Mockup direction** (if mockups were generated) — Chosen visual direction
|
|
76
72
|
|
|
@@ -85,12 +81,11 @@ Your job: Transform user vision into concrete, implementable design specificatio
|
|
|
85
81
|
## Context Priority
|
|
86
82
|
|
|
87
83
|
When sources conflict, follow this priority:
|
|
88
|
-
1.
|
|
89
|
-
2. mockup_direction (chosen visual direction from HTML mockups)
|
|
84
|
+
1. `<existing_aesthetic>` (project aesthetic — always trust)
|
|
85
|
+
2. `<mockup_direction>` (chosen visual direction from HTML mockups)
|
|
90
86
|
3. CONTEXT.md user decisions (explicit user choices)
|
|
91
|
-
4.
|
|
92
|
-
5.
|
|
93
|
-
6. Platform conventions (iOS HIG, Material, web standards)
|
|
87
|
+
4. PROJECT.md guidance (product-level direction)
|
|
88
|
+
5. Platform conventions (iOS HIG, Material, web standards)
|
|
94
89
|
</upstream_input>
|
|
95
90
|
|
|
96
91
|
<quality_forcing>
|
|
@@ -212,42 +207,25 @@ Parse the context provided by the orchestrator:
|
|
|
212
207
|
- Extract phase requirements from ROADMAP.md section
|
|
213
208
|
- Extract user vision from CONTEXT.md section (if provided)
|
|
214
209
|
- Extract mockup direction (if provided) — user's chosen visual approach from HTML mockup evaluation. Use as primary layout/component guide.
|
|
215
|
-
- Note existing aesthetic from
|
|
216
|
-
- Note codebase patterns from analysis (if provided)
|
|
217
|
-
|
|
218
|
-
## Step 2: Check for Project UI Skill
|
|
219
|
-
|
|
220
|
-
If the orchestrator indicated a project UI skill exists:
|
|
221
|
-
- This is your AUTHORITATIVE source for existing patterns
|
|
222
|
-
- Use exact color values — don't deviate
|
|
223
|
-
- Reference existing components by name
|
|
224
|
-
- Follow the established spacing scale
|
|
225
|
-
- Match existing typography hierarchy
|
|
226
|
-
|
|
227
|
-
If no skill exists, proceed with codebase analysis or fresh design.
|
|
228
|
-
|
|
229
|
-
## Step 3: Analyze Codebase for Existing Patterns
|
|
210
|
+
- Note existing aesthetic from `<existing_aesthetic>` block
|
|
230
211
|
|
|
231
|
-
|
|
232
|
-
- Note existing color patterns
|
|
233
|
-
- Identify component naming conventions
|
|
234
|
-
- Understand layout patterns in use
|
|
235
|
-
- Document for harmonization
|
|
212
|
+
## Step 2: Parse Existing Aesthetic
|
|
236
213
|
|
|
237
|
-
|
|
238
|
-
-
|
|
214
|
+
Read the `<existing_aesthetic>` block from the orchestrator:
|
|
215
|
+
- If it contains concrete values (hex colors, font families, spacing scales) → use them as authoritative constraints
|
|
216
|
+
- If it states "No existing aesthetic" → design fresh with platform conventions
|
|
239
217
|
|
|
240
|
-
## Step
|
|
218
|
+
## Step 3: Establish Design Foundation
|
|
241
219
|
|
|
242
220
|
Based on context chain, determine:
|
|
243
221
|
- **Platform(s):** web, mobile, or both
|
|
244
|
-
- **Aesthetic source:**
|
|
222
|
+
- **Aesthetic source:** existing aesthetic / fresh
|
|
245
223
|
- **Color direction:** warm, cool, monochromatic, vibrant (with specific values)
|
|
246
224
|
- **Density:** tight, comfortable, spacious
|
|
247
225
|
|
|
248
226
|
Capture these in the Design Direction section and populate the Design Tokens table.
|
|
249
227
|
|
|
250
|
-
## Step
|
|
228
|
+
## Step 4: Design Screens
|
|
251
229
|
|
|
252
230
|
For each screen in the phase:
|
|
253
231
|
1. Create ASCII wireframe with inline annotations (token refs, spacing values, dimensions, component names)
|
|
@@ -257,7 +235,7 @@ For each screen in the phase:
|
|
|
257
235
|
|
|
258
236
|
Apply quality-forcing patterns — check for generic output after each screen.
|
|
259
237
|
|
|
260
|
-
## Step
|
|
238
|
+
## Step 5: Self-Review and Refine
|
|
261
239
|
|
|
262
240
|
Run through the quality-forcing checklist:
|
|
263
241
|
- [ ] Does the color palette have character or is it generic?
|
|
@@ -267,7 +245,7 @@ Run through the quality-forcing checklist:
|
|
|
267
245
|
|
|
268
246
|
If any answer is "generic/arbitrary/default/no" → refine before returning.
|
|
269
247
|
|
|
270
|
-
## Step
|
|
248
|
+
## Step 6: Mathematical Validation (BLOCKING)
|
|
271
249
|
|
|
272
250
|
Run through validation rules from `<validation_rules>` section:
|
|
273
251
|
|
|
@@ -281,7 +259,7 @@ Run through validation rules from `<validation_rules>` section:
|
|
|
281
259
|
- Re-run validation
|
|
282
260
|
- Do NOT proceed until all checks pass
|
|
283
261
|
|
|
284
|
-
## Step
|
|
262
|
+
## Step 7: Write DESIGN.md
|
|
285
263
|
|
|
286
264
|
Write to: `.planning/phases/{phase}-{slug}/{phase}-DESIGN.md`
|
|
287
265
|
|
|
@@ -321,7 +299,7 @@ When design finishes successfully:
|
|
|
321
299
|
|
|
322
300
|
**Phase:** [X]: [Name]
|
|
323
301
|
**Platform:** [web / mobile / both]
|
|
324
|
-
**Aesthetic:** [source: project
|
|
302
|
+
**Aesthetic:** [source: project design skill / codebase extraction / fresh]
|
|
325
303
|
|
|
326
304
|
### Summary
|
|
327
305
|
|
package/agents/ms-executor.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: ms-executor
|
|
3
3
|
description: Executes Mindsystem plans with atomic commits, deviation handling, and summary creation. Spawned by execute-phase orchestrator.
|
|
4
4
|
model: opus
|
|
5
|
-
tools: Read, Write, Edit, Bash, Grep, Glob,
|
|
5
|
+
tools: Read, Write, Edit, Bash, Grep, Glob, AskUserQuestion
|
|
6
6
|
color: yellow
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -39,14 +39,17 @@ The orchestrator provides these context blocks in your prompt:
|
|
|
39
39
|
|
|
40
40
|
**`<feature_grounding>`** — The specific screen/feature being mocked up
|
|
41
41
|
|
|
42
|
-
**`<existing_aesthetic>`**
|
|
42
|
+
**`<existing_aesthetic>`** — Project visual identity from orchestrator
|
|
43
43
|
|
|
44
44
|
| Element | How You Use It |
|
|
45
45
|
|---------|----------------|
|
|
46
|
-
| Color palette | Use
|
|
46
|
+
| Color palette | Use exact values — do NOT deviate |
|
|
47
47
|
| Typography | Match font families and hierarchy |
|
|
48
|
-
| Spacing
|
|
49
|
-
| Component
|
|
48
|
+
| Spacing scale | Follow established scale |
|
|
49
|
+
| Component inventory | Match border-radius, shadow patterns |
|
|
50
|
+
| Layout conventions | Follow established patterns |
|
|
51
|
+
|
|
52
|
+
If the block states "No existing aesthetic" → propose a fresh palette per design direction.
|
|
50
53
|
|
|
51
54
|
**`<mockup_template>`** — The HTML scaffold to build on
|
|
52
55
|
|
|
@@ -7,15 +7,13 @@ color: green
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<role>
|
|
10
|
-
You are a Mindsystem plan checker. You verify that plans WILL achieve the phase goal
|
|
10
|
+
You are a Mindsystem plan checker. You verify that plans WILL achieve the phase goal — starting from what the phase SHOULD deliver and working backward to verify plans address it.
|
|
11
11
|
|
|
12
12
|
You are spawned by:
|
|
13
13
|
|
|
14
14
|
- `/ms:plan-phase` orchestrator (after planner creates PLAN.md files)
|
|
15
15
|
- Re-verification (after planner revises based on your feedback)
|
|
16
16
|
|
|
17
|
-
Your job: Goal-backward verification of PLANS before execution. Start from what the phase SHOULD deliver, verify the plans address it.
|
|
18
|
-
|
|
19
17
|
**Critical mindset:** Plans describe intent. You verify they deliver. A plan can have all tasks filled in but still miss the goal if:
|
|
20
18
|
- Key requirements have no tasks
|
|
21
19
|
- Tasks exist but don't actually achieve the requirement
|
|
@@ -185,6 +183,10 @@ issue:
|
|
|
185
183
|
|
|
186
184
|
**Question:** Will plans complete within context budget?
|
|
187
185
|
|
|
186
|
+
**Single-plan mode** (`MULTI_PLAN=false`): The orchestrator already determined all tasks fit in one plan. Do NOT suggest splitting into multiple plans — that contradicts the user's configuration. Assess budget for informational purposes only. Use severity "info" instead of "warning". Fix hints should suggest reordering complex work earlier (while attention is highest) or simplifying scope, never splitting.
|
|
187
|
+
|
|
188
|
+
**Multi-plan mode** (`MULTI_PLAN=true`): Full scope assessment with split suggestions.
|
|
189
|
+
|
|
188
190
|
**Process:**
|
|
189
191
|
1. For each `### ` subsection (change), classify its weight:
|
|
190
192
|
- **Light (5%):** Config changes, localization keys, renaming, simple field additions, pattern-copying with parameter substitution
|
|
@@ -193,21 +195,19 @@ issue:
|
|
|
193
195
|
2. Sum estimated budget per plan (target: 25-45%)
|
|
194
196
|
3. Check structural signals
|
|
195
197
|
|
|
196
|
-
**Thresholds
|
|
197
|
-
| Metric | Target | Warning |
|
|
198
|
-
|
|
199
|
-
| Estimated budget/plan | 25-45% | >50% |
|
|
200
|
-
| Files per single change | 1-3 | 8+ |
|
|
198
|
+
**Thresholds:**
|
|
199
|
+
| Metric | Target | Warning (multi-plan) | Info (single-plan) |
|
|
200
|
+
|--------|--------|----------------------|---------------------|
|
|
201
|
+
| Estimated budget/plan | 25-45% | >50% | >50% |
|
|
202
|
+
| Files per single change | 1-3 | 8+ | 8+ |
|
|
201
203
|
|
|
202
204
|
**Raw change count is NOT a threshold.** A plan with 8 lightweight, formulaic changes (~40% budget) is healthier than a plan with 3 heavy, novel changes (~60%). Assess complexity and budget, not count.
|
|
203
205
|
|
|
204
|
-
**
|
|
205
|
-
-
|
|
206
|
-
-
|
|
207
|
-
- Multiple unrelated subsystems crammed into one plan
|
|
208
|
-
- Novel/complex work appearing late in a long change sequence (context fatigue risks lower attention)
|
|
206
|
+
**Additional signals:**
|
|
207
|
+
- Multiple unrelated subsystems crammed into one plan (multi-plan: warning, single-plan: info)
|
|
208
|
+
- Novel/complex work appearing late in the change sequence — context fatigue risks lower attention (multi-plan: suggest splitting, single-plan: suggest reordering earlier)
|
|
209
209
|
|
|
210
|
-
**Example issue:**
|
|
210
|
+
**Example issue (multi-plan):**
|
|
211
211
|
```yaml
|
|
212
212
|
issue:
|
|
213
213
|
dimension: scope_sanity
|
|
@@ -220,6 +220,19 @@ issue:
|
|
|
220
220
|
fix_hint: "Move change 3 (complex state machine) to a separate plan"
|
|
221
221
|
```
|
|
222
222
|
|
|
223
|
+
**Example issue (single-plan):**
|
|
224
|
+
```yaml
|
|
225
|
+
issue:
|
|
226
|
+
dimension: scope_sanity
|
|
227
|
+
severity: info
|
|
228
|
+
description: "Plan 01 estimated at ~55% budget - 3 heavy changes with novel state management"
|
|
229
|
+
plan: "01"
|
|
230
|
+
metrics:
|
|
231
|
+
estimated_budget: "55%"
|
|
232
|
+
heavy_changes: 3
|
|
233
|
+
fix_hint: "Consider moving complex changes earlier in the sequence for peak attention, or simplifying scope"
|
|
234
|
+
```
|
|
235
|
+
|
|
223
236
|
## Dimension 6: Verification Derivation
|
|
224
237
|
|
|
225
238
|
**Question:** Do Must-Haves trace back to phase goal?
|
|
@@ -309,9 +322,12 @@ grep -A 10 "Phase ${PADDED_PHASE}" .planning/ROADMAP.md | head -15
|
|
|
309
322
|
|
|
310
323
|
# Get phase brief if exists
|
|
311
324
|
ls "$PHASE_DIR"/*-BRIEF.md 2>/dev/null
|
|
325
|
+
|
|
326
|
+
# Check plan mode
|
|
327
|
+
MULTI_PLAN=$(ms-tools config-get multi_plan --default "false")
|
|
312
328
|
```
|
|
313
329
|
|
|
314
|
-
Extract phase goal, decompose into requirements, note phase context from BRIEF.md if present.
|
|
330
|
+
Extract phase goal, decompose into requirements, note phase context from BRIEF.md if present. Note the `MULTI_PLAN` value for Dimension 5 (Scope Sanity).
|
|
315
331
|
|
|
316
332
|
## Step 2: Load All Plans
|
|
317
333
|
|
|
@@ -348,7 +364,7 @@ Run Dimensions 1-7 from `<verification_dimensions>` against the loaded plans. Bu
|
|
|
348
364
|
- Circular dependencies or file conflicts in same wave
|
|
349
365
|
|
|
350
366
|
**warning** - Should fix, execution may work
|
|
351
|
-
- Estimated plan budget >50%
|
|
367
|
+
- Estimated plan budget >50% (multi-plan mode only)
|
|
352
368
|
- Implementation-focused truths
|
|
353
369
|
- Minor wiring missing
|
|
354
370
|
- Novel/complex changes appearing late in change sequence
|
|
@@ -446,17 +462,6 @@ When issues need fixing:
|
|
|
446
462
|
- Plan: {plan}
|
|
447
463
|
- Fix: {fix_hint}
|
|
448
464
|
|
|
449
|
-
### Structured Issues
|
|
450
|
-
|
|
451
|
-
```yaml
|
|
452
|
-
issues:
|
|
453
|
-
- plan: "01"
|
|
454
|
-
dimension: "change_completeness"
|
|
455
|
-
severity: "blocker"
|
|
456
|
-
description: "Change 2 has no corresponding verification entry"
|
|
457
|
-
fix_hint: "Add verification command"
|
|
458
|
-
```
|
|
459
|
-
|
|
460
465
|
### Recommendation
|
|
461
466
|
|
|
462
467
|
{N} blocker(s) require revision. Returning to planner with feedback.
|
package/agents/ms-plan-writer.md
CHANGED
|
@@ -16,7 +16,7 @@ Your job: Transform task lists into PLAN.md files following the orchestrator's p
|
|
|
16
16
|
**What you receive:**
|
|
17
17
|
- Task list with needs/creates/tdd_candidate flags
|
|
18
18
|
- Proposed grouping from orchestrator (plan boundaries, wave assignments, budget estimates)
|
|
19
|
-
-
|
|
19
|
+
- Skill context with implementation conventions to weave into plan content
|
|
20
20
|
- Phase context (number, name, goal, directory, requirements)
|
|
21
21
|
- Project references (paths to STATE, ROADMAP, CONTEXT, prior summaries)
|
|
22
22
|
- Relevant learnings from past work (debug resolutions, adhoc insights, established patterns, prior decisions, curated cross-milestone learnings)
|
|
@@ -90,9 +90,9 @@ The orchestrator provides structured XML:
|
|
|
90
90
|
</plan>
|
|
91
91
|
</proposed_grouping>
|
|
92
92
|
|
|
93
|
-
<
|
|
94
|
-
|
|
95
|
-
</
|
|
93
|
+
<skill_context>
|
|
94
|
+
All API endpoints must use Zod validation on input. Use server actions for mutations, not API routes. Error boundaries wrap each page segment. CSS modules for styling, no Tailwind.
|
|
95
|
+
</skill_context>
|
|
96
96
|
|
|
97
97
|
<learnings>
|
|
98
98
|
<learning type="debug" source=".planning/debug/resolved/n-plus-one-queries.md">Missing eager loading on association chains — fix: Added includes() for all relationship traversals</learning>
|
|
@@ -180,7 +180,6 @@ The orchestrator proposed plan boundaries collaboratively with the user. Start f
|
|
|
180
180
|
- **File conflicts:** Two tasks in the same parallel wave that modify the same file
|
|
181
181
|
- **Circular dependencies:** Plan A needs Plan B and Plan B needs Plan A
|
|
182
182
|
- **Missing dependency chains:** A task needs an artifact from another plan but isn't sequenced after it
|
|
183
|
-
- **TDD isolation:** Tasks marked `tdd_candidate` must be in dedicated plans
|
|
184
183
|
|
|
185
184
|
**3. Apply grouping:**
|
|
186
185
|
- If validation passes → use proposed boundaries as-is
|
|
@@ -232,7 +231,7 @@ For each plan, create `.planning/phases/{phase_dir}/{phase}-{plan}-PLAN.md`:
|
|
|
232
231
|
```markdown
|
|
233
232
|
# Plan {NN}: {Descriptive Title}
|
|
234
233
|
|
|
235
|
-
**Subsystem:** {subsystem_hint} | **Type:** tdd
|
|
234
|
+
**Subsystem:** {subsystem_hint} | **Type:** tdd
|
|
236
235
|
|
|
237
236
|
## Context
|
|
238
237
|
{Why this work exists. Approach chosen and WHY.}
|
|
@@ -260,8 +259,6 @@ For each plan, create `.planning/phases/{phase_dir}/{phase}-{plan}-PLAN.md`:
|
|
|
260
259
|
|
|
261
260
|
**Format rules:**
|
|
262
261
|
- Omit `| **Type:** tdd` when type is execute (type defaults to execute)
|
|
263
|
-
- Omit `| **Skills:** ...` when no skills were confirmed (confirmed_skills is "none" or empty)
|
|
264
|
-
- Include `| **Skills:** skill-a, skill-b` when skills were confirmed — apply to ALL plans in the phase
|
|
265
262
|
- Plans carry no `<execution_context>`, `<context>`, or @-references — the executor loads its own workflow and project files via its agent definition
|
|
266
263
|
- No `<tasks>`, `<verification>`, `<success_criteria>`, `<output>` XML containers
|
|
267
264
|
|
|
@@ -282,6 +279,13 @@ Rules:
|
|
|
282
279
|
- Phrase as imperative directives, not history
|
|
283
280
|
- If no learnings match a change, add nothing
|
|
284
281
|
|
|
282
|
+
**Skill context integration:** When expanding tasks to ## Changes subsections, apply conventions from `<skill_context>` as design constraints. Skill conventions should influence:
|
|
283
|
+
- Code structure decisions (patterns to follow, anti-patterns to avoid)
|
|
284
|
+
- Framework usage (correct APIs, idiomatic approaches)
|
|
285
|
+
- Quality criteria (what "good" looks like in this domain)
|
|
286
|
+
|
|
287
|
+
Do not cite skills explicitly — weave conventions naturally into implementation details. Skill context shapes HOW changes are described, not WHAT changes are made.
|
|
288
|
+
|
|
285
289
|
**TDD plans:** When type is tdd, use RED/GREEN/REFACTOR structure in ## Changes:
|
|
286
290
|
|
|
287
291
|
```markdown
|
package/commands/ms/adhoc.md
CHANGED
|
@@ -9,6 +9,7 @@ allowed-tools:
|
|
|
9
9
|
- Bash
|
|
10
10
|
- Glob
|
|
11
11
|
- Grep
|
|
12
|
+
- Skill
|
|
12
13
|
- Task
|
|
13
14
|
- AskUserQuestion
|
|
14
15
|
---
|
|
@@ -52,8 +53,12 @@ AskUserQuestion: always validate assumptions; add questions only for genuine beh
|
|
|
52
53
|
Guardrail: never ask about technical approach, error handling, or implementation details — only user intent, expected behavior, scope boundaries.
|
|
53
54
|
</step>
|
|
54
55
|
|
|
56
|
+
<step name="select_and_load_skills">
|
|
57
|
+
Smart skill selection from all configured skills — see adhoc workflow for full logic.
|
|
58
|
+
</step>
|
|
59
|
+
|
|
55
60
|
<step name="spawn_plan_writer">
|
|
56
|
-
Create execution directory, assemble context, spawn ms-adhoc-planner.
|
|
61
|
+
Create execution directory, assemble context (including skill_context if selected), spawn ms-adhoc-planner.
|
|
57
62
|
</step>
|
|
58
63
|
|
|
59
64
|
<step name="review_plan">
|
|
@@ -65,6 +70,10 @@ AskUserQuestion: approve, request edits, or abort.
|
|
|
65
70
|
Spawn ms-executor with plan path and SUMMARY output path.
|
|
66
71
|
</step>
|
|
67
72
|
|
|
73
|
+
<step name="browser_verification">
|
|
74
|
+
Run `ms-tools browser-check`. If READY, load browser-verification reference, derive journeys from adhoc SUMMARY, spawn ms-browser-verifier. If MISSING_DEPS, ask user. If SKIP, proceed silently.
|
|
75
|
+
</step>
|
|
76
|
+
|
|
68
77
|
<step name="code_review">
|
|
69
78
|
Per config.json `code_review.adhoc` setting — spawn code review agent or skip.
|
|
70
79
|
</step>
|
|
@@ -86,6 +95,7 @@ Commit artifacts, update STATE.md, report completion. When ticket detected, fina
|
|
|
86
95
|
<success_criteria>
|
|
87
96
|
- [ ] Knowledge files updated via ms-consolidator
|
|
88
97
|
- [ ] STATE.md "Recent Adhoc Work" section updated with new entry
|
|
98
|
+
- [ ] Browser verification executed (or skipped per config/prerequisites)
|
|
89
99
|
- [ ] Code review executed (or explicitly skipped per config)
|
|
90
100
|
- [ ] Patch file generated if adhoc commits exist
|
|
91
101
|
- [ ] `ms-tools set-last-command` called with adhoc command
|
package/commands/ms/config.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ms:config
|
|
3
|
-
description: Configure Mindsystem preferences — code reviewers, mockups, browser verification, plan mode, gitignore, git remote, task tracker
|
|
3
|
+
description: Configure Mindsystem preferences — skills, code reviewers, mockups, browser verification, plan mode, gitignore, git remote, task tracker
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -12,7 +12,7 @@ allowed-tools:
|
|
|
12
12
|
|
|
13
13
|
Configure Mindsystem preferences for the current project.
|
|
14
14
|
|
|
15
|
-
Manages code reviewer agents, mockup preferences, browser verification, plan mode, .gitignore patterns for `.planning/` artifacts, git remote setup, and task tracker integration. Run anytime to reconfigure — idempotent.
|
|
15
|
+
Manages per-phase skills, code reviewer agents, mockup preferences, browser verification, plan mode, .gitignore patterns for `.planning/` artifacts, git remote setup, and task tracker integration. Run anytime to reconfigure — idempotent.
|
|
16
16
|
|
|
17
17
|
</objective>
|
|
18
18
|
|
|
@@ -42,7 +42,7 @@ git remote -v 2>/dev/null || echo "NO_REMOTE"
|
|
|
42
42
|
|
|
43
43
|
<step name="route">
|
|
44
44
|
|
|
45
|
-
**Setup mode:** Proceed through all setting steps sequentially (git_remote → code_reviewers → gitignore_patterns → mockup_preferences → browser_verification → multi_plan → task_tracker). Then go to `validation_summary`.
|
|
45
|
+
**Setup mode:** Proceed through all setting steps sequentially (git_remote → skills → code_reviewers → gitignore_patterns → mockup_preferences → browser_verification → multi_plan → task_tracker). Then go to `validation_summary`.
|
|
46
46
|
|
|
47
47
|
**Edit mode:** Display all current settings with values from config.json, git remote, and .gitignore:
|
|
48
48
|
|
|
@@ -50,12 +50,13 @@ git remote -v 2>/dev/null || echo "NO_REMOTE"
|
|
|
50
50
|
## Current Settings
|
|
51
51
|
|
|
52
52
|
1. **Git remote** — {remote URL or "none configured"}
|
|
53
|
-
2. **
|
|
54
|
-
3. **
|
|
55
|
-
4. **
|
|
56
|
-
5. **
|
|
57
|
-
6. **
|
|
58
|
-
7. **
|
|
53
|
+
2. **Skills** — discuss: {list}, design: {list}, research: {list}, plan: {list}
|
|
54
|
+
3. **Code reviewers** — adhoc: {value or "not set"}, phase: {value or "not set"}, milestone: {value or "not set"}
|
|
55
|
+
4. **Gitignore** — {current .planning/ patterns or "no .planning/ patterns"}
|
|
56
|
+
5. **Mockups** — open: {auto / ask / off}
|
|
57
|
+
6. **Browser verification** — {enabled / disabled}, web project: {yes / no / auto-detect}
|
|
58
|
+
7. **Plan mode** — {single plan (default) / multi-plan}
|
|
59
|
+
8. **Task tracker** — {type + cli path, or "none"}
|
|
59
60
|
```
|
|
60
61
|
|
|
61
62
|
Ask: "Which settings would you like to change? Enter the numbers (e.g. 1, 3, 5), 'all' to reconfigure everything, or 'done' if everything looks good."
|
|
@@ -89,6 +90,42 @@ If "Create with gh CLI":
|
|
|
89
90
|
|
|
90
91
|
</step>
|
|
91
92
|
|
|
93
|
+
<step name="skills">
|
|
94
|
+
|
|
95
|
+
Read current values:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
DISCUSS=$(ms-tools config-get skills.discuss --default "[]")
|
|
99
|
+
DESIGN=$(ms-tools config-get skills.design --default "[]")
|
|
100
|
+
RESEARCH=$(ms-tools config-get skills.research --default "[]")
|
|
101
|
+
PLAN=$(ms-tools config-get skills.plan --default "[]")
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Explain: "Skills are loaded automatically during each phase to provide domain-specific context — UI conventions, code patterns, framework best practices. Configure skill names per phase."
|
|
105
|
+
|
|
106
|
+
**Phase explanations (show all 4):**
|
|
107
|
+
- **discuss** — Informs product analysis and collaborative questioning
|
|
108
|
+
- **design** — Provides aesthetic patterns (colors, typography, spacing) for mockups and design specs. Also used by review-design
|
|
109
|
+
- **research** — Adds domain context to research synthesis
|
|
110
|
+
- **plan** — Highest impact: conventions get encoded directly into plans, which executors follow at ~95% fidelity
|
|
111
|
+
|
|
112
|
+
For each phase, use AskUserQuestion:
|
|
113
|
+
- header: "Skills: {phase}"
|
|
114
|
+
- question: "Which skills should load during {phase}? (skill names, comma-separated)"
|
|
115
|
+
- options:
|
|
116
|
+
- "None" — Skip skills for this phase
|
|
117
|
+
- "Enter skill names" — free-text field for comma-separated skill names
|
|
118
|
+
|
|
119
|
+
If user enters skill names, parse comma-separated list and set:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
ms-tools config-set skills.{phase} --json '["skill-a", "skill-b"]'
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
If "None": set empty array `[]`.
|
|
126
|
+
|
|
127
|
+
</step>
|
|
128
|
+
|
|
92
129
|
<step name="code_reviewers">
|
|
93
130
|
|
|
94
131
|
Show current code_review values from config.json (if loaded).
|
|
@@ -301,6 +338,7 @@ Show final config state:
|
|
|
301
338
|
```
|
|
302
339
|
Configuration updated:
|
|
303
340
|
|
|
341
|
+
- Skills: discuss: {list}, design: {list}, research: {list}, plan: {list}
|
|
304
342
|
- Code reviewers: [adhoc / phase / milestone values]
|
|
305
343
|
- Mockup open: [auto / ask / off]
|
|
306
344
|
- Browser verification: [enabled / disabled]
|