maxsimcli 4.2.3 → 4.3.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 (63) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/assets/CHANGELOG.md +7 -0
  3. package/dist/assets/templates/agents/AGENTS.md +8 -6
  4. package/dist/assets/templates/agents/maxsim-code-reviewer.md +11 -0
  5. package/dist/assets/templates/agents/maxsim-executor.md +1 -0
  6. package/dist/assets/templates/agents/maxsim-planner.md +1 -0
  7. package/dist/assets/templates/agents/maxsim-project-researcher.md +96 -0
  8. package/dist/assets/templates/agents/maxsim-research-synthesizer.md +55 -3
  9. package/dist/assets/templates/agents/maxsim-roadmapper.md +11 -0
  10. package/dist/assets/templates/references/questioning.md +184 -33
  11. package/dist/assets/templates/skills/code-review/SKILL.md +5 -3
  12. package/dist/assets/templates/skills/{batch-worktree → maxsim-batch}/SKILL.md +3 -3
  13. package/dist/assets/templates/skills/{simplify → maxsim-simplify}/SKILL.md +7 -6
  14. package/dist/assets/templates/skills/using-maxsim/SKILL.md +4 -2
  15. package/dist/assets/templates/templates/conventions.md +138 -0
  16. package/dist/assets/templates/templates/no-gos.md +45 -4
  17. package/dist/assets/templates/templates/project.md +23 -0
  18. package/dist/assets/templates/workflows/batch.md +1 -1
  19. package/dist/assets/templates/workflows/init-existing.md +187 -0
  20. package/dist/assets/templates/workflows/new-project.md +195 -7
  21. package/dist/backend-server.cjs +13 -0
  22. package/dist/backend-server.cjs.map +1 -1
  23. package/dist/cli.cjs +350 -40
  24. package/dist/cli.cjs.map +1 -1
  25. package/dist/cli.js +7 -3
  26. package/dist/cli.js.map +1 -1
  27. package/dist/core/core.d.ts +2 -0
  28. package/dist/core/core.d.ts.map +1 -1
  29. package/dist/core/core.js +67 -6
  30. package/dist/core/core.js.map +1 -1
  31. package/dist/core/index.d.ts +4 -4
  32. package/dist/core/index.d.ts.map +1 -1
  33. package/dist/core/index.js +9 -3
  34. package/dist/core/index.js.map +1 -1
  35. package/dist/core/init.d.ts +2 -0
  36. package/dist/core/init.d.ts.map +1 -1
  37. package/dist/core/init.js +6 -0
  38. package/dist/core/init.js.map +1 -1
  39. package/dist/core/milestone.d.ts +1 -1
  40. package/dist/core/milestone.d.ts.map +1 -1
  41. package/dist/core/milestone.js +81 -37
  42. package/dist/core/milestone.js.map +1 -1
  43. package/dist/core/phase.d.ts +3 -0
  44. package/dist/core/phase.d.ts.map +1 -1
  45. package/dist/core/phase.js +213 -0
  46. package/dist/core/phase.js.map +1 -1
  47. package/dist/core/state.d.ts +6 -0
  48. package/dist/core/state.d.ts.map +1 -1
  49. package/dist/core/state.js +69 -0
  50. package/dist/core/state.js.map +1 -1
  51. package/dist/core/types.d.ts +11 -0
  52. package/dist/core/types.d.ts.map +1 -1
  53. package/dist/core-RRjCSt0G.cjs.map +1 -1
  54. package/dist/install/shared.d.ts +1 -1
  55. package/dist/install/shared.d.ts.map +1 -1
  56. package/dist/install/shared.js +1 -1
  57. package/dist/install/shared.js.map +1 -1
  58. package/dist/install.cjs +4 -2
  59. package/dist/install.cjs.map +1 -1
  60. package/dist/mcp-server.cjs +13 -0
  61. package/dist/mcp-server.cjs.map +1 -1
  62. package/dist/skills-MYlMkYNt.cjs.map +1 -1
  63. package/package.json +1 -1
