Executing Plans
<activation>When This Skill Activates
- You have a written implementation plan (from shipyard:shipyard-writing-plans or similar)
- Plan contains independent tasks suitable for agent dispatch or batch execution
- You need structured execution with two-stage review gates
Announce at start: "I'm using the executing-plans skill to implement this plan."
Natural Language Triggers
- "build this", "implement this", "build me this", "execute the plan", "run the plan"
Overview
Execute implementation plans by dispatching fresh builder agents per task, with two-stage review after each: spec compliance review first, then code quality review. Can also run as batch execution with human checkpoints.
Core principle: Fresh agent per task + two-stage review (spec then quality) = high quality, fast iteration.
digraph when_to_use {
"Have implementation plan?" [shape=diamond];
"Tasks mostly independent?" [shape=diamond];
"Stay in this session?" [shape=diamond];
"Agent-driven execution" [shape=box];
"Batch execution with checkpoints" [shape=box];
"Manual execution or brainstorm first" [shape=box];
"Have implementation plan?" -> "Tasks mostly independent?" [label="yes"];
"Have implementation plan?" -> "Manual execution or brainstorm first" [label="no"];
"Tasks mostly independent?" -> "Stay in this session?" [label="yes"];
"Tasks mostly independent?" -> "Manual execution or brainstorm first" [label="no - tightly coupled"];
"Stay in this session?" -> "Agent-driven execution" [label="yes"];
"Stay in this session?" -> "Batch execution with checkpoints" [label="no - parallel session"];
}
<instructions>
The Process
Step 1: Load and Review Plan
- Read plan file
- Review critically - identify any questions or concerns about the plan
- If concerns: Raise them with your human partner before starting
- If no concerns: Create tasks via TaskCreate and proceed
Step 2: Execute Tasks
Agent-Driven Mode (preferred):
For each task, dispatch a fresh builder agent:
digraph process {
rankdir=TB;
subgraph cluster_per_task {
label="Per Task";
"Dispatch builder agent" [shape=box];
"Builder asks questions?" [shape=diamond];
"Answer questions, provide context" [shape=box];
"Builder implements, tests, commits, self-reviews" [shape=box];
"Dispatch spec reviewer agent" [shape=box];
"Spec reviewer confirms code matches spec?" [shape=diamond];
"Builder fixes spec gaps" [shape=box];
"Dispatch code quality reviewer agent" [shape=box];
"Code quality reviewer approves?" [shape=diamond];
"Builder fixes quality issues" [shape=box];
"Mark task complete" [shape=box];
}
"Read plan, extract all tasks, create via TaskCreate" [shape=box];
"More tasks remain?" [shape=diamond];
"Dispatch final reviewer for entire implementation" [shape=box];
"Use shipyard:git-workflow to complete" [shape=box style=filled fillcolor=lightgreen];
"Read plan, extract all tasks, create via TaskCreate" -> "Dispatch builder agent";
"Dispatch builder agent" -> "Builder asks questions?";
"Builder asks questions?" -> "Answer questions, provide context" [label="yes"];
"Answer questions, provide context" -> "Dispatch builder agent";
"Builder asks questions?" -> "Builder implements, tests, commits, self-reviews" [label="no"];
"Builder implements, tests, commits, self-reviews" -> "Dispatch spec reviewer agent";
"Dispatch spec reviewer agent" -> "Spec reviewer confirms code matches spec?";
"Spec reviewer confirms code matches spec?" -> "Builder fixes spec gaps" [label="no"];
"Builder fixes spec gaps" -> "Dispatch spec reviewer agent" [label="re-review"];
"Spec reviewer confirms code matches spec?" -> "Dispatch code quality reviewer agent" [label="yes"];
"Dispatch code quality reviewer agent" -> "Code quality reviewer approves?";
"Code quality reviewer approves?" -> "Builder fixes quality issues" [label="no"];
"Builder fixes quality issues" -> "Dispatch code quality reviewer agent" [label="re-review"];
"Code quality reviewer approves?" -> "Mark task complete" [label="yes"];
"Mark task complete" -> "Extract micro-lesson (best-effort)";
"Extract micro-lesson (best-effort)" -> "More tasks remain?";
"More tasks remain?" -> "Dispatch builder agent" [label="yes"];
"More tasks remain?" -> "Dispatch final reviewer for entire implementation" [label="no"];
"Dispatch final reviewer for entire implementation" -> "Dispatch auditor for security review";
"Dispatch auditor for security review" -> "Critical security findings?" [shape=diamond];
"Critical security findings?" -> "Builder fixes security issues" [label="yes"];
"Builder fixes security issues" -> "Dispatch auditor for security review" [label="re-audit"];
"Critical security findings?" -> "Dispatch simplifier for complexity review" [label="no / user defers"];
"Dispatch simplifier for complexity review" -> "High priority simplifications?" [shape=diamond];
"High priority simplifications?" -> "Builder implements simplifications" [label="user chooses fix"];
"Builder implements simplifications" -> "Dispatch simplifier for complexity review" [label="re-check"];
"High priority simplifications?" -> "Use shipyard:git-workflow to complete" [label="no / user defers"];
}
Micro-lesson (best-effort): After marking complete, extract one line: what surprised you, what failed first, or what you'd do differently. Append to
.shipyard/phases/{N}/MICRO-LESSONS.mdas- [PLAN-{W}.{P} Task {T}] <takeaway>. Pass the file contents to the next builder agent as context. If no clear takeaway, skip silently. Metrics Collection (best-effort): Also check agent output for<!-- context: ... -->. If found, append to.shipyard/phases/{N}/AGENT-METRICS.md:{ISO timestamp} | {agent-type} | {task-label} | turns={N} | compressed={yes|no} | complete={yes|no}. Skip silently if missing.
Batch Mode (separate session):
Default: First 3 tasks per batch.
For each task:
- Mark as in_progress
- Follow each step exactly (plan has bite-sized steps)
- Run verifications as specified
- Mark as completed
When batch complete:
- Show what was implemented
- Show verification output
- Say: "Ready for feedback."
Based on feedback: apply changes if needed, execute next batch, repeat until complete.
Two-Stage Review Pattern
Stage 1: Spec Compliance Review
- Does the code match the plan's specification?
- Are all requirements met?
- Is there anything extra that wasn't requested?
- Are verification criteria satisfied?
Stage 2: Code Quality Review
- Is the code well-structured?
- Are there any bugs or edge cases missed?
- Is naming clear and consistent?
- Are tests comprehensive?
IMPORTANT: Always complete spec compliance before code quality. Wrong order wastes time reviewing quality of code that doesn't meet spec.
Step 3: Post-Completion Quality Gates
After the final reviewer approves the entire implementation, run these quality gates:
Security Audit
Dispatch an auditor agent (subagent_type: "shipyard:auditor") with:
- Git diff of all files changed during plan execution
- All task summaries and context
- Dependency manifests if any dependencies were added/changed
- Working directory, current branch, and worktree status
- Follow Model Routing Protocol — resolve model from
model_routing.security_audit(default: sonnet). Seedocs/PROTOCOLS.mdfor details.
If CRITICAL findings exist:
- Display the critical findings to the user
- User decides: fix now (dispatch builder with audit feedback) / defer (append to ISSUES.md) / acknowledge and proceed
- If fixing, re-run audit after fixes
Simplification Review
After the audit, dispatch a **simplifi