skills/mav-plan-execution/SKILL.md
How to execute an implementation plan step-by-step. Covers the execution loop, verification discipline, failure handling, progress tracking, crash recovery, and acceptance criteria. Adapts behaviour based on whether the caller is solo (autonomous) or guided (human checkpoints). Used as a dependency from workflow skills.
npx skillsauth add thermiteau/maverick-private mav-plan-executionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Execute an implementation plan step-by-step. Each step is implemented, verified, and committed before moving to the next. Progress is tracked persistently so it survives session loss.
This skill adapts its behaviour based on how it was invoked:
digraph mode {
"Called from do-issue-solo?" [shape=diamond];
"Solo mode" [shape=box];
"Guided mode" [shape=box];
"Called from do-issue-solo?" -> "Solo mode" [label="yes"];
"Called from do-issue-solo?" -> "Guided mode" [label="no"];
}
digraph execute {
"Load plan" [shape=box];
"Check for prior progress" [shape=box];
"Pick next uncompleted step" [shape=box];
"Mark step in-progress" [shape=box];
"Implement the change" [shape=box];
"Run verification" [shape=box];
"Verification passes?" [shape=diamond];
"Diagnose and fix" [shape=box];
"Fix attempt count" [shape=diamond];
"Commit" [shape=box];
"Mark step complete" [shape=box];
"Update progress on issue" [shape=box];
"More steps?" [shape=diamond];
"Run full verification suite" [shape=box];
"Acceptance criteria check" [shape=box];
"Load plan" -> "Check for prior progress";
"Check for prior progress" -> "Pick next uncompleted step";
"Pick next uncompleted step" -> "Mark step in-progress";
"Mark step in-progress" -> "Implement the change";
"Implement the change" -> "Run verification";
"Run verification" -> "Verification passes?";
"Verification passes?" -> "Commit" [label="yes"];
"Verification passes?" -> "Diagnose and fix" [label="no"];
"Diagnose and fix" -> "Fix attempt count";
"Fix attempt count" -> "Run verification" [label="<= 2 attempts"];
"Fix attempt count" -> "Escalate (see Failure Handling)" [label="> 2 attempts"];
"Commit" -> "Mark step complete";
"Mark step complete" -> "Update progress on issue";
"Update progress on issue" -> "More steps?";
"More steps?" -> "Pick next uncompleted step" [label="yes"];
"More steps?" -> "Run full verification suite" [label="no"];
"Run full verification suite" -> "Acceptance criteria check";
}
Read the implementation plan from one of:
If resuming after a crash or new session, determine where to pick up:
- [x] = done, - [ ] = pending)git log — if commits exist for steps that aren't checked off, the comment update was lost. Check them off now.# Read plan comment
REPO=$(jq -r '.repo' .claude/issue-state.json)
COMMENT_ID=$(jq -r '.comments.plan' .claude/issue-state.json)
gh api "repos/$REPO/issues/comments/$COMMENT_ID" --jq '.body'
For each step in the plan:
Never batch multiple steps into one commit unless they are trivially related (e.g. a one-line change and its import).
After completing each step, update the plan comment to check off the step:
REPO=$(jq -r '.repo' .claude/issue-state.json)
COMMENT_ID=$(jq -r '.comments.plan' .claude/issue-state.json)
CURRENT_BODY=$(gh api "repos/$REPO/issues/comments/$COMMENT_ID" --jq '.body')
UPDATED_BODY=$(echo "$CURRENT_BODY" | sed 's/- \[ \] \*\*Step N:/- [x] **Step N:/')
gh api "repos/$REPO/issues/comments/$COMMENT_ID" \
-X PATCH \
-f body="$UPDATED_BODY"
This ensures progress survives session failures, VM loss, or subagent crashes.
After all steps are complete, run the project's full verification suite:
Fix any issues found. Do not proceed to acceptance criteria with failing checks.
digraph failure {
"Verification fails" [shape=box];
"Diagnose the failure" [shape=box];
"Fix and re-verify" [shape=box];
"Passes now?" [shape=diamond];
"Attempt count" [shape=diamond];
"Apply mav-systematic-debugging skill" [shape=box];
"Still stuck?" [shape=diamond];
"Continue" [shape=box];
"Verification fails" -> "Diagnose the failure";
"Diagnose the failure" -> "Fix and re-verify";
"Fix and re-verify" -> "Passes now?";
"Passes now?" -> "Continue" [label="yes"];
"Passes now?" -> "Attempt count" [label="no"];
"Attempt count" -> "Fix and re-verify" [label="<= 2"];
"Attempt count" -> "Apply mav-systematic-debugging skill" [label="> 2"];
"Apply mav-systematic-debugging skill" -> "Still stuck?";
"Still stuck?" -> "Fix and re-verify" [label="no — found the issue"];
"Still stuck?" -> "Escalate per mode" [label="yes"];
}
| Situation | Solo | Guided | |---|---|---| | Step fails after 2 fix attempts | Apply mav-systematic-debugging skill. If still stuck, ask user for help. | Ask user for help immediately. | | Design assumption proves wrong | Reassess against the design. Adjust approach if confident. Only ask user if the change is fundamental. | Pause and discuss with user before adjusting. | | External blocker (API down, missing dependency) | Document the blocker and ask user. | Document the blocker and ask user. | | Unsure about implementation approach | Try the most likely approach. If it doesn't work, try the alternative. Ask user only as last resort. | Ask user which approach to take. |
In guided mode, provide brief progress checkpoints at natural break points:
Keep checkpoints brief — one or two sentences. Do not ask for approval to continue unless something went wrong.
After all steps are complete and the full verification suite passes:
Do not proceed to code review until every acceptance criterion is met and all checks pass.
development
Use when a best-practice skill needs project-specific implementation details and no project skill exists at docs/maverick/skills/<topic>/SKILL.md. Scans the codebase and generates a project-specific skill file.
testing
Create or update technical documentation for a project. Covers architecture, service interactions, data flows, and design decisions. Produces professional markdown with Mermaid diagrams.
development
How to process code review feedback — verify before implementing, push back when wrong, clarify before acting on partial understanding. Applied when receiving review from the code-reviewer agent or human reviewers.
development
Analyze a project's codebase against Maverick standard practices and write a findings report. Checks linting, unit tests, integration tests, documentation, and CI/CD. Run when onboarding an existing project or on demand.