@@ -0,0 +1,138 @@
1
+ # CONVENTIONS.md Template
2
+
3
+ Template for `.planning/CONVENTIONS.md` — the coding conventions document that agents follow without asking.
4
+
5
+ <template>
6
+
7
+ ```markdown
8
+ # Conventions
9
+
10
+ **Generated:** {{date}}
11
+ **Source:** {{source}}
12
+
13
+ ## Tech Stack
14
+
15
+ Locked technology choices. Agents use these to write correct import statements and configurations.
16
+
17
+ | Category | Technology | Version | Purpose |
18
+ |----------|-----------|---------|---------|
19
+ <!-- | Runtime | Node.js | 22.x | Server and build tooling | -->
20
+ <!-- | Language | TypeScript | 5.x | Type safety across codebase | -->
21
+ <!-- | Framework | Next.js | 15.x | Full-stack React framework | -->
22
+ <!-- | Database | PostgreSQL | 16.x | Primary relational data store | -->
23
+ <!-- | ORM | Drizzle | latest | Type-safe database queries | -->
24
+ <!-- | Testing | Vitest | latest | Unit and integration tests | -->
25
+
26
+ ## File Layout
27
+
28
+ Agents use this to know WHERE to create files and HOW to name them.
29
+
30
+ | Type | Location | Naming Convention | Example |
31
+ |------|----------|-------------------|---------|
32
+ <!-- | Pages/Routes | src/app/ | kebab-case dirs | src/app/user-settings/page.tsx | -->
33
+ <!-- | Components | src/components/ | PascalCase.tsx | src/components/UserCard.tsx | -->
34
+ <!-- | Utilities | src/utils/ | camelCase.ts | src/utils/formatDate.ts | -->
35
+ <!-- | API routes | src/app/api/ | route.ts in kebab-case dirs | src/app/api/auth/route.ts | -->
36
+ <!-- | Tests | src/__tests__/ or colocated | *.test.ts | src/utils/__tests__/formatDate.test.ts | -->
37
+ <!-- | Types | src/types/ | PascalCase.ts | src/types/User.ts | -->
38
+ <!-- | Config | project root | lowercase dotfiles | .env.local, tsconfig.json | -->
39
+
40
+ ## Error Handling
41
+
42
+ Agents use this to write consistent error handling across all tasks.
43
+
44
+ **Pattern:** {{error_pattern}}
45
+ <!-- Options: exceptions / Result types / error codes / error boundaries -->
46
+
47
+ **Standard flow:**
48
+ {{error_flow}}
49
+ <!-- Describe how errors propagate through the system. Example:
50
+ 1. Database/external errors throw typed exceptions
51
+ 2. Service layer catches and wraps in domain errors
52
+ 3. API layer catches domain errors and maps to HTTP status codes
53
+ 4. Client receives structured { error, message, code } responses
54
+ 5. Unexpected errors propagate to global error handler + logging
55
+ -->
56
+
57
+ **What to catch vs let propagate:**
58
+ {{catch_vs_propagate}}
59
+ <!-- Example:
60
+ - CATCH: Validation errors, auth failures, not-found, rate limits
61
+ - PROPAGATE: Unexpected errors, system failures (let global handler log + alert)
62
+ - NEVER SWALLOW: Errors without logging — always log before handling
63
+ -->
64
+
65
+ ## Testing
66
+
67
+ | Aspect | Standard |
68
+ |--------|----------|
69
+ | Framework | {{test_framework}} |
70
+ | Test location | {{test_location}} |
71
+ | Naming convention | {{test_naming}} |
72
+ | Coverage target | {{coverage_target}} |
73
+ | What to test per task | {{test_scope}} |
74
+ <!-- Example values:
75
+ Framework: Vitest
76
+ Test location: Colocated __tests__/ dirs or tests/ at project root
77
+ Naming convention: [module].test.ts for unit, [feature].e2e.ts for e2e
78
+ Coverage target: 80% lines for business logic, no target for UI components
79
+ What to test per task: Every new function gets unit tests. API endpoints get integration tests. UI gets smoke tests only.
80
+ -->
81
+ ```
82
+
83
+ </template>
84
+
85
+ <generation_notes>
86
+
87
+ **Greenfield (new-project init):**
88
+ Populate from research agent recommendations + questioning confirmations.
89
+ - Tech Stack: from locked decisions in research synthesis
90
+ - File Layout: from recommended framework conventions
91
+ - Error Handling: from user's stated preference during questioning
92
+ - Testing: from user's stated testing strategy during questioning
93
+ - Set `{{source}}` to "new-project init"
94
+ - Set `{{generated_or_confirmed}}` to "generated"
95
+
96
+ **Brownfield (init-existing / init-existing scan + user confirmation):**
97
+ Populate from codebase scan results (`codebase/CONVENTIONS.md`) + user confirmation of each convention.
98
+ - Tech Stack: from detected dependencies in `codebase/STACK.md`
99
+ - File Layout: from detected file structure in `codebase/STRUCTURE.md`
100
+ - Error Handling: from detected patterns in `codebase/CONVENTIONS.md`
101
+ - Testing: from detected test setup in `codebase/STACK.md`
102
+ - Present each section to user: "Your codebase uses these patterns. Should new code follow them?"
103
+ - Set `{{source}}` to "init-existing scan + user confirmation"
104
+ - Set `{{generated_or_confirmed}}` to "confirmed"
105
+
106
+ **Lifecycle note:**
107
+ Generated at init. Update when conventions change. See Phase 3 (Agent Coherence) for lifecycle updates.
108
+
109
+ </generation_notes>
110
+
111
+ <guidelines>
112
+
113
+ **Tech Stack:**
114
+ - Only include architecturally significant choices (frameworks, databases, ORMs, runtimes)
115
+ - Exclude utility libraries (lodash, uuid, date-fns) unless they represent a project-wide convention
116
+ - Version should be specific enough for agents to use (major.minor, not just "latest")
117
+ - Purpose column explains WHY this technology was chosen
118
+
119
+ **File Layout:**
120
+ - Cover all file types agents will create: components, pages, utils, tests, types, config
121
+ - Use consistent naming conventions (PascalCase, camelCase, kebab-case)
122
+ - Include concrete examples — agents learn from examples more than rules
123
+ - Match the actual project structure, not an ideal one
124
+
125
+ **Error Handling:**
126
+ - Pick ONE pattern and stick with it — inconsistency is worse than any single approach
127
+ - Describe the full flow from error origin to user-facing response
128
+ - Be explicit about catch vs propagate — this prevents error swallowing
129
+
130
+ **Testing:**
131
+ - Coverage target should be realistic and specific to code type
132
+ - "What to test per task" is the most important row — agents read this before writing tests
133
+ - Include the test command if non-obvious
134
+
135
+ </guidelines>
136
+
137
+ ---
138
+ *Conventions {{generated_or_confirmed}}: {{date}}*
@@ -1,9 +1,50 @@
1
1
  # No-Gos
