maxsimcli 4.2.3 → 4.3.1
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/dist/.tsbuildinfo +1 -1
- package/dist/assets/CHANGELOG.md +26 -0
- package/dist/assets/templates/agents/AGENTS.md +8 -6
- package/dist/assets/templates/agents/maxsim-code-reviewer.md +11 -0
- package/dist/assets/templates/agents/maxsim-executor.md +1 -0
- package/dist/assets/templates/agents/maxsim-planner.md +1 -0
- package/dist/assets/templates/agents/maxsim-project-researcher.md +96 -0
- package/dist/assets/templates/agents/maxsim-research-synthesizer.md +55 -3
- package/dist/assets/templates/agents/maxsim-roadmapper.md +11 -0
- package/dist/assets/templates/references/questioning.md +184 -33
- package/dist/assets/templates/skills/code-review/SKILL.md +5 -3
- package/dist/assets/templates/skills/{batch-worktree → maxsim-batch}/SKILL.md +3 -3
- package/dist/assets/templates/skills/{simplify → maxsim-simplify}/SKILL.md +7 -6
- package/dist/assets/templates/skills/using-maxsim/SKILL.md +4 -2
- package/dist/assets/templates/templates/conventions.md +138 -0
- package/dist/assets/templates/templates/no-gos.md +45 -4
- package/dist/assets/templates/templates/project.md +23 -0
- package/dist/assets/templates/workflows/batch.md +1 -1
- package/dist/assets/templates/workflows/init-existing.md +187 -0
- package/dist/assets/templates/workflows/new-project.md +195 -7
- package/dist/backend-server.cjs +13 -0
- package/dist/backend-server.cjs.map +1 -1
- package/dist/cli.cjs +350 -40
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +7 -3
- package/dist/cli.js.map +1 -1
- package/dist/core/core.d.ts +2 -0
- package/dist/core/core.d.ts.map +1 -1
- package/dist/core/core.js +67 -6
- package/dist/core/core.js.map +1 -1
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +9 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/init.d.ts +2 -0
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +6 -0
- package/dist/core/init.js.map +1 -1
- package/dist/core/milestone.d.ts +1 -1
- package/dist/core/milestone.d.ts.map +1 -1
- package/dist/core/milestone.js +81 -37
- package/dist/core/milestone.js.map +1 -1
- package/dist/core/phase.d.ts +3 -0
- package/dist/core/phase.d.ts.map +1 -1
- package/dist/core/phase.js +213 -0
- package/dist/core/phase.js.map +1 -1
- package/dist/core/state.d.ts +6 -0
- package/dist/core/state.d.ts.map +1 -1
- package/dist/core/state.js +69 -0
- package/dist/core/state.js.map +1 -1
- package/dist/core/types.d.ts +11 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core-RRjCSt0G.cjs.map +1 -1
- package/dist/install/manifest.d.ts.map +1 -1
- package/dist/install/manifest.js +5 -1
- package/dist/install/manifest.js.map +1 -1
- package/dist/install/shared.d.ts +1 -1
- package/dist/install/shared.d.ts.map +1 -1
- package/dist/install/shared.js +1 -1
- package/dist/install/shared.js.map +1 -1
- package/dist/install.cjs +6 -3
- package/dist/install.cjs.map +1 -1
- package/dist/mcp-server.cjs +13 -0
- package/dist/mcp-server.cjs.map +1 -1
- package/dist/skills-MYlMkYNt.cjs.map +1 -1
- package/package.json +1 -1
|
@@ -54,8 +54,10 @@ Skills are behavioral rules that activate automatically based on context:
|
|
|
54
54
|
| `memory-management` | Recurring patterns, errors, or decisions worth persisting |
|
|
55
55
|
| `brainstorming` | Before implementing any significant feature or design |
|
|
56
56
|
| `roadmap-writing` | When creating or restructuring a project roadmap |
|
|
57
|
-
| `simplify` |
|
|
58
|
-
| `code-review` |
|
|
57
|
+
| `maxsim-simplify` | Maintainability pass: reviewing code for duplication, dead code, and unnecessary complexity |
|
|
58
|
+
| `code-review` | Correctness gate: reviewing implementation for security, interfaces, errors, and test coverage |
|
|
59
|
+
| `sdd` | Executing sequential tasks where context rot is a concern (spec-driven dispatch) |
|
|
60
|
+
| `maxsim-batch` | Parallelizing work across 3-30 independent units in isolated worktrees |
|
|
59
61
|
|
|
60
62
|
### Available Agents
|
|
61
63
|
|
|
@@ -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
|
-
>
|
|
3
|
+
> Explicit boundaries, forbidden patterns, and constraints for this project. Violating these is a blocking issue.
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**Generated:** {{date}}
|
|
6
|
+
**Source:** {{source}}
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
---
|
|
8
9
|
|
|
9
|
-
|
|
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
|
|
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
|
|