maxsimcli 3.10.3 → 3.12.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 (142) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/assets/CHANGELOG.md +26 -0
  3. package/dist/assets/dashboard/client/assets/index-CxFKStBk.css +32 -0
  4. package/dist/assets/dashboard/client/assets/{index-CZ8WC97G.js → index-wtQDvXzr.js} +64 -64
  5. package/dist/assets/dashboard/client/index.html +2 -2
  6. package/dist/assets/dashboard/server.js +5 -1
  7. package/dist/assets/templates/agents/AGENTS.md +82 -0
  8. package/dist/assets/templates/commands/maxsim/settings.md +1 -1
  9. package/dist/assets/templates/skills/code-review/SKILL.md +151 -0
  10. package/dist/assets/templates/skills/memory-management/SKILL.md +174 -0
  11. package/dist/assets/templates/skills/simplify/SKILL.md +137 -0
  12. package/dist/assets/templates/skills/using-maxsim/SKILL.md +115 -0
  13. package/dist/assets/templates/templates/config.json +1 -1
  14. package/dist/assets/templates/workflows/add-tests.md +3 -3
  15. package/dist/assets/templates/workflows/complete-milestone.md +1 -1
  16. package/dist/assets/templates/workflows/execute-phase.md +4 -14
  17. package/dist/assets/templates/workflows/execute-plan.md +10 -0
  18. package/dist/assets/templates/workflows/init-existing.md +7 -3
  19. package/dist/assets/templates/workflows/new-milestone.md +4 -0
  20. package/dist/assets/templates/workflows/new-project.md +6 -2
  21. package/dist/assets/templates/workflows/plan-phase.md +2 -2
  22. package/dist/assets/templates/workflows/settings.md +8 -4
  23. package/dist/assets/templates/workflows/verify-work.md +1 -1
  24. package/dist/cli.cjs +818 -599
  25. package/dist/cli.cjs.map +1 -1
  26. package/dist/cli.js +78 -204
  27. package/dist/cli.js.map +1 -1
  28. package/dist/core/commands.d.ts +7 -0
  29. package/dist/core/commands.d.ts.map +1 -1
  30. package/dist/core/commands.js +40 -35
  31. package/dist/core/commands.js.map +1 -1
  32. package/dist/core/core.d.ts +39 -1
  33. package/dist/core/core.d.ts.map +1 -1
  34. package/dist/core/core.js +122 -47
  35. package/dist/core/core.js.map +1 -1
  36. package/dist/core/dashboard-launcher.d.ts +56 -0
  37. package/dist/core/dashboard-launcher.d.ts.map +1 -0
  38. package/dist/core/dashboard-launcher.js +243 -0
  39. package/dist/core/dashboard-launcher.js.map +1 -0
  40. package/dist/core/index.d.ts +4 -2
  41. package/dist/core/index.d.ts.map +1 -1
  42. package/dist/core/index.js +20 -2
  43. package/dist/core/index.js.map +1 -1
  44. package/dist/core/init.d.ts +2 -3
  45. package/dist/core/init.d.ts.map +1 -1
  46. package/dist/core/init.js +33 -52
  47. package/dist/core/init.js.map +1 -1
  48. package/dist/core/milestone.d.ts.map +1 -1
  49. package/dist/core/milestone.js +15 -20
  50. package/dist/core/milestone.js.map +1 -1
  51. package/dist/core/phase.d.ts +33 -0
  52. package/dist/core/phase.d.ts.map +1 -1
  53. package/dist/core/phase.js +282 -225
  54. package/dist/core/phase.js.map +1 -1
  55. package/dist/core/roadmap.d.ts.map +1 -1
  56. package/dist/core/roadmap.js +17 -18
  57. package/dist/core/roadmap.js.map +1 -1
  58. package/dist/core/state.d.ts +5 -0
  59. package/dist/core/state.d.ts.map +1 -1
  60. package/dist/core/state.js +51 -42
  61. package/dist/core/state.js.map +1 -1
  62. package/dist/core/template.d.ts.map +1 -1
  63. package/dist/core/template.js +1 -1
  64. package/dist/core/template.js.map +1 -1
  65. package/dist/core/types.d.ts +4 -4
  66. package/dist/core/types.d.ts.map +1 -1
  67. package/dist/core/types.js +1 -2
  68. package/dist/core/types.js.map +1 -1
  69. package/dist/core/verify.d.ts.map +1 -1
  70. package/dist/core/verify.js +61 -80
  71. package/dist/core/verify.js.map +1 -1
  72. package/dist/install/adapters.d.ts +15 -0
  73. package/dist/install/adapters.d.ts.map +1 -0
  74. package/dist/install/adapters.js +203 -0
  75. package/dist/install/adapters.js.map +1 -0
  76. package/dist/install/copy.d.ts +15 -0
  77. package/dist/install/copy.d.ts.map +1 -0
  78. package/dist/install/copy.js +191 -0
  79. package/dist/install/copy.js.map +1 -0
  80. package/dist/install/dashboard.d.ts +16 -0
  81. package/dist/install/dashboard.d.ts.map +1 -0
  82. package/dist/install/dashboard.js +273 -0
  83. package/dist/install/dashboard.js.map +1 -0
  84. package/dist/install/hooks.d.ts +32 -0
  85. package/dist/install/hooks.d.ts.map +1 -0
  86. package/dist/install/hooks.js +285 -0
  87. package/dist/install/hooks.js.map +1 -0
  88. package/dist/install/index.d.ts +2 -0
  89. package/dist/install/index.d.ts.map +1 -0
  90. package/dist/install/index.js +598 -0
  91. package/dist/install/index.js.map +1 -0
  92. package/dist/install/manifest.d.ts +20 -0
  93. package/dist/install/manifest.d.ts.map +1 -0
  94. package/dist/install/manifest.js +135 -0
  95. package/dist/install/manifest.js.map +1 -0
  96. package/dist/install/patches.d.ts +11 -0
  97. package/dist/install/patches.d.ts.map +1 -0
  98. package/dist/install/patches.js +136 -0
  99. package/dist/install/patches.js.map +1 -0
  100. package/dist/install/shared.d.ts +50 -0
  101. package/dist/install/shared.d.ts.map +1 -0
  102. package/dist/install/shared.js +142 -0
  103. package/dist/install/shared.js.map +1 -0
  104. package/dist/install/uninstall.d.ts +6 -0
  105. package/dist/install/uninstall.d.ts.map +1 -0
  106. package/dist/install/uninstall.js +280 -0
  107. package/dist/install/uninstall.js.map +1 -0
  108. package/dist/install.cjs +782 -705
  109. package/dist/install.cjs.map +1 -1
  110. package/dist/mcp/index.d.ts +12 -0
  111. package/dist/mcp/index.d.ts.map +1 -0
  112. package/dist/mcp/index.js +21 -0
  113. package/dist/mcp/index.js.map +1 -0
  114. package/dist/mcp/phase-tools.d.ts +13 -0
  115. package/dist/mcp/phase-tools.d.ts.map +1 -0
  116. package/dist/mcp/phase-tools.js +164 -0
  117. package/dist/mcp/phase-tools.js.map +1 -0
  118. package/dist/mcp/state-tools.d.ts +13 -0
  119. package/dist/mcp/state-tools.d.ts.map +1 -0
  120. package/dist/mcp/state-tools.js +185 -0
  121. package/dist/mcp/state-tools.js.map +1 -0
  122. package/dist/mcp/todo-tools.d.ts +13 -0
  123. package/dist/mcp/todo-tools.d.ts.map +1 -0
  124. package/dist/mcp/todo-tools.js +143 -0
  125. package/dist/mcp/todo-tools.js.map +1 -0
  126. package/dist/mcp/utils.d.ts +27 -0
  127. package/dist/mcp/utils.d.ts.map +1 -0
  128. package/dist/mcp/utils.js +82 -0
  129. package/dist/mcp/utils.js.map +1 -0
  130. package/dist/mcp-server.cjs +11806 -0
  131. package/dist/mcp-server.cjs.map +1 -0
  132. package/dist/mcp-server.d.cts +2 -0
  133. package/dist/mcp-server.d.ts +12 -0
  134. package/dist/mcp-server.d.ts.map +1 -0
  135. package/dist/mcp-server.js +31 -0
  136. package/dist/mcp-server.js.map +1 -0
  137. package/package.json +5 -3
  138. package/dist/assets/dashboard/client/assets/index-DzJChB-D.css +0 -32
  139. package/dist/install.d.ts +0 -2
  140. package/dist/install.d.ts.map +0 -1
  141. package/dist/install.js +0 -1804
  142. package/dist/install.js.map +0 -1
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: using-maxsim
3
+ description: Entry skill that establishes MAXSIM workflow rules — triggers before any action to route work through the correct MAXSIM commands, skills, and agents
4
+ ---
5
+
6
+ # Using MAXSIM
7
+
8
+ MAXSIM is a spec-driven development system. Work flows through phases, plans, and tasks — not ad-hoc coding.
9
+
10
+ **If you are about to write code without a plan, STOP. Route through MAXSIM first.**
11
+
12
+ ## The Iron Law
13
+
14
+ <HARD-GATE>
15
+ NO IMPLEMENTATION WITHOUT A PLAN.
16
+ If there is no .planning/ directory, run `/maxsim:init` first.
17
+ If there is no current phase, run `/maxsim:plan-phase` first.
18
+ If there is no PLAN.md for the current phase, run `/maxsim:plan-phase` first.
19
+ If there IS a plan, run `/maxsim:execute-phase` to execute it.
20
+ Skipping the workflow is a violation — not a shortcut.
21
+ </HARD-GATE>
22
+
23
+ ## When This Skill Triggers
24
+
25
+ This skill applies to ALL work sessions. Before starting any task:
26
+
27
+ 1. **Check for `.planning/` directory** — if missing, initialize with `/maxsim:init`
28
+ 2. **Check STATE.md** — resume from last checkpoint if one exists
29
+ 3. **Check current phase** — determine what phase is active in ROADMAP.md
30
+ 4. **Route to the correct command** based on the situation (see routing table below)
31
+
32
+ ## Routing Table
33
+
34
+ | Situation | Route To |
35
+ |-----------|----------|
36
+ | No `.planning/` directory | `/maxsim:init` |
37
+ | No ROADMAP.md or empty roadmap | `/maxsim:plan-roadmap` |
38
+ | Active phase has no PLAN.md | `/maxsim:plan-phase` |
39
+ | Active phase has PLAN.md, not started | `/maxsim:execute-phase` |
40
+ | Checkpoint exists in STATE.md | `/maxsim:resume-work` |
41
+ | Bug found during execution | `/maxsim:debug` (triggers systematic-debugging skill) |
42
+ | Phase complete, needs verification | `/maxsim:verify-phase` (triggers verification-before-completion skill) |
43
+ | Quick standalone task | `/maxsim:quick` |
44
+ | User asks for help | `/maxsim:help` |
45
+
46
+ ## Available Skills
47
+
48
+ Skills are behavioral rules that activate automatically based on context:
49
+
50
+ | Skill | Triggers When |
51
+ |-------|---------------|
52
+ | `systematic-debugging` | Any bug, test failure, or unexpected behavior encountered |
53
+ | `tdd` | Implementing any feature or bug fix (write test first) |
54
+ | `verification-before-completion` | Before claiming any work is complete or passing |
55
+ | `memory-management` | Recurring patterns, errors, or decisions worth persisting |
56
+ | `using-maxsim` | Always — entry point for all MAXSIM work |
57
+
58
+ ## Available Agents
59
+
60
+ Agents are specialized subagent prompts spawned by MAXSIM commands:
61
+
62
+ | Agent | Purpose | Triggered By |
63
+ |-------|---------|-------------|
64
+ | `maxsim-executor` | Executes plans with atomic commits | `/maxsim:execute-phase` |
65
+ | `maxsim-planner` | Creates structured PLAN.md files | `/maxsim:plan-phase` |
66
+ | `maxsim-debugger` | Investigates bugs systematically | `/maxsim:debug` |
67
+ | `maxsim-verifier` | Verifies phase goal achievement | `/maxsim:verify-phase` |
68
+ | `maxsim-roadmapper` | Creates project roadmaps | `/maxsim:plan-roadmap` |
69
+ | `maxsim-phase-researcher` | Researches phase requirements | `/maxsim:plan-phase` |
70
+ | `maxsim-code-reviewer` | Reviews code changes | `/maxsim:review` |
71
+ | `maxsim-spec-reviewer` | Reviews specifications | `/maxsim:plan-roadmap` |
72
+ | `maxsim-plan-checker` | Validates plan completeness | `/maxsim:plan-phase` |
73
+ | `maxsim-project-researcher` | Researches project context | `/maxsim:init` |
74
+ | `maxsim-research-synthesizer` | Synthesizes research findings | `/maxsim:plan-phase` |
75
+ | `maxsim-codebase-mapper` | Maps codebase structure | `/maxsim:init` |
76
+ | `maxsim-integration-checker` | Checks integration points | `/maxsim:verify-phase` |
77
+
78
+ ## Common Rationalizations — REJECT THESE
79
+
80
+ | Excuse | Why It Violates the Rule |
81
+ |--------|--------------------------|
82
+ | "It's just a small fix" | Small fixes have context and consequences. Use `/maxsim:quick`. |
83
+ | "I know what to do, I don't need a plan" | Plans catch what you miss. The plan is the checkpoint. |
84
+ | "MAXSIM overhead is too much for this" | `/maxsim:quick` exists for lightweight tasks. Use it. |
85
+ | "I'll plan it in my head" | Plans in your head die with context. Write them down. |
86
+ | "The user said 'just do it'" | Route through `/maxsim:quick` — it is fast and still tracked. |
87
+
88
+ ## Red Flags — STOP If You Catch Yourself:
89
+
90
+ - Writing implementation code without a PLAN.md
91
+ - Skipping `/maxsim:init` because "the project is simple"
92
+ - Ignoring STATE.md checkpoints from previous sessions
93
+ - Working outside the current phase without explicit user approval
94
+ - Making architectural decisions without documenting them in STATE.md
95
+ - Finishing work without running verification
96
+
97
+ **If any red flag triggers: STOP. Check the routing table. Follow the workflow.**
98
+
99
+ ## Verification Checklist
100
+
101
+ Before ending any work session:
102
+
103
+ - [ ] All work was routed through MAXSIM commands (not ad-hoc)
104
+ - [ ] STATE.md reflects current progress and decisions
105
+ - [ ] Any bugs encountered were debugged systematically (not guessed)
106
+ - [ ] Tests were written before implementation (TDD)
107
+ - [ ] Completion claims have verification evidence
108
+ - [ ] Recurring patterns or errors were saved to memory
109
+
110
+ ## Integration with CLAUDE.md
111
+
112
+ When a project has a `CLAUDE.md`, both apply:
113
+ - `CLAUDE.md` defines project-specific conventions (language, tools, style)
114
+ - MAXSIM skills define workflow rules (how work is structured and verified)
115
+ - If they conflict, `CLAUDE.md` project conventions take priority for code style; MAXSIM takes priority for workflow structure
@@ -3,7 +3,7 @@
3
3
  "depth": "standard",
