maxsimcli 5.0.6 → 5.1.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.
- package/README.md +316 -288
- package/dist/assets/CHANGELOG.md +14 -0
- package/dist/assets/hooks/maxsim-capture-learnings.cjs +128 -0
- package/dist/assets/hooks/maxsim-capture-learnings.cjs.map +1 -0
- package/dist/assets/hooks/maxsim-check-update.cjs +126 -88
- package/dist/assets/hooks/maxsim-check-update.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-notification-sound.cjs +87 -43
- package/dist/assets/hooks/maxsim-notification-sound.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-statusline.cjs +45 -171
- package/dist/assets/hooks/maxsim-statusline.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-stop-sound.cjs +86 -43
- package/dist/assets/hooks/maxsim-stop-sound.cjs.map +1 -1
- package/dist/assets/hooks/maxsim-sync-reminder.cjs +72 -21
- package/dist/assets/hooks/maxsim-sync-reminder.cjs.map +1 -1
- package/dist/assets/templates/agents/AGENTS.md +62 -51
- package/dist/assets/templates/agents/executor.md +44 -59
- package/dist/assets/templates/agents/planner.md +36 -31
- package/dist/assets/templates/agents/researcher.md +35 -43
- package/dist/assets/templates/agents/verifier.md +29 -31
- package/dist/assets/templates/commands/maxsim/debug.md +20 -154
- package/dist/assets/templates/commands/maxsim/execute.md +19 -33
- package/dist/assets/templates/commands/maxsim/go.md +21 -20
- package/dist/assets/templates/commands/maxsim/help.md +5 -14
- package/dist/assets/templates/commands/maxsim/init.md +18 -40
- package/dist/assets/templates/commands/maxsim/plan.md +22 -37
- package/dist/assets/templates/commands/maxsim/progress.md +15 -16
- package/dist/assets/templates/commands/maxsim/quick.md +18 -29
- package/dist/assets/templates/commands/maxsim/settings.md +18 -26
- package/dist/assets/templates/references/continuation-format.md +2 -4
- package/dist/assets/templates/references/model-profiles.md +2 -2
- package/dist/assets/templates/references/planning-config.md +10 -11
- package/dist/assets/templates/references/self-improvement.md +120 -0
- package/dist/assets/templates/rules/conventions.md +1 -1
- package/dist/assets/templates/rules/verification-protocol.md +1 -1
- package/dist/assets/templates/skills/brainstorming/SKILL.md +35 -26
- package/dist/assets/templates/skills/code-review/SKILL.md +78 -55
- package/dist/assets/templates/skills/commit-conventions/SKILL.md +70 -36
- package/dist/assets/templates/skills/github-operations/SKILL.md +142 -0
- package/dist/assets/templates/skills/handoff-contract/SKILL.md +62 -28
- package/dist/assets/templates/skills/maxsim-batch/SKILL.md +68 -42
- package/dist/assets/templates/skills/maxsim-simplify/SKILL.md +65 -40
- package/dist/assets/templates/skills/project-memory/SKILL.md +121 -0
- package/dist/assets/templates/skills/research/SKILL.md +126 -0
- package/dist/assets/templates/skills/roadmap-writing/SKILL.md +71 -68
- package/dist/assets/templates/skills/systematic-debugging/SKILL.md +37 -25
- package/dist/assets/templates/skills/tdd/SKILL.md +36 -39
- package/dist/assets/templates/skills/using-maxsim/SKILL.md +69 -55
- package/dist/assets/templates/skills/verification/SKILL.md +167 -0
- package/dist/assets/templates/workflows/batch.md +249 -268
- package/dist/assets/templates/workflows/diagnose-issues.md +225 -151
- package/dist/assets/templates/workflows/execute-plan.md +191 -981
- package/dist/assets/templates/workflows/execute.md +350 -309
- package/dist/assets/templates/workflows/go.md +119 -138
- package/dist/assets/templates/workflows/health.md +71 -114
- package/dist/assets/templates/workflows/help.md +85 -147
- package/dist/assets/templates/workflows/init-existing.md +180 -1373
- package/dist/assets/templates/workflows/init.md +53 -165
- package/dist/assets/templates/workflows/new-milestone.md +91 -334
- package/dist/assets/templates/workflows/new-project.md +165 -1384
- package/dist/assets/templates/workflows/plan-create.md +182 -73
- package/dist/assets/templates/workflows/plan-discuss.md +89 -82
- package/dist/assets/templates/workflows/plan-research.md +191 -85
- package/dist/assets/templates/workflows/plan.md +122 -58
- package/dist/assets/templates/workflows/progress.md +76 -310
- package/dist/assets/templates/workflows/quick.md +70 -495
- package/dist/assets/templates/workflows/sdd.md +231 -221
- package/dist/assets/templates/workflows/settings.md +90 -120
- package/dist/assets/templates/workflows/verify-phase.md +296 -258
- package/dist/cli.cjs +17 -23465
- package/dist/cli.cjs.map +1 -1
- package/dist/install.cjs +356 -8358
- package/dist/install.cjs.map +1 -1
- package/package.json +16 -22
- package/dist/assets/templates/skills/agent-system-map/SKILL.md +0 -92
- package/dist/assets/templates/skills/evidence-collection/SKILL.md +0 -87
- package/dist/assets/templates/skills/github-artifact-protocol/SKILL.md +0 -67
- package/dist/assets/templates/skills/github-tools-guide/SKILL.md +0 -89
- package/dist/assets/templates/skills/input-validation/SKILL.md +0 -51
- package/dist/assets/templates/skills/memory-management/SKILL.md +0 -75
- package/dist/assets/templates/skills/research-methodology/SKILL.md +0 -137
- package/dist/assets/templates/skills/sdd/SKILL.md +0 -91
- package/dist/assets/templates/skills/tool-priority-guide/SKILL.md +0 -80
- package/dist/assets/templates/skills/verification-before-completion/SKILL.md +0 -71
- package/dist/assets/templates/skills/verification-gates/SKILL.md +0 -169
- package/dist/assets/templates/workflows/discuss-phase.md +0 -683
- package/dist/assets/templates/workflows/research-phase.md +0 -73
- package/dist/assets/templates/workflows/verify-work.md +0 -572
- package/dist/core-D5zUr9cb.cjs +0 -4305
- package/dist/core-D5zUr9cb.cjs.map +0 -1
- package/dist/skills-CjFWZIGM.cjs +0 -6824
- package/dist/skills-CjFWZIGM.cjs.map +0 -1
|
@@ -1,354 +1,409 @@
|
|
|
1
1
|
<sanity_check>
|
|
2
2
|
Before executing any step in this workflow, verify:
|
|
3
|
-
1. The current directory contains a `.planning/` folder
|
|
4
|
-
2. `.planning/ROADMAP.md` exists
|
|
3
|
+
1. The current directory contains a `.planning/` folder — if not, stop and tell the user to run `/maxsim:init` first.
|
|
4
|
+
2. `.planning/ROADMAP.md` exists — if not, stop and tell the user to initialize the project.
|
|
5
|
+
3. Git is initialized (`git rev-parse --git-dir` succeeds) — worktrees require a git repository.
|
|
5
6
|
</sanity_check>
|
|
6
7
|
|
|
7
8
|
<purpose>
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
This file is the ORCHESTRATOR ONLY. Per-plan execution logic lives in:
|
|
11
|
-
- @~/.claude/maxsim/workflows/execute-plan.md (per-plan subagent execution)
|
|
12
|
-
|
|
13
|
-
Verification is handled inline (spawning verifier agent) since it is a stage of this workflow, not a separate command.
|
|
9
|
+
Wave-based parallel orchestrator for phase execution. GitHub Issues is the SOLE source of truth for plans, task status, and completion. Every executor runs in an isolated git worktree. Agents are spawned in a SINGLE message block per wave for maximum parallelism. Verification is automatic and strict (max 3 total attempts).
|
|
14
10
|
</purpose>
|
|
15
11
|
|
|
16
12
|
<process>
|
|
17
13
|
|
|
18
14
|
## 1. Initialize
|
|
19
15
|
|
|
20
|
-
|
|
16
|
+
Resolve executor model and load phase state in one call:
|
|
21
17
|
|
|
22
18
|
```bash
|
|
19
|
+
EXECUTOR_MODEL=$(node ~/.claude/maxsim/bin/maxsim-tools.cjs resolve-model executor --raw)
|
|
20
|
+
VERIFIER_MODEL=$(node ~/.claude/maxsim/bin/maxsim-tools.cjs resolve-model verifier --raw)
|
|
23
21
|
INIT=$(node ~/.claude/maxsim/bin/maxsim-tools.cjs init execute-phase "$PHASE")
|
|
24
22
|
```
|
|
25
23
|
|
|
26
|
-
Parse `$ARGUMENTS` for: phase number (required), `--
|
|
24
|
+
Parse `$ARGUMENTS` for: phase number (required), `--auto` (skip confirmation prompts), `--gaps-only` (execute gap-closure plans only).
|
|
27
25
|
|
|
28
|
-
Parse JSON for: `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `plans`, `incomplete_plans`, `plan_count`, `incomplete_count`, `has_verification`, `
|
|
29
|
-
|
|
30
|
-
All flags from `$ARGUMENTS` are passed through to the execute-phase workflow steps so they are available for execution mode decision and auto-advance detection.
|
|
26
|
+
Parse JSON for: `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `plans`, `incomplete_plans`, `plan_count`, `incomplete_count`, `has_verification`, `executor_model`, `verifier_model`, `parallelization`, `phase_issue_number`, `task_mappings`.
|
|
31
27
|
|
|
32
28
|
**If `phase_found` is false:**
|
|
33
29
|
```
|
|
34
30
|
Phase [X] not found in roadmap.
|
|
35
|
-
|
|
36
31
|
Use /maxsim:progress to see available phases.
|
|
37
32
|
```
|
|
38
33
|
Exit workflow.
|
|
39
34
|
|
|
40
|
-
|
|
35
|
+
## 2. Load Phase Inventory from GitHub Issues
|
|
41
36
|
|
|
42
|
-
|
|
37
|
+
GitHub Issues is the SOLE source of truth. All plan discovery happens here.
|
|
43
38
|
|
|
44
|
-
|
|
45
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue --issue-number $PHASE_ISSUE_NUMBER --include-comments
|
|
46
|
-
```
|
|
39
|
+
**Step 2a — Fetch phase issue and sub-issues:**
|
|
47
40
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
No plans found for Phase {phase_number}.
|
|
41
|
+
```bash
|
|
42
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue \
|
|
43
|
+
--issue-number $PHASE_ISSUE_NUMBER --include-comments
|
|
52
44
|
|
|
53
|
-
|
|
45
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github list-sub-issues \
|
|
46
|
+
--phase-issue-number $PHASE_ISSUE_NUMBER
|
|
54
47
|
```
|
|
55
|
-
Exit workflow.
|
|
56
48
|
|
|
57
|
-
|
|
49
|
+
**Step 2b — Parse plan comments:**
|
|
58
50
|
|
|
59
|
-
|
|
51
|
+
A plan comment is one that contains either:
|
|
52
|
+
- A `<!-- maxsim:type=plan -->` HTML marker, OR
|
|
53
|
+
- A heading matching `## Plan NN`
|
|
60
54
|
|
|
61
|
-
|
|
55
|
+
For each plan comment, extract:
|
|
56
|
+
- Plan number (from `## Plan NN` heading or frontmatter)
|
|
57
|
+
- YAML frontmatter: `wave`, `dependencies`, `autonomous`, `objective`, `gap_closure`
|
|
58
|
+
- Task list and success criteria
|
|
59
|
+
- Associated task sub-issue numbers (from `task_mappings`)
|
|
62
60
|
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue --issue-number $PHASE_ISSUE_NUMBER --include-comments
|
|
66
|
-
```
|
|
61
|
+
**Step 2c — Determine completion per plan:**
|
|
67
62
|
|
|
68
|
-
|
|
69
|
-
- A `<!-- maxsim:type=plan -->` HTML comment marker, OR
|
|
70
|
-
- A heading matching `## Plan NN` (where NN is a number)
|
|
63
|
+
A plan is complete when ALL its task sub-issues are closed. Also accept `<!-- maxsim:type=summary -->` comments as a secondary signal.
|
|
71
64
|
|
|
72
|
-
|
|
73
|
-
- Extract the plan number (from the `## Plan NN` heading or frontmatter)
|
|
74
|
-
- Parse YAML frontmatter from the comment body for: `wave`, `dependencies`, `autonomous`, `objective`, `gap_closure`
|
|
75
|
-
- Store plan content in memory as `PLAN_COMMENTS[]`
|
|
65
|
+
**Step 2d — Build plan inventory:**
|
|
76
66
|
|
|
77
|
-
4. Check completion status for each plan by calling:
|
|
78
|
-
```bash
|
|
79
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github list-sub-issues --phase-issue-number $PHASE_ISSUE_NUMBER
|
|
80
|
-
```
|
|
81
|
-
A plan is considered complete when ALL of its task sub-issues are closed (state: closed).
|
|
82
|
-
Additionally, check for `<!-- maxsim:type=summary -->` comments on the phase issue as a secondary completion signal.
|
|
83
|
-
|
|
84
|
-
5. Build `plan_inventory` from GitHub data:
|
|
85
|
-
- `plans[]`: each with `id`, `wave`, `autonomous`, `objective`, `has_summary` (derived from sub-issue closure)
|
|
86
|
-
- `incomplete_plans[]`: plans where not all task sub-issues are closed
|
|
87
|
-
- `plan_count`: total plan comments found
|
|
88
|
-
- `incomplete_count`: count of incomplete plans
|
|
89
|
-
|
|
90
|
-
When GitHub integration is NOT active (no `phase_issue_number`):
|
|
91
67
|
```
|
|
92
|
-
|
|
68
|
+
plan_inventory:
|
|
69
|
+
plans[] — all plans with id, wave, autonomous, objective, task_issue_numbers
|
|
70
|
+
incomplete[] — plans with at least one open task sub-issue
|
|
71
|
+
plan_count — total plan comments found
|
|
72
|
+
incomplete_count — count of incomplete plans
|
|
73
|
+
```
|
|
93
74
|
|
|
94
|
-
|
|
75
|
+
**If no plan comments found:**
|
|
76
|
+
```
|
|
77
|
+
No plans found for Phase {phase_number}.
|
|
78
|
+
Run /maxsim:plan {phase_number} first to create execution plans.
|
|
95
79
|
```
|
|
96
80
|
Exit workflow.
|
|
97
81
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
If phase_issue_number is set, optionally detect whether the phase issue was externally modified since last read:
|
|
82
|
+
**Step 2e — Detect external edits (WIRE-06):**
|
|
101
83
|
|
|
102
84
|
```bash
|
|
103
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github detect-external-edits
|
|
85
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github detect-external-edits \
|
|
86
|
+
--phase-number "$PHASE_NUMBER"
|
|
104
87
|
```
|
|
105
88
|
|
|
106
|
-
If external edits
|
|
89
|
+
If external edits detected, warn before proceeding:
|
|
107
90
|
```
|
|
108
|
-
|
|
109
|
-
Review
|
|
91
|
+
Warning: Phase issue #{phase_issue_number} was modified externally since last check.
|
|
92
|
+
Review changes before continuing? (yes/no)
|
|
110
93
|
```
|
|
111
94
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
Determine where to start based on phase artifacts:
|
|
95
|
+
## 3. Detect Execution State
|
|
115
96
|
|
|
116
97
|
| Condition | State | Action |
|
|
117
98
|
|-----------|-------|--------|
|
|
118
|
-
| `incomplete_count == 0` AND `has_verification == true` | Already done | Go to
|
|
119
|
-
| `incomplete_count == 0` AND `has_verification == false` | Needs verification |
|
|
120
|
-
| `incomplete_count > 0` | Needs execution |
|
|
99
|
+
| `incomplete_count == 0` AND `has_verification == true` | Already done | Go to Re-entry flow (step 4) |
|
|
100
|
+
| `incomplete_count == 0` AND `has_verification == false` | Needs verification | Go to Auto-Verify (step 7) |
|
|
101
|
+
| `incomplete_count > 0` | Needs execution | Go to Plan Mode (step 5) |
|
|
121
102
|
|
|
122
103
|
Display detected state:
|
|
123
104
|
```
|
|
124
105
|
Phase {phase_number}: {phase_name}
|
|
125
|
-
|
|
106
|
+
State: {Already executed | Needs verification | Ready to execute}
|
|
126
107
|
Plans: {plan_count} total, {incomplete_count} incomplete
|
|
127
108
|
```
|
|
128
109
|
|
|
129
|
-
##
|
|
130
|
-
|
|
131
|
-
When all plans are complete and verification has passed, show status and offer options.
|
|
110
|
+
## 4. Re-entry Flow (Already Executed and Verified)
|
|
132
111
|
|
|
133
112
|
Display:
|
|
134
113
|
```
|
|
135
114
|
## Phase {phase_number} Already Executed
|
|
136
115
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
116
|
+
Plans: {plan_count} — all complete
|
|
117
|
+
Verification: Passed
|
|
118
|
+
Phase issue: #{phase_issue_number}
|
|
140
119
|
|
|
141
|
-
|
|
142
|
-
1. View results
|
|
143
|
-
2. Re-execute from scratch
|
|
144
|
-
3. View verification
|
|
120
|
+
Options:
|
|
121
|
+
1. View results — show plan summaries from GitHub comments
|
|
122
|
+
2. Re-execute from scratch — reopen task sub-issues and restart
|
|
123
|
+
3. View verification — show verification comment
|
|
145
124
|
4. Done (exit)
|
|
146
125
|
```
|
|
147
126
|
|
|
148
|
-
Wait for user choice
|
|
149
|
-
|
|
150
|
-
- **
|
|
151
|
-
- **
|
|
152
|
-
- **View verification:** Fetch and display the verification comment (`<!-- maxsim:type=verification -->`) from the phase issue, then re-show options.
|
|
127
|
+
Wait for user choice:
|
|
128
|
+
- **View results:** Fetch and display `<!-- maxsim:type=summary -->` comments, re-show options.
|
|
129
|
+
- **Re-execute:** Reopen all task sub-issues via `github reopen-issue`, restart at step 5.
|
|
130
|
+
- **View verification:** Fetch and display `<!-- maxsim:type=verification -->` comment, re-show options.
|
|
153
131
|
- **Done:** Exit workflow.
|
|
154
132
|
|
|
155
|
-
##
|
|
133
|
+
## 5. Plan Mode — Review and Confirm
|
|
134
|
+
|
|
135
|
+
**Enter Plan Mode before spawning any executors.**
|
|
156
136
|
|
|
157
|
-
|
|
137
|
+
Group incomplete plans by wave. Display the full execution plan:
|
|
158
138
|
|
|
159
|
-
|
|
139
|
+
```
|
|
140
|
+
## Execution Plan
|
|
160
141
|
|
|
161
|
-
|
|
142
|
+
Phase {phase_number}: {phase_name} — {incomplete_count} plans across {wave_count} waves
|
|
162
143
|
|
|
163
|
-
|
|
144
|
+
| Wave | Plan ID | Objective |
|
|
145
|
+
|------|---------|-----------|
|
|
146
|
+
| 1 | {id} | {from plan objective, 5-10 words} |
|
|
147
|
+
| 1 | {id} | ... |
|
|
148
|
+
| 2 | {id} | ... |
|
|
164
149
|
|
|
165
|
-
|
|
150
|
+
Execution model: {executor_model}
|
|
151
|
+
Parallelism: {parallelization}
|
|
152
|
+
Isolation: worktree (each agent gets its own git worktree)
|
|
166
153
|
|
|
167
|
-
|
|
154
|
+
Confirm to begin execution? (yes/no)
|
|
168
155
|
```
|
|
169
|
-
## Execution Plan
|
|
170
156
|
|
|
171
|
-
|
|
157
|
+
Wait for user confirmation unless `--auto` flag is set.
|
|
172
158
|
|
|
173
|
-
|
|
174
|
-
|------|-------|----------------|
|
|
175
|
-
| 1 | 03-01, 03-02 | {from plan objectives, 3-8 words} |
|
|
176
|
-
| 2 | 03-03 | ... |
|
|
177
|
-
```
|
|
159
|
+
**Exit Plan Mode after user confirms.** Begin wave execution.
|
|
178
160
|
|
|
179
|
-
|
|
161
|
+
## 6. Execute Waves
|
|
180
162
|
|
|
181
|
-
Execute each wave in sequence. Within a wave
|
|
163
|
+
Execute each wave in sequence. Within a wave, spawn ALL agents in a SINGLE message block (all Agent calls at once) with `run_in_background: true` for parallelism.
|
|
182
164
|
|
|
183
165
|
**For each wave:**
|
|
184
166
|
|
|
185
|
-
1
|
|
167
|
+
### 6.1 Describe wave before spawning
|
|
168
|
+
|
|
169
|
+
For each plan in the wave, read its `objective`. Display:
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
---
|
|
173
|
+
## Wave {N} — Spawning {count} agent(s)
|
|
174
|
+
|
|
175
|
+
**{Plan ID}: {Plan Name}**
|
|
176
|
+
{2-3 sentences: what this builds, technical approach, why it matters}
|
|
186
177
|
|
|
187
|
-
|
|
178
|
+
[Additional plans in this wave...]
|
|
179
|
+
---
|
|
180
|
+
```
|
|
188
181
|
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
## Wave {N}
|
|
182
|
+
### 6.2 Spawn all wave agents in ONE message block
|
|
192
183
|
|
|
193
|
-
|
|
194
|
-
{2-3 sentences: what this builds, technical approach, why it matters}
|
|
184
|
+
All Agent calls for the wave are issued simultaneously. Each agent is isolated in its own worktree.
|
|
195
185
|
|
|
196
|
-
|
|
197
|
-
---
|
|
198
|
-
```
|
|
186
|
+
For each plan in the wave:
|
|
199
187
|
|
|
200
|
-
|
|
188
|
+
```
|
|
189
|
+
Agent(
|
|
190
|
+
subagent_type="executor",
|
|
191
|
+
model="{executor_model}",
|
|
192
|
+
isolation="worktree",
|
|
193
|
+
run_in_background=true,
|
|
194
|
+
prompt="
|
|
195
|
+
You are an executor agent for MaxsimCLI v6.
|
|
196
|
+
|
|
197
|
+
<objective>
|
|
198
|
+
Execute plan {plan_id} of phase {phase_number}: {phase_name}.
|
|
199
|
+
You are running in an isolated git worktree. Work only in your worktree.
|
|
200
|
+
Commit each task atomically using conventional commits.
|
|
201
|
+
Post a summary comment to the phase GitHub issue when all tasks complete.
|
|
202
|
+
Move task sub-issues on the board as you work (open -> In Progress -> Done per task).
|
|
203
|
+
</objective>
|
|
204
|
+
|
|
205
|
+
<plan_content>
|
|
206
|
+
{full plan_comment_body for this plan, including all tasks and success criteria}
|
|
207
|
+
</plan_content>
|
|
208
|
+
|
|
209
|
+
<github_context>
|
|
210
|
+
Phase issue number: {phase_issue_number}
|
|
211
|
+
Plan ID: {plan_id}
|
|
212
|
+
Task sub-issue numbers: {task_issue_numbers for this plan}
|
|
213
|
+
Task mappings: {task_mappings for this plan}
|
|
214
|
+
</github_context>
|
|
215
|
+
|
|
216
|
+
<files_to_read>
|
|
217
|
+
Read these files at execution start:
|
|
218
|
+
- .planning/STATE.md
|
|
219
|
+
- .planning/config.json (if exists)
|
|
220
|
+
- ./CLAUDE.md (if exists — follow project conventions)
|
|
221
|
+
</files_to_read>
|
|
222
|
+
|
|
223
|
+
<codebase_conventions>
|
|
224
|
+
- Follow conventional commits: type(scope): description
|
|
225
|
+
- Commit each task individually — one commit per task
|
|
226
|
+
- Stage specific files (never git add . or git add -A)
|
|
227
|
+
- Run tests relevant to changed files before committing
|
|
228
|
+
- Do not touch files outside your worktree scope
|
|
229
|
+
</codebase_conventions>
|
|
230
|
+
|
|
231
|
+
<board_transitions>
|
|
232
|
+
When starting a task: move its sub-issue to In Progress
|
|
233
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue --issue-number {task_issue} --status 'In Progress'
|
|
234
|
+
When completing a task: move its sub-issue to Done, then close it
|
|
235
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue --issue-number {task_issue} --status 'Done'
|
|
236
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github close-issue --issue-number {task_issue}
|
|
237
|
+
</board_transitions>
|
|
238
|
+
|
|
239
|
+
<summary_posting>
|
|
240
|
+
After all tasks complete, post a summary comment on the phase issue:
|
|
241
|
+
TMPFILE=\$(mktemp)
|
|
242
|
+
cat > \"\$TMPFILE\" << 'SUMMARY_EOF'
|
|
243
|
+
{summary content including: one-liner, task table, commits, deviations}
|
|
244
|
+
<!-- maxsim:type=summary -->
|
|
245
|
+
SUMMARY_EOF
|
|
246
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment \\
|
|
247
|
+
--issue-number {phase_issue_number} --body-file \"\$TMPFILE\" --type summary
|
|
248
|
+
</summary_posting>
|
|
249
|
+
|
|
250
|
+
<success_criteria>
|
|
251
|
+
- [ ] All tasks in plan executed
|
|
252
|
+
- [ ] Each task committed individually with conventional commit message
|
|
253
|
+
- [ ] Task sub-issues moved: In Progress when started, Done and closed when complete
|
|
254
|
+
- [ ] Summary posted as GitHub comment (type=summary) on phase issue
|
|
255
|
+
- [ ] Final line of output: RESULT: PASS or RESULT: FAIL — {reason}
|
|
256
|
+
</success_criteria>
|
|
257
|
+
"
|
|
258
|
+
)
|
|
259
|
+
```
|
|
201
260
|
|
|
202
|
-
|
|
261
|
+
### 6.3 Wait for all wave agents to complete
|
|
203
262
|
|
|
204
|
-
|
|
205
|
-
Task(
|
|
206
|
-
subagent_type="executor",
|
|
207
|
-
model="{executor_model}",
|
|
208
|
-
prompt="
|
|
209
|
-
<objective>
|
|
210
|
-
Execute plan {plan_number} of phase {phase_number}-{phase_name}.
|
|
211
|
-
Commit each task atomically. Post SUMMARY as GitHub comment. Update STATE.md and ROADMAP.md.
|
|
212
|
-
Move task sub-issues on the board as you work (In Progress → Done per task).
|
|
213
|
-
</objective>
|
|
263
|
+
Do not proceed until every agent in the current wave has returned.
|
|
214
264
|
|
|
215
|
-
|
|
216
|
-
@~/.claude/maxsim/workflows/execute-plan.md
|
|
217
|
-
@~/.claude/maxsim/templates/summary.md
|
|
218
|
-
@~/.claude/maxsim/references/checkpoints.md
|
|
219
|
-
@~/.claude/maxsim/references/tdd.md
|
|
220
|
-
</execution_context>
|
|
265
|
+
### 6.4 Verify completed tasks (automatic)
|
|
221
266
|
|
|
222
|
-
|
|
223
|
-
Phase issue number: {phase_issue_number}
|
|
224
|
-
Plan comment: {plan_comment_body}
|
|
225
|
-
Task mappings: {task_mappings_for_this_plan}
|
|
226
|
-
</github_context>
|
|
267
|
+
For each plan completed in this wave, run spot-checks:
|
|
227
268
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
</files_to_read>
|
|
269
|
+
```bash
|
|
270
|
+
# Check summary comment exists
|
|
271
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue \
|
|
272
|
+
--issue-number $PHASE_ISSUE_NUMBER --include-comments
|
|
273
|
+
# Look for <!-- maxsim:type=summary --> comment for this plan
|
|
234
274
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
- [ ] Each task committed individually
|
|
238
|
-
- [ ] Summary posted as GitHub comment (`github post-comment` with type=summary) on phase issue
|
|
239
|
-
- [ ] Task sub-issues moved: In Progress when started, Done when completed
|
|
240
|
-
- [ ] STATE.md updated with position and decisions
|
|
241
|
-
- [ ] ROADMAP.md updated with plan progress
|
|
242
|
-
</success_criteria>
|
|
243
|
-
"
|
|
244
|
-
)
|
|
245
|
-
```
|
|
275
|
+
# Check at least one commit exists for this plan
|
|
276
|
+
git log --oneline --all --grep="{phase_number}-{plan_id}" 2>/dev/null
|
|
246
277
|
|
|
247
|
-
|
|
278
|
+
# Check all task sub-issues for this plan are closed
|
|
279
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github list-sub-issues \
|
|
280
|
+
--phase-issue-number $PHASE_ISSUE_NUMBER
|
|
281
|
+
```
|
|
248
282
|
|
|
249
|
-
|
|
283
|
+
Spot-check passes when:
|
|
284
|
+
- A `<!-- maxsim:type=summary -->` comment exists for this plan
|
|
285
|
+
- At least 1 commit found matching `{phase}-{plan}` grep
|
|
286
|
+
- All task sub-issues for this plan are closed
|
|
287
|
+
- No `## Self-Check: FAILED` in the summary comment body
|
|
250
288
|
|
|
251
|
-
|
|
252
|
-
- Check that a `<!-- maxsim:type=summary -->` comment exists on the phase issue for this plan
|
|
253
|
-
- Check `git log --oneline --all --grep="{phase}-{plan}"` returns at least 1 commit
|
|
254
|
-
- Verify task sub-issues for this plan are all closed
|
|
255
|
-
- Check for `## Self-Check: FAILED` in the summary comment body
|
|
256
|
-
- Check for `## Review Cycle` section in summary -- verify both Spec and Code stages show PASS
|
|
289
|
+
If any spot-check fails: report which plan failed. Ask user: "Retry plan or continue with remaining waves?"
|
|
257
290
|
|
|
258
|
-
|
|
291
|
+
### 6.5 Report wave completion
|
|
259
292
|
|
|
260
|
-
|
|
293
|
+
```
|
|
294
|
+
---
|
|
295
|
+
## Wave {N} Complete
|
|
261
296
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
297
|
+
{For each plan in wave:}
|
|
298
|
+
**{Plan ID}: {Plan Name}**
|
|
299
|
+
{What was built — from summary comment one-liner}
|
|
300
|
+
{Notable deviations, if any}
|
|
265
301
|
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
302
|
+
{If more waves remain: what this wave enables for wave N+1}
|
|
303
|
+
---
|
|
304
|
+
```
|
|
269
305
|
|
|
270
|
-
|
|
271
|
-
---
|
|
272
|
-
```
|
|
306
|
+
### 6.6 Handle checkpoint plans
|
|
273
307
|
|
|
274
|
-
|
|
308
|
+
Plans with `autonomous: false` may pause for user input. When a checkpoint is returned:
|
|
309
|
+
1. Present the checkpoint to the user
|
|
310
|
+
2. Collect user response
|
|
311
|
+
3. Spawn a continuation agent for that plan
|
|
312
|
+
4. Wait for continuation to complete before advancing to next wave
|
|
275
313
|
|
|
276
|
-
7
|
|
314
|
+
### 6.7 Advance to next wave
|
|
277
315
|
|
|
278
|
-
|
|
316
|
+
Repeat steps 6.1–6.6 for each subsequent wave.
|
|
317
|
+
|
|
318
|
+
## 7. Execution Summary Gate
|
|
279
319
|
|
|
280
320
|
After all waves complete:
|
|
281
321
|
|
|
282
322
|
```
|
|
283
323
|
## Gate: Execution Complete
|
|
284
324
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
325
|
+
Plans executed: {completed}/{total}
|
|
326
|
+
Waves: {wave_count}
|
|
327
|
+
Commits: {list commit summaries from summary comments}
|
|
288
328
|
|
|
289
|
-
|
|
329
|
+
Moving phase to In Review and proceeding to verification...
|
|
290
330
|
```
|
|
291
331
|
|
|
292
|
-
|
|
332
|
+
Move phase issue to "In Review":
|
|
333
|
+
|
|
293
334
|
```bash
|
|
294
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue
|
|
335
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue \
|
|
336
|
+
--issue-number $PHASE_ISSUE_NUMBER --status "In Review"
|
|
295
337
|
```
|
|
296
|
-
This signals all tasks are complete and the phase is awaiting verification. The phase moves to "Done" only after verification passes.
|
|
297
|
-
|
|
298
|
-
Wait for user confirmation before proceeding to verification.
|
|
299
|
-
|
|
300
|
-
## 5. Auto-Verify
|
|
301
338
|
|
|
302
|
-
|
|
339
|
+
Unless `--auto` is set, confirm with user before starting verification.
|
|
303
340
|
|
|
304
|
-
|
|
341
|
+
## 8. Auto-Verify
|
|
305
342
|
|
|
306
|
-
|
|
343
|
+
Spawn the verifier agent to check phase goal achievement:
|
|
307
344
|
|
|
308
345
|
```bash
|
|
309
346
|
VERIFIER_MODEL=$(node ~/.claude/maxsim/bin/maxsim-tools.cjs resolve-model verifier --raw)
|
|
310
347
|
```
|
|
311
348
|
|
|
312
349
|
```
|
|
313
|
-
|
|
314
|
-
prompt="Verify phase {phase_number} goal achievement.
|
|
315
|
-
Phase directory: {phase_dir}
|
|
316
|
-
Phase issue: #{phase_issue_number}
|
|
317
|
-
Phase goal: {goal from ROADMAP.md}
|
|
318
|
-
Phase requirement IDs: {phase_req_ids}
|
|
319
|
-
Check must_haves against actual codebase.
|
|
320
|
-
Cross-reference requirement IDs from plan frontmatter against REQUIREMENTS.md.
|
|
321
|
-
Post verification results as a GitHub comment (`github post-comment` with type=verification) on the phase issue.
|
|
322
|
-
Also write VERIFICATION.md to the phase directory for local reference.",
|
|
350
|
+
Agent(
|
|
323
351
|
subagent_type="verifier",
|
|
324
|
-
model="{verifier_model}"
|
|
352
|
+
model="{verifier_model}",
|
|
353
|
+
prompt="
|
|
354
|
+
Verify phase {phase_number}: {phase_name} goal achievement.
|
|
355
|
+
|
|
356
|
+
Phase issue: #{phase_issue_number}
|
|
357
|
+
Phase goal: {goal from ROADMAP.md}
|
|
358
|
+
Phase requirement IDs: {phase_req_ids}
|
|
359
|
+
|
|
360
|
+
Instructions:
|
|
361
|
+
1. Load the phase issue and all comments from GitHub
|
|
362
|
+
2. Check must-haves from ROADMAP.md success_criteria against the actual codebase
|
|
363
|
+
3. Cross-reference requirement IDs from plan frontmatter against REQUIREMENTS.md
|
|
364
|
+
4. Run automated checks: tests, build, lint (detect runners from package.json / config files)
|
|
365
|
+
5. Identify any gaps or stubs
|
|
366
|
+
|
|
367
|
+
Post verification result as a GitHub comment on the phase issue:
|
|
368
|
+
TMPFILE=\$(mktemp)
|
|
369
|
+
cat > \"\$TMPFILE\" << 'VERIFY_EOF'
|
|
370
|
+
{verification result with status, score, evidence per criterion}
|
|
371
|
+
<!-- maxsim:type=verification -->
|
|
372
|
+
VERIFY_EOF
|
|
373
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment \\
|
|
374
|
+
--issue-number {phase_issue_number} --body-file \"\$TMPFILE\" --type verification
|
|
375
|
+
|
|
376
|
+
Return: RESULT: PASS or RESULT: FAIL — {gaps list}
|
|
377
|
+
"
|
|
325
378
|
)
|
|
326
379
|
```
|
|
327
380
|
|
|
328
|
-
###
|
|
381
|
+
### 8.1 Parse verifier result
|
|
329
382
|
|
|
330
|
-
Read
|
|
383
|
+
Read the verification comment from GitHub:
|
|
331
384
|
|
|
332
385
|
```bash
|
|
333
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue
|
|
386
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github get-issue \
|
|
387
|
+
--issue-number $PHASE_ISSUE_NUMBER --include-comments
|
|
334
388
|
```
|
|
335
389
|
|
|
336
|
-
Look for
|
|
390
|
+
Look for `<!-- maxsim:type=verification -->` comment and parse its `status:` field.
|
|
337
391
|
|
|
338
|
-
**If
|
|
392
|
+
**If passed:** Show gate and proceed to step 9.
|
|
339
393
|
|
|
340
394
|
```
|
|
341
395
|
## Gate: Verification Passed
|
|
342
396
|
|
|
343
|
-
|
|
344
|
-
|
|
397
|
+
Status: All must-haves verified
|
|
398
|
+
Evidence: {summary from verification comment}
|
|
345
399
|
|
|
346
400
|
Phase {phase_number} complete!
|
|
347
401
|
```
|
|
348
402
|
|
|
349
|
-
Move phase issue to
|
|
403
|
+
Move phase issue to Done:
|
|
350
404
|
```bash
|
|
351
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue
|
|
405
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github move-issue \
|
|
406
|
+
--issue-number $PHASE_ISSUE_NUMBER --status "Done"
|
|
352
407
|
```
|
|
353
408
|
|
|
354
409
|
Post phase completion comment:
|
|
@@ -359,136 +414,125 @@ cat > "$TMPFILE" << 'BODY_EOF'
|
|
|
359
414
|
|
|
360
415
|
All plans executed and verified.
|
|
361
416
|
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
417
|
+
Plans: {completed}/{total}
|
|
418
|
+
Waves: {wave_count}
|
|
419
|
+
Verification: Passed (attempt {attempt_count}/3)
|
|
420
|
+
<!-- maxsim:type=phase-complete -->
|
|
365
421
|
BODY_EOF
|
|
366
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment
|
|
422
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment \
|
|
423
|
+
--issue-number $PHASE_ISSUE_NUMBER --body-file "$TMPFILE" --type phase-complete
|
|
367
424
|
```
|
|
368
425
|
|
|
369
|
-
Mark phase complete:
|
|
426
|
+
Mark phase complete and update tracking:
|
|
370
427
|
```bash
|
|
371
|
-
|
|
428
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs phase complete "${PHASE_NUMBER}"
|
|
429
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs commit \
|
|
430
|
+
"docs(phase-{X}): complete phase execution" \
|
|
431
|
+
--files .planning/ROADMAP.md .planning/STATE.md .planning/REQUIREMENTS.md
|
|
372
432
|
```
|
|
373
433
|
|
|
374
|
-
|
|
375
|
-
```bash
|
|
376
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs commit "docs(phase-{X}): complete phase execution" --files .planning/ROADMAP.md .planning/STATE.md .planning/REQUIREMENTS.md {phase_dir}/*-VERIFICATION.md
|
|
377
|
-
```
|
|
434
|
+
**If gaps_found:** Post gaps comment, then proceed to Retry Loop (step 9).
|
|
378
435
|
|
|
379
|
-
**If
|
|
436
|
+
**If human_needed:** Present items for human testing. If approved, treat as passed. If issues reported, proceed to Retry Loop.
|
|
380
437
|
|
|
381
|
-
|
|
382
|
-
TMPFILE=$(mktemp)
|
|
383
|
-
cat > "$TMPFILE" << 'BODY_EOF'
|
|
384
|
-
## Verification Gaps Found
|
|
385
|
-
|
|
386
|
-
{gap summaries from verification result}
|
|
387
|
-
BODY_EOF
|
|
388
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment --issue-number $PHASE_ISSUE_NUMBER --body-file "$TMPFILE" --type verification-gaps
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
**If `human_needed`:** Present items for human testing, get approval or feedback. If approved, treat as passed. If issues reported, proceed to Retry Loop.
|
|
392
|
-
|
|
393
|
-
## 6. Retry Loop (Max 2 Retries)
|
|
394
|
-
|
|
395
|
-
If verification failed, attempt gap closure. Maximum 2 retries (3 total attempts including the initial execution).
|
|
438
|
+
## 9. Retry Loop (Max 2 Retries — 3 Total Attempts)
|
|
396
439
|
|
|
397
440
|
Initialize: `attempt_count = 1`
|
|
398
441
|
|
|
399
|
-
###
|
|
442
|
+
### 9.1 Check attempt budget
|
|
400
443
|
|
|
401
444
|
If `attempt_count > 2`:
|
|
402
445
|
```
|
|
403
446
|
## Verification Failed After 3 Attempts
|
|
404
447
|
|
|
405
|
-
|
|
406
|
-
|
|
448
|
+
Status: Could not resolve all gaps
|
|
449
|
+
Attempts: 3 (initial + 2 retries)
|
|
407
450
|
|
|
408
451
|
### What Failed
|
|
409
|
-
{List
|
|
452
|
+
{List unresolved gaps with evidence from verification comment}
|
|
410
453
|
|
|
411
454
|
### Options
|
|
412
|
-
1. Fix manually and re-run
|
|
413
|
-
2.
|
|
414
|
-
3. Accept as-is and continue to next phase
|
|
455
|
+
1. Fix manually and re-run /maxsim:execute {phase_number}
|
|
456
|
+
2. Accept as-is and continue to next phase
|
|
415
457
|
```
|
|
458
|
+
Exit workflow.
|
|
416
459
|
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
### 6.2 Plan Gap Closure
|
|
460
|
+
### 9.2 Plan gap closure
|
|
420
461
|
|
|
421
462
|
Display: "Verification failed. Retrying... (attempt {attempt_count + 1}/3)"
|
|
422
463
|
|
|
423
|
-
Spawn planner in gap-closure mode
|
|
464
|
+
Spawn planner in gap-closure mode:
|
|
424
465
|
|
|
425
466
|
```
|
|
426
|
-
|
|
427
|
-
prompt="
|
|
428
|
-
<planning_context>
|
|
429
|
-
**Phase:** {phase_number}
|
|
430
|
-
**Mode:** gap_closure
|
|
431
|
-
|
|
432
|
-
<files_to_read>
|
|
433
|
-
- {phase_dir}/{phase_num}-VERIFICATION.md (Verification with gaps)
|
|
434
|
-
- .planning/STATE.md (Project State)
|
|
435
|
-
- .planning/ROADMAP.md (Roadmap)
|
|
436
|
-
</files_to_read>
|
|
437
|
-
</planning_context>
|
|
438
|
-
|
|
439
|
-
<downstream_consumer>
|
|
440
|
-
Output consumed by /maxsim:execute.
|
|
441
|
-
Plans must be executable prompts.
|
|
442
|
-
Post gap-closure plans as comments on phase issue #{phase_issue_number} using `github post-comment` with type=plan.
|
|
443
|
-
</downstream_consumer>
|
|
444
|
-
",
|
|
467
|
+
Agent(
|
|
445
468
|
subagent_type="planner",
|
|
446
|
-
model="{planner_model}"
|
|
469
|
+
model="{planner_model}",
|
|
470
|
+
prompt="
|
|
471
|
+
<planning_context>
|
|
472
|
+
Phase: {phase_number}
|
|
473
|
+
Mode: gap_closure
|
|
474
|
+
Phase issue: #{phase_issue_number}
|
|
475
|
+
|
|
476
|
+
Read these files:
|
|
477
|
+
- .planning/STATE.md
|
|
478
|
+
- .planning/ROADMAP.md
|
|
479
|
+
</planning_context>
|
|
480
|
+
|
|
481
|
+
Load the verification comment (type=verification) from the phase issue.
|
|
482
|
+
Identify all gaps listed as FAILED or MISSING.
|
|
483
|
+
|
|
484
|
+
Create focused gap-closure plans — one plan per gap cluster.
|
|
485
|
+
Post each plan as a comment on phase issue #{phase_issue_number}:
|
|
486
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment \\
|
|
487
|
+
--issue-number {phase_issue_number} --body-file plan_file --type plan
|
|
488
|
+
|
|
489
|
+
Each plan must include frontmatter with gap_closure: true.
|
|
490
|
+
"
|
|
447
491
|
)
|
|
448
492
|
```
|
|
449
493
|
|
|
450
|
-
###
|
|
494
|
+
### 9.3 Execute gap-closure plans
|
|
451
495
|
|
|
452
|
-
|
|
496
|
+
Re-read the phase issue to discover new plan comments with `gap_closure: true` in frontmatter.
|
|
497
|
+
Execute them using the same wave logic (steps 6.1–6.6).
|
|
453
498
|
|
|
454
|
-
###
|
|
499
|
+
### 9.4 Re-verify
|
|
455
500
|
|
|
456
|
-
Spawn verifier again (
|
|
501
|
+
Spawn verifier again (step 8). Increment `attempt_count`.
|
|
457
502
|
|
|
458
|
-
If verification passes: proceed to completion.
|
|
459
|
-
If verification fails and attempts remain: loop
|
|
503
|
+
If verification passes: proceed to step 9 completion.
|
|
504
|
+
If verification fails and attempts remain: loop to 9.1.
|
|
460
505
|
|
|
461
|
-
##
|
|
506
|
+
## 10. Checkpoint Before /clear
|
|
462
507
|
|
|
463
|
-
|
|
508
|
+
When context is filling up, checkpoint automatically:
|
|
464
509
|
|
|
465
|
-
**Checkpoint protocol:**
|
|
466
|
-
1. Post a checkpoint comment to the phase's GitHub Issue (if issue tracking is active):
|
|
467
510
|
```bash
|
|
468
511
|
TMPFILE=$(mktemp)
|
|
469
512
|
cat > "$TMPFILE" << 'BODY_EOF'
|
|
470
513
|
## MAXSIM Checkpoint
|
|
471
514
|
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
515
|
+
Command: /maxsim:execute
|
|
516
|
+
Stage: {current_stage}
|
|
517
|
+
Plans completed: {completed_count}/{total_count}
|
|
518
|
+
Verification attempts: {attempt_count}/3
|
|
519
|
+
Resume from: {next_action}
|
|
520
|
+
Timestamp: {ISO timestamp}
|
|
521
|
+
<!-- maxsim:type=checkpoint -->
|
|
478
522
|
BODY_EOF
|
|
479
|
-
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment
|
|
523
|
+
node ~/.claude/maxsim/bin/maxsim-tools.cjs github post-comment \
|
|
524
|
+
--issue-number $PHASE_ISSUE_NUMBER --body-file "$TMPFILE" --type checkpoint
|
|
480
525
|
```
|
|
481
526
|
|
|
482
|
-
|
|
527
|
+
Display:
|
|
483
528
|
```
|
|
484
|
-
Context is filling up.
|
|
529
|
+
Context is filling up. Checkpoint saved to GitHub issue #{phase_issue_number}.
|
|
485
530
|
|
|
486
|
-
|
|
531
|
+
Re-run /maxsim:execute {phase_number} after /clear — completed plans (with closed task
|
|
532
|
+
sub-issues) are detected automatically and skipped on resume.
|
|
487
533
|
```
|
|
488
534
|
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
## 8. Update State
|
|
535
|
+
## 11. Update State and Complete
|
|
492
536
|
|
|
493
537
|
After verification passes, update STATE.md:
|
|
494
538
|
|
|
@@ -498,43 +542,40 @@ node ~/.claude/maxsim/bin/maxsim-tools.cjs state record-session \
|
|
|
498
542
|
--resume-file "${phase_dir}"
|
|
499
543
|
```
|
|
500
544
|
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
Display final results:
|
|
545
|
+
Display final report:
|
|
504
546
|
|
|
505
547
|
```
|
|
506
|
-
## Phase {phase_number}: {phase_name}
|
|
548
|
+
## Phase {phase_number}: {phase_name} — Execution Complete
|
|
507
549
|
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
550
|
+
Plans: {completed}/{total} complete
|
|
551
|
+
Waves: {wave_count}
|
|
552
|
+
Verification: Passed (attempt {attempt_count}/3)
|
|
553
|
+
Phase issue: #{phase_issue_number} (closed)
|
|
512
554
|
|
|
513
555
|
### Plan Details
|
|
514
|
-
|
|
515
|
-
2. **{plan_id}**: {one-liner from summary comment}
|
|
556
|
+
{For each plan: plan_id — one-liner from summary comment}
|
|
516
557
|
|
|
517
558
|
### Next Steps
|
|
518
|
-
-
|
|
519
|
-
-
|
|
559
|
+
- /maxsim:plan {next_phase} — Plan next phase
|
|
560
|
+
- /maxsim:progress — View overall progress
|
|
520
561
|
```
|
|
521
562
|
|
|
522
563
|
</process>
|
|
523
564
|
|
|
524
565
|
<success_criteria>
|
|
525
566
|
- [ ] Phase validated against roadmap
|
|
526
|
-
- [ ]
|
|
527
|
-
- [ ]
|
|
528
|
-
- [ ]
|
|
529
|
-
- [ ]
|
|
530
|
-
- [ ]
|
|
531
|
-
- [ ]
|
|
532
|
-
- [ ]
|
|
533
|
-
- [ ]
|
|
534
|
-
- [ ] Auto-verification spawns verifier agent that posts to GitHub
|
|
567
|
+
- [ ] Executor model resolved via maxsim-tools resolve-model
|
|
568
|
+
- [ ] Plan inventory loaded exclusively from GitHub Issue comments
|
|
569
|
+
- [ ] External edit detection warns user before proceeding
|
|
570
|
+
- [ ] Execution state correctly detected from task sub-issue closure and summary comments
|
|
571
|
+
- [ ] Plan Mode (EnterPlanMode) entered before spawning any executors
|
|
572
|
+
- [ ] All wave agents spawned in a SINGLE message block with isolation="worktree" and run_in_background=true
|
|
573
|
+
- [ ] All spawned agents use the Agent tool (NOT Task)
|
|
574
|
+
- [ ] Spot-checks read GitHub comments and sub-issue status (not local files)
|
|
535
575
|
- [ ] Phase issue moved to "In Review" after all tasks complete (before verification)
|
|
536
576
|
- [ ] Phase issue moved to "Done" on verification pass
|
|
577
|
+
- [ ] Summaries posted as GitHub comments: <!-- maxsim:type=summary -->
|
|
578
|
+
- [ ] Verification results posted as GitHub comments: <!-- maxsim:type=verification -->
|
|
537
579
|
- [ ] Retry loop with gap closure (max 2 retries, 3 total attempts)
|
|
538
|
-
- [ ] Checkpoint
|
|
539
|
-
- [ ] No references to old SUMMARY.md local file checks for completion detection
|
|
580
|
+
- [ ] Checkpoint before /clear posts to GitHub issue
|
|
540
581
|
</success_criteria>
|