2
2
 
3
- > Things explicitly out of scope or forbidden.
3
+ > Explicit boundaries, forbidden patterns, and constraints for this project. Violating these is a blocking issue.
4
4
 
5
- **Created:** {{date}}
5
+ **Generated:** {{date}}
6
+ **Source:** {{source}}
6
7
 
7
- ## Boundaries
8
+ ---
8
9
 
9
- - _No entries yet._
10
+ ## Hard Constraints
11
+
12
+ > Non-negotiable technical and architectural boundaries. These are absolute -- no exceptions.
13
+
14
+ | # | Constraint | Rationale |
15
+ |---|-----------|-----------|
16
+ | | | |
17
+
18
+ ---
19
+
20
+ ## Anti-Patterns
21
+
22
+ > Patterns explicitly forbidden in this codebase. If you catch yourself reaching for one of these, stop and reconsider.
23
+
24
+ | # | Pattern | Why It's Forbidden | Use Instead |
25
+ |---|---------|-------------------|-------------|
26
+ | | | | |
27
+
28
+ ---
29
+
30
+ ## Previous Failures
31
+
32
+ > Lessons from past attempts, previous versions, or burned-on approaches. These are experience-driven no-gos.
33
+
34
+ | # | What Failed | Context | Lesson |
35
+ |---|------------|---------|--------|
36
+ | | | | |
37
+
38
+ ---
39
+
40
+ ## Domain-Specific Risks
41
+
42
+ > Common pitfalls for this type of project. These may not all apply but were flagged during initialization as worth tracking.
43
+
44
+ | # | Risk | Applies To | Mitigation |
45
+ |---|------|-----------|------------|
46
+ | | | | |
47
+
48
+ ---
49
+
50
+ *Confirmed by user during project initialization: {{date}}*
@@ -63,6 +63,21 @@ Common types: Tech stack, Timeline, Budget, Dependencies, Compatibility, Perform
63
63
  |----------|-----------|---------|
64
64
  | [Choice] | [Why] | [✓ Good / ⚠️ Revisit / — Pending] |
65
65
 
66
+ ## Tech Stack Decisions
67
+
68
+ <!-- Locked technology choices from research synthesis. Agents treat these as constraints.
69
+ These are non-negotiable for the current milestone — changing them requires explicit discussion. -->
70
+
71
+ | Category | Decision | Rationale | Alternatives Rejected | Effort |
72
+ |----------|----------|-----------|----------------------|--------|
73
+ | [e.g. Framework] | [e.g. Next.js 15] | [Why this choice] | [What was considered and why not] | [S/M/L/XL] |
74
+
75
+ <!-- Effort: S = hours, M = days, L = week, XL = weeks -->
76
+
77
+ <!-- If no research was conducted, this section may be empty or populated from questioning context. -->
78
+
79
+ See `.planning/CONVENTIONS.md` for coding standards and file layout conventions.
80
+
66
81
  ---
