maxsimcli 4.16.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/assets/CHANGELOG.md +7 -0
  2. package/dist/assets/hooks/maxsim-check-update.cjs.map +1 -1
  3. package/dist/assets/hooks/maxsim-notification-sound.cjs +70 -0
  4. package/dist/assets/hooks/maxsim-notification-sound.cjs.map +1 -0
  5. package/dist/assets/hooks/maxsim-statusline.cjs.map +1 -1
  6. package/dist/assets/hooks/maxsim-stop-sound.cjs +70 -0
  7. package/dist/assets/hooks/maxsim-stop-sound.cjs.map +1 -0
  8. package/dist/assets/hooks/maxsim-sync-reminder.cjs.map +1 -1
  9. package/dist/assets/templates/agents/executor.md +2 -2
  10. package/dist/assets/templates/agents/planner.md +1 -1
  11. package/dist/assets/templates/agents/verifier.md +1 -1
  12. package/dist/assets/templates/commands/maxsim/quick.md +2 -2
  13. package/dist/assets/templates/skills/github-artifact-protocol/SKILL.md +8 -8
  14. package/dist/assets/templates/skills/github-tools-guide/SKILL.md +96 -0
  15. package/dist/assets/templates/workflows/execute-plan.md +82 -68
  16. package/dist/assets/templates/workflows/execute.md +51 -36
  17. package/dist/assets/templates/workflows/go.md +21 -16
  18. package/dist/assets/templates/workflows/init-existing.md +13 -16
  19. package/dist/assets/templates/workflows/new-milestone.md +23 -1
  20. package/dist/assets/templates/workflows/new-project.md +13 -16
  21. package/dist/assets/templates/workflows/plan-create.md +16 -24
  22. package/dist/assets/templates/workflows/plan-discuss.md +6 -8
  23. package/dist/assets/templates/workflows/plan-research.md +7 -6
  24. package/dist/assets/templates/workflows/plan.md +21 -14
  25. package/dist/assets/templates/workflows/progress.md +45 -20
  26. package/dist/assets/templates/workflows/quick.md +21 -13
  27. package/dist/assets/templates/workflows/sdd.md +13 -11
  28. package/dist/assets/templates/workflows/verify-phase.md +77 -58
  29. package/dist/cli.cjs +4410 -2265
  30. package/dist/cli.cjs.map +1 -1
  31. package/dist/install.cjs +60 -37
  32. package/dist/install.cjs.map +1 -1
  33. package/package.json +2 -4
  34. package/dist/assets/templates/workflows/discovery-phase.md +0 -292
  35. package/dist/assets/templates/workflows/execute-phase.md +0 -752
  36. package/dist/mcp-server.cjs +0 -41031
  37. package/dist/mcp-server.cjs.map +0 -1
@@ -47,7 +47,11 @@ grep -E "^| ${phase_number}" .planning/REQUIREMENTS.md 2>/dev/null
47
47
 
48
48
  **Get the phase issue number from GitHub (live):**
49
49
 
50
- Call `mcp_get_all_progress` and find the entry where `phase_number` matches. Extract `issue_number` — this is used for posting all verification results as GitHub comments.
50
+ Run `github all-progress` and find the entry where `phase_number` matches. Extract `issue_number` — this is used for posting all verification results as GitHub comments.
51
+
52
+ ```bash
53
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github all-progress
54
+ ```
51
55
 
52
56
  Extract **phase goal** from ROADMAP.md (the outcome to verify, not tasks) and **requirements** from REQUIREMENTS.md if it exists.
53
57
  </step>
@@ -218,40 +222,44 @@ If gaps_found:
218
222
  <step name="post_verification_to_github">
219
223
  **Post verification results as a GitHub comment (primary output — no local file written).**
220
224
 
221
- Build the verification content in memory using the same structured format as the verification report template. Then call `mcp_post_comment` with `type: 'verification'` on the phase issue:
225
+ Build the verification content in memory using the same structured format as the verification report template. Then run `github post-comment` with `type: 'verification'` on the phase issue.
222
226
 
