maxsimcli 3.11.0 → 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 (102) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/assets/CHANGELOG.md +19 -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/templates/agents/AGENTS.md +82 -0
  7. package/dist/assets/templates/commands/maxsim/settings.md +1 -1
  8. package/dist/assets/templates/skills/code-review/SKILL.md +151 -0
  9. package/dist/assets/templates/skills/memory-management/SKILL.md +174 -0
  10. package/dist/assets/templates/skills/simplify/SKILL.md +137 -0
  11. package/dist/assets/templates/skills/using-maxsim/SKILL.md +115 -0
  12. package/dist/assets/templates/templates/config.json +1 -1
  13. package/dist/assets/templates/workflows/add-tests.md +3 -3
  14. package/dist/assets/templates/workflows/complete-milestone.md +1 -1
  15. package/dist/assets/templates/workflows/execute-phase.md +4 -14
  16. package/dist/assets/templates/workflows/init-existing.md +7 -3
  17. package/dist/assets/templates/workflows/new-milestone.md +4 -0
  18. package/dist/assets/templates/workflows/new-project.md +6 -2
  19. package/dist/assets/templates/workflows/plan-phase.md +2 -2
  20. package/dist/assets/templates/workflows/settings.md +8 -4
  21. package/dist/assets/templates/workflows/verify-work.md +1 -1
  22. package/dist/cli.cjs +265 -161
  23. package/dist/cli.cjs.map +1 -1
  24. package/dist/cli.js +73 -204
  25. package/dist/cli.js.map +1 -1
  26. package/dist/core/commands.d.ts.map +1 -1
  27. package/dist/core/commands.js +4 -1
  28. package/dist/core/commands.js.map +1 -1
  29. package/dist/core/core.d.ts +18 -0
  30. package/dist/core/core.d.ts.map +1 -1
  31. package/dist/core/core.js +43 -13
  32. package/dist/core/core.js.map +1 -1
  33. package/dist/core/dashboard-launcher.d.ts +56 -0
  34. package/dist/core/dashboard-launcher.d.ts.map +1 -0
  35. package/dist/core/dashboard-launcher.js +243 -0
  36. package/dist/core/dashboard-launcher.js.map +1 -0
  37. package/dist/core/index.d.ts +3 -1
  38. package/dist/core/index.d.ts.map +1 -1
  39. package/dist/core/index.js +20 -2
  40. package/dist/core/index.js.map +1 -1
  41. package/dist/core/init.d.ts +0 -1
  42. package/dist/core/init.d.ts.map +1 -1
  43. package/dist/core/init.js +0 -1
  44. package/dist/core/init.js.map +1 -1
  45. package/dist/core/phase.d.ts.map +1 -1
  46. package/dist/core/phase.js +7 -1
  47. package/dist/core/phase.js.map +1 -1
  48. package/dist/core/roadmap.d.ts.map +1 -1
  49. package/dist/core/roadmap.js +1 -0
  50. package/dist/core/roadmap.js.map +1 -1
  51. package/dist/core/state.d.ts.map +1 -1
  52. package/dist/core/state.js +7 -5
  53. package/dist/core/state.js.map +1 -1
  54. package/dist/core/types.d.ts +1 -2
  55. package/dist/core/types.d.ts.map +1 -1
  56. package/dist/core/types.js +1 -2
  57. package/dist/core/types.js.map +1 -1
  58. package/dist/install/adapters.d.ts +15 -0
  59. package/dist/install/adapters.d.ts.map +1 -0
  60. package/dist/install/adapters.js +203 -0
  61. package/dist/install/adapters.js.map +1 -0
  62. package/dist/install/copy.d.ts +15 -0
  63. package/dist/install/copy.d.ts.map +1 -0
  64. package/dist/install/copy.js +191 -0
  65. package/dist/install/copy.js.map +1 -0
  66. package/dist/install/dashboard.d.ts +16 -0
  67. package/dist/install/dashboard.d.ts.map +1 -0
  68. package/dist/install/dashboard.js +273 -0
  69. package/dist/install/dashboard.js.map +1 -0
  70. package/dist/install/hooks.d.ts +32 -0
  71. package/dist/install/hooks.d.ts.map +1 -0
  72. package/dist/install/hooks.js +285 -0
  73. package/dist/install/hooks.js.map +1 -0
  74. package/dist/install/index.d.ts +2 -0
  75. package/dist/install/index.d.ts.map +1 -0
  76. package/dist/install/index.js +598 -0
  77. package/dist/install/index.js.map +1 -0
  78. package/dist/install/manifest.d.ts +20 -0
  79. package/dist/install/manifest.d.ts.map +1 -0
  80. package/dist/install/manifest.js +135 -0
  81. package/dist/install/manifest.js.map +1 -0
  82. package/dist/install/patches.d.ts +11 -0
  83. package/dist/install/patches.d.ts.map +1 -0
  84. package/dist/install/patches.js +136 -0
  85. package/dist/install/patches.js.map +1 -0
  86. package/dist/install/shared.d.ts +50 -0
  87. package/dist/install/shared.d.ts.map +1 -0
  88. package/dist/install/shared.js +142 -0
  89. package/dist/install/shared.js.map +1 -0
  90. package/dist/install/uninstall.d.ts +6 -0
  91. package/dist/install/uninstall.d.ts.map +1 -0
  92. package/dist/install/uninstall.js +280 -0
  93. package/dist/install/uninstall.js.map +1 -0
  94. package/dist/install.cjs +763 -709
  95. package/dist/install.cjs.map +1 -1
  96. package/dist/mcp-server.cjs.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/assets/dashboard/client/assets/index-DzJChB-D.css +0 -32
  99. package/dist/install.d.ts +0 -2
  100. package/dist/install.d.ts.map +0 -1
  101. package/dist/install.js +0 -1841
  102. package/dist/install.js.map +0 -1
@@ -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">
@@ -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:**