67
82
  *Last updated: [date] after [trigger]*
68
83
  ```
@@ -117,6 +132,14 @@ Common types: Tech stack, Timeline, Budget, Dependencies, Compatibility, Perform
117
132
  - ⚠️ Revisit — decision may need reconsideration
118
133
  - — Pending — too early to evaluate
119
134
 
135
+ **Tech Stack Decisions:**
136
+ - Locked technology choices from research synthesis or questioning
137
+ - Agents treat these as hard constraints — no substitutions without explicit approval
138
+ - Each row includes: what was chosen, why, what was rejected, and effort estimate
139
+ - Populated by research synthesizer (if research ran) or from questioning context
140
+ - Links to CONVENTIONS.md for coding standards (file layout, error handling, testing)
141
+ - If no research was conducted, this section may be empty or minimal
142
+
120
143
  **Last Updated:**
121
144
  - Always note when and why the document was updated
122
145
  - Format: `after Phase 2` or `after v1.0 milestone`
@@ -84,7 +84,7 @@ Task(
84
84
  - .planning/STATE.md (Project State)
85
85
  - .planning/ROADMAP.md (Phase structure)
86
86
  - ./CLAUDE.md (if exists — follow project-specific guidelines)
87
- - .skills/batch-worktree/SKILL.md (if exists — batch-worktree constraints)
87
+ - .skills/maxsim-batch/SKILL.md (if exists — maxsim-batch constraints)
88
88
  </files_to_read>
89
89
 
90
90
  **Project skills:** Check .skills/ directory (if exists) — read SKILL.md files, plans should account for project skill rules
@@ -8,6 +8,7 @@ Output: `.planning/` directory with config.json, PROJECT.md, REQUIREMENTS.md, RO
8
8
  Read all files referenced by the invoking prompt's execution_context before starting.
9
9
  @./references/dashboard-bridge.md
10
10
  @./references/thinking-partner.md
11
+ @./references/questioning.md
11
12
  </required_reading>
12
13
 
13
14
  <tool_mandate>
@@ -535,6 +536,130 @@ Apply thinking-partner behaviors when presenting findings:
535
536
  - **Make consequences visible** — "Your architecture pattern means Y for future phases."
536
537
  - **Propose alternatives** — If concerns were found, suggest approaches: "The scan found tech debt in Z. We could address it early or defer — here are the trade-offs."
537
538
 
539
+ ## Step 6b: Stack Preference Questions
540
+
541
+ **If auto mode:** Skip. Use all detected technologies as-is (keep all). Proceed to Step 6c.
542
+
543
+ Read `.planning/codebase/STACK.md` and extract architecturally significant dependencies.
544
+
545
+ **Filter to only framework-level choices:**
546
+ - Framework (React, Next.js, Express, Django, etc.)
547
+ - Database (PostgreSQL, MongoDB, Redis, etc.)
548
+ - ORM/Query builder (Drizzle, Prisma, SQLAlchemy, etc.)
549
+ - State management (Redux, Zustand, Vuex, etc.)
550
+ - Testing framework (Vitest, Jest, pytest, etc.)
551
+ - Build tools (Vite, Webpack, tsup, etc.)
552
+
553
+ **Explicitly EXCLUDE:**
554
+ - Utility libraries (lodash, uuid, date-fns, etc.)
555
+ - Dev tools (prettier, eslint, biome, etc.)
556
+ - Type definitions (@types/*)
557
+ - Runtime dependencies that are implementation details
558
+
559
+ **Cap at 8-10 items max** to avoid overwhelming the user.
560
+
561
+ Present to user:
562
+
563
+ ```
564
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
565
+ MAXSIM ► STACK PREFERENCES
566
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
567
+
568
+ Your codebase uses these key technologies. For each, do you want to keep, evolve, or replace?
569
+ ```
570
+
571
+ For each significant dependency, use AskUserQuestion:
572
+ - header: "[Technology Name]"
573
+ - question: "[Technology] [version] -- [detected purpose]"
574
+ - options:
575
+ - "Keep" -- Continue using [Technology] as-is
576
+ - "Evolve" -- Upgrade or modernize (describe target)
577
+ - "Replace" -- Switch to alternative (describe replacement)
578
+
579
+ If "Evolve" or "Replace": capture the target via freeform follow-up.
580
+
581
+ **Capture decisions as constraints** for CONVENTIONS.md and DECISIONS.md. "Keep" entries become locked stack conventions. "Evolve" entries become phase goals. "Replace" entries become phase goals with migration requirements.
582
+
583
+ ## Step 6c: Convention Confirmation
584
+
585
+ **If auto mode:** Skip. Promote all scan-detected conventions as-is. Proceed to Step 6d.
586
+
587
+ Read `.planning/codebase/CONVENTIONS.md` (from the codebase mapper agent) and extract detected coding conventions.
588
+
589
+ Present scan-detected conventions to user for confirmation:
590
+
591
+ ```
592
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
593
+ MAXSIM ► CONVENTION CONFIRMATION
594
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
595
+
596
+ Your codebase uses these patterns. Should new code follow them?
597
+ ```
598
+
599
+ For each major convention category (file naming, error handling, testing patterns, code style):
600
+
601
+ Use AskUserQuestion:
602
+ - header: "[Convention Category]"
603
+ - question: "Detected: [description of convention]. Should new code follow this?"
604
+ - options:
605
+ - "Yes, follow this" -- Promote to project convention
606
+ - "No, change it" -- Describe the preferred convention
607
+ - "Not sure" -- Skip for now
608
+
609
+ If "No, change it": capture the preferred convention via freeform.
610
+
611
+ **Promote confirmed conventions** to `.planning/CONVENTIONS.md` using the template from `templates/conventions.md`:
612
+ - Tech Stack: from Step 6b stack preferences (keep/evolve decisions)
613
+ - File Layout: from confirmed file structure conventions
614
+ - Error Handling: from confirmed error handling patterns
615
+ - Testing: from confirmed testing conventions
616
+ - Set `{{source}}` to "init-existing scan + user confirmation"
617
+ - Set `{{generated_or_confirmed}}` to "confirmed"
618
+
619
+ Write `.planning/CONVENTIONS.md`:
620
+ ```bash
621
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs artefakte-write .planning/CONVENTIONS.md
622
+ ```
623
+
624
+ ## Step 6d: No-Gos from Scan
625
+
626
+ **If auto mode:** Skip. Auto-generate no-gos from CONCERNS.md findings. Proceed to Step 7.
627
+
628
+ Read `.planning/codebase/CONCERNS.md` (if it exists) and extract findings as candidate no-gos.
629
+
630
+ Present scan findings as candidate no-gos:
631
+
632
+ ```
633
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
634
+ MAXSIM ► NO-GOS FROM CODEBASE SCAN
635
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
636
+
637
+ Based on the codebase scan, here are potential no-gos for new code:
638
+ ```
639
+
640
+ For each significant finding from CONCERNS.md:
641
+
642
+ Use AskUserQuestion:
643
+ - header: "No-Go?"
644
+ - question: "[Finding from CONCERNS.md] -- should this be a no-go for new code?"
645
+ - options:
646
+ - "Yes, add as no-go" -- This should be explicitly forbidden
647
+ - "No, skip" -- This is acceptable or not relevant
648
+ - "Modify" -- I want to adjust the wording
649
+
650
+ If "Modify": capture adjusted wording via freeform.
651
+
652
+ After all findings are reviewed:
653
+
654
+ Use AskUserQuestion:
655
+ - header: "Additional"
656
+ - question: "Any additional no-gos based on your experience with this codebase?"
657
+ - options:
658
+ - "No, that covers it" -- Proceed
659
+ - "Yes, let me add" -- Capture additional no-gos
660
+
661
+ Confirmed no-gos flow into NO-GOS.md during document generation (Step 9f) using the structured template from `templates/no-gos.md`.
662
+
538
663
  ## Step 7: Future Direction Questions
539
664
 
540
665
  **If auto mode:** Skip. Generate generic "continue development" goals. Proceed to Step 9.
@@ -1104,6 +1229,61 @@ Write content:
1104
1229
  node ~/.claude/maxsim/bin/maxsim-tools.cjs commit "docs: generate initialization artefakte" --files .planning/DECISIONS.md .planning/ACCEPTANCE-CRITERIA.md .planning/NO-GOS.md
1105
1230
  ```