223
- ```
224
- mcp_post_comment({
225
- issue_number: {PHASE_ISSUE_NUMBER},
226
- type: 'verification',
227
- body: {
228
- status: 'passed' | 'gaps_found' | 'human_needed',
229
- score: '{verified}/{total}',
230
- phase: '{phase_number} {phase_name}',
231
- timestamp: '{ISO timestamp}',
232
- truths_checked: [
233
- { truth: '...', status: 'VERIFIED | FAILED | UNCERTAIN', evidence: '...' }
234
- ],
235
- artifacts_verified: [
236
- { path: '...', exists: true/false, substantive: true/false, wired: true/false, status: 'VERIFIED | STUB | MISSING | ORPHANED' }
237
- ],
238
- key_links_validated: [
239
- { from: '...', to: '...', via: '...', status: 'WIRED | PARTIAL | NOT_WIRED' }
240
- ],
241
- antipatterns: [
242
- { file: '...', line: N, pattern: '...', severity: 'Blocker | Warning | Info' }
243
- ],
244
- human_verification_items: [
245
- { name: '...', steps: '...', expected: '...', reason: '...' }
246
- ],
247
- gaps: [
248
- { description: '...', fix_plan: '...' }
249
- ],
250
- fix_plans: [
251
- { name: '...', objective: '...', tasks: ['...'] }
252
- ]
253
- }
254
- })
227
+ Write the body content to a tmpfile first, then post:
228
+
229
+ ```bash
230
+ # Write body to tmpfile (JSON with status, score, phase, timestamp, truths_checked, artifacts_verified, etc.)
231
+ BODY_FILE=$(mktemp)
232
+ cat > "$BODY_FILE" << 'VERIFICATION_EOF'
233
+ {
234
+ "status": "passed | gaps_found | human_needed",
235
+ "score": "{verified}/{total}",
236
+ "phase": "{phase_number} — {phase_name}",
237
+ "timestamp": "{ISO timestamp}",
238
+ "truths_checked": [
239
+ { "truth": "...", "status": "VERIFIED | FAILED | UNCERTAIN", "evidence": "..." }
240
+ ],
241
+ "artifacts_verified": [
242
+ { "path": "...", "exists": true, "substantive": true, "wired": true, "status": "VERIFIED | STUB | MISSING | ORPHANED" }
243
+ ],
244
+ "key_links_validated": [
245
+ { "from": "...", "to": "...", "via": "...", "status": "WIRED | PARTIAL | NOT_WIRED" }
246
+ ],
247
+ "antipatterns": [
248
+ { "file": "...", "line": 0, "pattern": "...", "severity": "Blocker | Warning | Info" }
249
+ ],
250
+ "human_verification_items": [
251
+ { "name": "...", "steps": "...", "expected": "...", "reason": "..." }
252
+ ],
253
+ "gaps": [
254
+ { "description": "...", "fix_plan": "..." }
255
+ ],
256
+ "fix_plans": [
257
+ { "name": "...", "objective": "...", "tasks": ["..."] }
258
+ ]
259
+ }
260
+ VERIFICATION_EOF
261
+
262
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment --issue-number {PHASE_ISSUE_NUMBER} --body-file "$BODY_FILE" --type verification
255
263
  ```
256
264
 
257
265
  The comment is the canonical record of this verification run.
@@ -262,24 +270,26 @@ The comment is the canonical record of this verification run.
262
270
 
263
271
  Present the human verification items to the user and walk through each one. After the user completes UAT:
264
272
 
265
- Build the UAT results in memory, then post as a GitHub comment by calling `mcp_post_comment` with `type: 'uat'` on the phase issue:
273
+ Build the UAT results in memory, then post as a GitHub comment by running `github post-comment` with `type: 'uat'` on the phase issue:
266
274
 
267
- ```
268
- mcp_post_comment({
269
- issue_number: {PHASE_ISSUE_NUMBER},
270
- type: 'uat',
271
- body: {
272
- status: 'passed' | 'gaps_found',
273
- phase: '{phase_number} — {phase_name}',
274
- timestamp: '{ISO timestamp}',
275
- items: [
276
- { name: '...', result: 'pass | fail', notes: '...' }
277
- ],
278
- gaps: [
279
- { description: '...', severity: 'Blocker | Warning' }
280
- ]
281
- }
282
- })
275
+ ```bash
276
+ # Write UAT body to tmpfile
277
+ UAT_FILE=$(mktemp)
278
+ cat > "$UAT_FILE" << 'UAT_EOF'
279
+ {
280
+ "status": "passed | gaps_found",
281
+ "phase": "{phase_number} — {phase_name}",
282
+ "timestamp": "{ISO timestamp}",
283
+ "items": [
284
+ { "name": "...", "result": "pass | fail", "notes": "..." }
285
+ ],
286
+ "gaps": [
287
+ { "description": "...", "severity": "Blocker | Warning" }
288
+ ]
289
+ }
290
+ UAT_EOF
291
+
292
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment --issue-number {PHASE_ISSUE_NUMBER} --body-file "$UAT_FILE" --type uat
283
293
  ```