4
4
  "workflow": {
5
5
  "research": true,
6
- "plan_check": true,
6
+ "plan_checker": true,
7
7
  "verifier": true,
8
8
  "auto_advance": false,
9
9
  "nyquist_validation": false
@@ -141,10 +141,10 @@ If user selects "Cancel": exit gracefully.
141
141
  Before generating the test plan, discover the project's existing test structure:
142
142
 
143
143
  ```bash
144
- # Find existing test directories
145
- find . -type d -name "*test*" -o -name "*spec*" -o -name "*__tests__*" 2>/dev/null | head -20
144
+ # Find existing test directories and files (cross-platform)
145
+ git ls-files --others --cached --exclude-standard | grep -E "(test|spec|__tests__)" | head -20
146
146
  # Find existing test files for convention matching
147
- find . -type f \( -name "*.test.*" -o -name "*.spec.*" -o -name "*Tests.fs" -o -name "*Test.fs" \) 2>/dev/null | head -20
147
+ git ls-files --others --cached --exclude-standard | grep -E "\.(test|spec)\.|Tests\.(fs|cs)|Test\.(fs|cs)" | head -20
148
148
  # Check for test runners
149
149
  ls package.json *.sln 2>/dev/null
150
150
  ```
@@ -128,7 +128,7 @@ Calculate milestone statistics:
128
128
  ```bash
129
129
  git log --oneline --grep="feat(" | head -20
130
130
  git diff --stat FIRST_COMMIT..LAST_COMMIT | tail -1
131
- find . -name "*.swift" -o -name "*.ts" -o -name "*.py" | xargs wc -l 2>/dev/null
131
+ git ls-files --cached --exclude-standard -- "*.swift" "*.ts" "*.py" | xargs wc -l 2>/dev/null
132
132
  git log --format="%ai" FIRST_COMMIT | tail -1
133
133
  git log --format="%ai" LAST_COMMIT | head -1
134
134
  ```
@@ -36,20 +36,8 @@ Parse JSON for: `executor_model`, `verifier_model`, `commit_docs`, `parallelizat
36
36
  When `parallelization` is false, plans within a wave execute sequentially.
37
37
  </step>
38
38
 
39
- <step name="launch_dashboard">
40
- Launch the live project dashboard (if not already running):
41
-
42
- ```bash
43
- node ~/.claude/maxsim/bin/maxsim-tools.cjs dashboard 2>/dev/null || true
44
- ```
45
-
46
- This is idempotent: if the dashboard is already running, it prints the URL. If not, it spawns a detached subprocess that survives the execute-phase session.
47
-
48
- The dashboard provides a real-time visual companion showing phase progress, plan tasks, and blockers as execution proceeds.
49
-
50
- **Best-effort:** If the dashboard fails to start (e.g., not installed, build missing), execution continues without it. Do NOT gate phase execution on dashboard availability.
51
-
52
- **Dashboard MCP probe:** After the dashboard launch attempt, probe for MCP availability (see @dashboard-bridge). If `DASHBOARD_ACTIVE`, emit:
39
+ <step name="probe_dashboard">
40
+ Probe for MCP dashboard availability (see @dashboard-bridge). If `DASHBOARD_ACTIVE`, emit:
53
41
  ```
54
42
  mcp__maxsim-dashboard__submit_lifecycle_event(
55
43
  event_type: "phase-started",
@@ -57,6 +45,8 @@ mcp__maxsim-dashboard__submit_lifecycle_event(
57
45
  phase_number: PHASE_NUMBER
58
46
  )
59
47
  ```
48
+
49
+ **Note:** The dashboard is NOT auto-launched. Users start it explicitly via `maxsim dashboard`. This step only checks if a running dashboard is reachable via MCP.
60
50
  </step>
61
51
 
62
52
  <step name="handle_branching">
@@ -10,6 +10,16 @@ Read config.json for planning behavior settings.
10
10
  @./references/dashboard-bridge.md
11
11
  </required_reading>
12
12
 
13
+ ## MCP Server Fallback
14
+
15
+ MAXSIM provides MCP tools (mcp_create_phase, mcp_list_phases, etc.) for structured operations.
16
+ If MCP tools are available in your tool list, prefer them for phase, todo, and state operations.
17
+
18
+ **If MCP tools are NOT available** (server not running, .mcp.json not configured, or non-Claude runtime):
19
+ - Log a warning: "MCP server not available -- using Bash tools router fallback"
20
+ - Fall back to the Bash tools router: `node .claude/maxsim/bin/maxsim-tools.cjs <command>`
21
+ - All operations work identically via either path -- MCP is preferred but not required
22
+
13
23
  <process>
14
24
 
15
25
  <step name="init_context" priority="first">
@@ -9,6 +9,10 @@ Read all files referenced by the invoking prompt's execution_context before star
9
9
  @./references/dashboard-bridge.md
10
10
  </required_reading>
11
11
 
12
+ <tool_mandate>
13
+ **Question routing:** At workflow start, probe for the dashboard (see @dashboard-bridge). If `DASHBOARD_ACTIVE = true`, route ALL `AskUserQuestion` calls through `mcp__maxsim-dashboard__ask_question` using the schema translation rules from @dashboard-bridge. If `DASHBOARD_ACTIVE = false`, use `AskUserQuestion` as normal.
14
+ </tool_mandate>
15
+
12
16
  <auto_mode>
13
17
  ## Auto Mode Detection
14
18
 
@@ -258,7 +262,7 @@ Print per-agent completion status:
258
262
  After all agents complete, also create a file tree overview:
259
263
 
260
264
  ```bash
261
- find . -type f | grep -v node_modules | grep -v .git | grep -v .planning | grep -v __pycache__ | grep -v .next | grep -v dist/ | grep -v build/ | head -200 > .planning/codebase/STRUCTURE.md
265
+ git ls-files --others --cached --exclude-standard | grep -v node_modules | grep -v __pycache__ | grep -v .next | grep -v dist/ | grep -v build/ | head -200 > .planning/codebase/STRUCTURE.md
262
266
  ```
263
267
 
264
268
  Then wrap it with a header:
@@ -321,7 +325,7 @@ Store discrepancy notes in a variable for use in Steps 6 and 9.
321
325
  "model_profile": "balanced",
322
326
  "workflow": {
323
327
  "research": true,
324
- "plan_check": true,
328
+ "plan_checker": true,
325
329
  "verifier": true
326
330
  }
327
331
  }
@@ -461,7 +465,7 @@ AskUserQuestion([
461
465
  "model_profile": "[quality|balanced|budget]",
462
466
  "workflow": {
463
467
  "research": [true|false],
464
- "plan_check": [true|false],
468
+ "plan_checker": [true|false],
465
469
  "verifier": [true|false]
466
470
  }
467
471
  }
@@ -11,6 +11,10 @@ Read all files referenced by the invoking prompt's execution_context before star
11
11
 
12
12
  </required_reading>
13
13
 
14
+ <tool_mandate>
15
+ **Question routing:** At workflow start, probe for the dashboard (see @dashboard-bridge). If `DASHBOARD_ACTIVE = true`, route ALL `AskUserQuestion` calls through `mcp__maxsim-dashboard__ask_question` using the schema translation rules from @dashboard-bridge. If `DASHBOARD_ACTIVE = false`, use `AskUserQuestion` as normal.
16
+ </tool_mandate>
17
+
14
18
  <process>
15
19
 
16
20
  ## 1. Load Context
@@ -7,6 +7,10 @@ Read all files referenced by the invoking prompt's execution_context before star
7
7
  @./references/dashboard-bridge.md
8
8
  </required_reading>
9
9
 
10
+ <tool_mandate>
11
+ **Question routing:** At workflow start, probe for the dashboard (see @dashboard-bridge). If `DASHBOARD_ACTIVE = true`, route ALL `AskUserQuestion` calls through `mcp__maxsim-dashboard__ask_question` using the schema translation rules from @dashboard-bridge. If `DASHBOARD_ACTIVE = false`, use `AskUserQuestion` as normal.
12
+ </tool_mandate>
13
+
10
14
  <auto_mode>
11
15
  ## Auto Mode Detection
12
16
 
@@ -176,7 +180,7 @@ Create `.planning/config.json` with mode set to "yolo":
176
180
  "model_profile": "quality|balanced|budget",
177
181
  "workflow": {
178
182
  "research": true|false,
179
- "plan_check": true|false,
183
+ "plan_checker": true|false,
180
184
  "verifier": true|false,
181
185
  "auto_advance": true
182
186
  }
@@ -475,7 +479,7 @@ Create `.planning/config.json` with all settings:
475
479
  "model_profile": "quality|balanced|budget",
476
480
  "workflow": {
477
481
  "research": true|false,
478
- "plan_check": true|false,
482
+ "plan_checker": true|false,
479
483
  "verifier": true|false
480
484
  }
481
485
  }
@@ -25,7 +25,7 @@ Load all context in one call (paths only to minimize orchestrator context):
25
25
  INIT=$(node ~/.claude/maxsim/bin/maxsim-tools.cjs init plan-phase "$PHASE")
26
26
  ```
27
27
 
28
- Parse JSON for: `researcher_model`, `planner_model`, `checker_model`, `research_enabled`, `plan_checker_enabled`, `nyquist_validation_enabled`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_research`, `has_context`, `has_plans`, `plan_count`, `planning_exists`, `roadmap_exists`, `phase_req_ids`.
28
+ Parse JSON for: `researcher_model`, `planner_model`, `checker_model`, `research_enabled`, `plan_checker_enabled`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_research`, `has_context`, `has_plans`, `plan_count`, `planning_exists`, `roadmap_exists`, `phase_req_ids`.
29
29
 
30
30
  **File paths (for <files_to_read> blocks):** `state_path`, `roadmap_path`, `requirements_path`, `context_path`, `research_path`, `verification_path`, `uat_path`. These are null if files don't exist.
31
31
 
@@ -136,7 +136,7 @@ Task(
136
136
 
137
137
  ## 5.5. Create Validation Strategy (if Nyquist enabled)
138
138
 
139
- **Skip if:** `nyquist_validation_enabled` is false from INIT JSON.
139
+ **Skip if:** `workflow.nyquist_validation` is false in `.planning/config.json`.
140
140
 
141
141
  After researcher completes, check if RESEARCH.md contains a Validation Architecture section:
142
142
 
@@ -1,5 +1,5 @@
1
1
  <purpose>
2
- Interactive configuration of MAXSIM workflow agents (research, plan_check, verifier) and model profile selection via multi-question prompt. Updates .planning/config.json with user preferences. Optionally saves settings as global defaults (~/.maxsim/defaults.json) for future projects.
2
+ Interactive configuration of MAXSIM workflow agents (research, plan_checker, verifier) and model profile selection via multi-question prompt. Updates .planning/config.json with user preferences. Optionally saves settings as global defaults (~/.maxsim/defaults.json) for future projects.
3
3
  </purpose>
4
4
 
5
5
  <required_reading>
@@ -7,6 +7,10 @@ Read all files referenced by the invoking prompt's execution_context before star
7
7
  @./references/dashboard-bridge.md
8
8
  </required_reading>
9
9
 
10
+ <tool_mandate>
11
+ **Question routing:** At workflow start, probe for the dashboard (see @dashboard-bridge). If `DASHBOARD_ACTIVE = true`, route ALL `AskUserQuestion` calls through `mcp__maxsim-dashboard__ask_question` using the schema translation rules from @dashboard-bridge. If `DASHBOARD_ACTIVE = false`, use `AskUserQuestion` as normal.
12
+ </tool_mandate>
13
+
10
14
  <process>
11
15
 
12
16
  <step name="ensure_and_load_config">
@@ -27,7 +31,7 @@ cat .planning/config.json
27
31
 
28
32
  Parse current values (default to `true` if not present):
29
33
  - `workflow.research` — spawn researcher during plan-phase
30
- - `workflow.plan_check` — spawn plan checker during plan-phase
34
+ - `workflow.plan_checker` — spawn plan checker during plan-phase
31
35
  - `workflow.verifier` — spawn verifier during execute-phase
32
36
  - `workflow.nyquist_validation` — validation architecture research during plan-phase
33
37
  - `model_profile` — which model each agent uses (default: `balanced`)
@@ -117,7 +121,7 @@ Merge new settings into existing config.json:
117
121
  "model_profile": "quality" | "balanced" | "budget",
118
122
  "workflow": {
119
123
  "research": true/false,
120
- "plan_check": true/false,
124
+ "plan_checker": true/false,
121
125
  "verifier": true/false,
122
126
  "auto_advance": true/false,
123
127
  "nyquist_validation": true/false
@@ -165,7 +169,7 @@ Write `~/.maxsim/defaults.json` with:
165
169
  "branching_strategy": <current>,
166
170
  "workflow": {
167
171
  "research": <current>,
168
- "plan_check": <current>,
172
+ "plan_checker": <current>,
169
173
  "verifier": <current>,
170
174
  "auto_advance": <current>,
171
175
  "nyquist_validation": <current>
@@ -38,7 +38,7 @@ Parse JSON for: `planner_model`, `checker_model`, `commit_docs`, `phase_found`,
38
38
  **First: Check for active UAT sessions**
39
39
 
40
40
  ```bash
41
- find .planning/phases -name "*-UAT.md" -type f 2>/dev/null | head -5
41
+ ls .planning/phases/*/*-UAT.md 2>/dev/null | head -5
42
42
  ```
43
43
 
44
44
  **If active sessions exist AND no $ARGUMENTS provided:**