1106
1231
 
1232
+ ## Step 9g: Agent Dry-Run Validation
1233
+
1234
+ **Always runs after all documents are generated — this is the quality gate for init output.**
1235
+
1236
+ Spawn a test agent to validate that all generated docs contain enough information for a fresh agent to start Phase 1 without asking clarifying questions.
1237
+
1238
+ ```
1239
+ Task(prompt="
1240
+ You are a fresh agent about to start Phase 1 of this project.
1241
+ Read the following files and report what you would need to ask before starting work.
1242
+
1243
+ Do NOT infer missing information. If a specific library version is not stated, report it as a gap.
1244
+ If the error handling pattern is not described, report it as a gap.
1245
+ Your job is to find what is NOT written, not to demonstrate you could figure it out.
1246
+
1247
+ <files_to_read>
1248
+ - .planning/PROJECT.md
1249
+ - .planning/REQUIREMENTS.md
1250
+ - .planning/CONVENTIONS.md
1251
+ - .planning/NO-GOS.md
1252
+ - .planning/ROADMAP.md
1253
+ </files_to_read>
1254
+
1255
+ Report format:
1256
+
1257
+ ## DRY-RUN RESULT
1258
+
1259
+ ### Can Start: YES/NO
1260
+
1261
+ ### Gaps Found:
1262
+ - [What information is missing]
1263
+ - [What is ambiguous]
1264
+ - [What would need clarification]
1265
+
1266
+ ### Quality Score: [1-10]
1267
+ (10 = could start immediately with zero questions, 1 = need major clarifications)
1268
+ ", model="{planner_model}", description="Agent readiness dry-run")
1269
+ ```
1270
+
1271
+ **Handle dry-run results:**
1272
+
1273
+ **If gaps found (Can Start = NO or Quality Score < 7):**
1274
+ - For each gap, update the relevant document to fill it:
1275
+ - Missing tech versions → update CONVENTIONS.md Tech Stack
1276
+ - Missing error handling → update CONVENTIONS.md Error Handling
1277
+ - Ambiguous requirements → update REQUIREMENTS.md
1278
+ - Missing constraints → update NO-GOS.md
1279
+ - Commit the fixes:
1280
+ ```bash
1281
+ node ~/.claude/maxsim/bin/maxsim-tools.cjs commit "docs: fill gaps from agent dry-run validation" --files .planning/PROJECT.md .planning/REQUIREMENTS.md .planning/CONVENTIONS.md .planning/NO-GOS.md
1282
+ ```
1283
+
1284
+ **If no gaps (Can Start = YES and Quality Score >= 7):**
1285
+ - Continue to Step 10.
1286
+
1107
1287
  ## Step 10: Git Stage and Summary