284
294
 
285
295
  Do NOT write a UAT.md file to `.planning/phases/`.
@@ -289,20 +299,29 @@ Do NOT write a UAT.md file to `.planning/phases/`.
289
299
  **Update GitHub board based on verification outcome.**
290
300
 
291
301
  **If verification passes AND PR is merged:**
292
- 1. Call `mcp_move_issue` to move the phase issue to the "Done" column on the board
293
- 2. Call `mcp_close_issue` to close the phase issue
302
+ 1. Run `github move-issue` to move the phase issue to the "Done" column on the board
303
+ 2. Run `github close-issue` to close the phase issue
294
304
  3. Report to orchestrator: phase complete, issue closed
295
305
 
306
+ ```bash
307
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue --project-number P --item-id ID --status "Done"
308
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github close-issue N
309
+ ```
310
+
296
311
  **If verification passes but PR not yet merged:**
297
312
  1. Keep the phase issue in "In Review" on the board
298
313
  2. Note: board will be updated when PR merges
299
314
 
300
315
  **If verification fails (gaps_found):**
301
316
  1. Check current board column for the phase issue
302
- 2. If in "In Review": call `mcp_move_issue` to move back to "In Progress"
317
+ 2. If in "In Review": run `github move-issue` to move back to "In Progress"
303
318
  3. Post failure details as a verification comment (already done in post_verification_to_github step)
304
319
  4. Note which gaps need fixing before re-verification
305
320
 
321
+ ```bash
322
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue --project-number P --item-id ID --status "In Progress"
323
+ ```
324
+
306
325
  **If human_needed:**
307
326
  1. Keep the phase issue in its current column (do not move)
308
327
  2. The UAT comment posted above documents what needs human testing
@@ -321,7 +340,7 @@ Orchestrator routes: `passed` → update_roadmap | `gaps_found` → create/execu
321
340
  </process>
322
341
 
323
342
  <success_criteria>
324
- - [ ] Phase issue number retrieved from live GitHub via mcp_get_all_progress
343
+ - [ ] Phase issue number retrieved from live GitHub via `github all-progress`
325
344
  - [ ] Must-haves established (from frontmatter or derived)
326
345
  - [ ] All truths verified with status and evidence
327
346
  - [ ] All artifacts checked at all three levels
@@ -331,9 +350,9 @@ Orchestrator routes: `passed` → update_roadmap | `gaps_found` → create/execu
331
350
  - [ ] Human verification items identified
332
351
  - [ ] Overall status determined
333
352
  - [ ] Fix plans generated (if gaps_found)
334
- - [ ] Verification results posted as GitHub comment via mcp_post_comment (type: 'verification') — NO local VERIFICATION.md written
335
- - [ ] UAT results posted as GitHub comment via mcp_post_comment (type: 'uat') — NO local UAT.md written
336
- - [ ] Board transition executed: mcp_move_issue + mcp_close_issue on pass; mcp_move_issue back to In Progress on fail
353
+ - [ ] Verification results posted as GitHub comment via `github post-comment` (type: 'verification') — NO local VERIFICATION.md written
354
+ - [ ] UAT results posted as GitHub comment via `github post-comment` (type: 'uat') — NO local UAT.md written
355
+ - [ ] Board transition executed: `github move-issue` + `github close-issue` on pass; `github move-issue` back to In Progress on fail
337
356
  - [ ] Results returned to orchestrator
338
357
  </success_criteria>
339
358
  </output>