1108
1288
 
1109
1289
  Stage all changed files:
@@ -1126,6 +1306,7 @@ Print structured summary:
1126
1306
  Created:
1127
1307
  ✓ .planning/config.json -- Workflow preferences
1128
1308
  ✓ .planning/PROJECT.md -- Project context + current state
1309
+ ✓ .planning/CONVENTIONS.md -- Confirmed coding conventions for agents
1129
1310
  ✓ .planning/REQUIREMENTS.md -- [Stage]-format requirements
1130
1311
  ✓ .planning/ROADMAP.md -- [Milestone name] + [N] phases
1131
1312
  ✓ .planning/STATE.md -- Pre-populated project memory
@@ -1167,6 +1348,7 @@ Print next steps:
1167
1348
 
1168
1349
  - `.planning/config.json`
1169
1350
  - `.planning/PROJECT.md`
1351
+ - `.planning/CONVENTIONS.md`
1170
1352
  - `.planning/REQUIREMENTS.md`
1171
1353
  - `.planning/ROADMAP.md`
1172
1354
  - `.planning/STATE.md`
@@ -1200,6 +1382,11 @@ Print next steps:
1200
1382
  - [ ] config.json created with workflow settings
1201
1383
  - [ ] .planning/codebase/ populated with scan documents
1202
1384
  - [ ] Git staging completed
1385
+ - [ ] Stack preference questions asked (keep/evolve/replace for framework-level choices)
1386
+ - [ ] Convention confirmation completed (scan-detected conventions presented to user)
1387
+ - [ ] CONVENTIONS.md generated from confirmed conventions
1388
+ - [ ] CONCERNS.md findings presented as candidate no-gos
1389
+ - [ ] Agent dry-run validation passed (Quality Score >= 7)
1203
1390
  - [ ] Structured summary printed
1204
1391
  - [ ] Next steps suggested: /maxsim:roadmap then /maxsim:plan-phase 1
1205
1392