plugins/maister-copilot/skills/implementation-plan-executor/SKILL.md
Execute implementation plans by delegating each task group to task-group-implementer subagent. Main agent coordinates prepares context, invokes subagent, processes output, marks checkboxes, updates work-log. Uses lazy standards loading from INDEX.md with keyword-triggered discovery.
npx skillsauth add skillpanel/maister implementation-plan-executorInstall 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.
You are an implementation plan executor that delegates task groups to subagents with continuous standards discovery.
task-group-implementer subagentAlways delegate. Every task group is executed by the task-group-implementer subagent. The main agent NEVER writes implementation code directly.
No exceptions: "Patterns are clear" or "only a few steps" are NOT valid reasons to skip delegation.
❌ Wrong: "Let me read standards..." → Implement directly ✅ Right: Task tool → Process output → Mark checkboxes
implementation/implementation-plan.md (required)implementation/spec.md (recommended).maister/docs/INDEX.md (required for standards)TaskList to find existing task group items from the planner. If found, use them. If not, create them with TaskCreate for each task group (fallback for plans created before task system migration).# Work Log
## [timestamp] - Implementation Started
**Total Steps**: [N]
**Task Groups**: [list]
## Standards Reading Log
### Loaded Per Group
(Entries added as groups execute)
Do NOT read all standards upfront. Standards are loaded lazily per task group.
Dispatch unit is the wave, not the individual group. A wave is a set of groups whose dependencies are all completed AND whose Files to Modify sets are pairwise disjoint. All groups in a wave fire in parallel from a single message; the next wave is computed once every member returns.
Read each group from implementation-plan.md and verify both **Dependencies:** and **Files to Modify:** are present. If any group is missing Files to Modify:
--sequential (see opt-out below).work-log.md: Plan missing 'Files to Modify' on Group N — falling back to sequential execution.Never assume missing Files to Modify means "None" — silent disjoint assumptions are how parallel implementers collide on the same file.
Dependencies: (list of group numbers) and Files to Modify: (list of paths or "None") for every group.Dependencies:.completed AND that have not yet been dispatched.Files to Modify does not overlap any group already in the wave. Conflicting groups stay in the ready set for the next wave."None" as the empty set — review-only groups never conflict on files.src/migrations/*.sql) match by glob expansion against other groups' declared paths.For each wave:
For every group in the wave, TaskUpdate to status: "in_progress" with owner: "maister-task-group-implementer".
Prepare group context (per group):
implementation-plan.md (including Visual References section, if present)analysis/design-context/ exists): include design-context/brief.md excerpt (Layer 0 + the relevant screen sections from Layer 3) when relevant to this group. Do NOT inline HTML/binary mockups — pass paths only and rely on the implementer to Read them. ASCII mockup excerpts (small, text) MAY be inlined when directly relevant. The planner-supplied locator field already tells the implementer which region to focus on within large mockups.Fan out — CRITICAL: parallel dispatch in a single message:
All groups in the wave MUST be dispatched in one assistant turn containing one Task tool call per group. This is not a loop. This is one message with N tool calls.
❌ Wrong: Send Task(G2), await result, send Task(G3), await result, send Task(G4). → That is serial execution wearing wave-shaped clothing. Wave duration becomes sum(G2, G3, G4) instead of max(G2, G3, G4) and defeats the entire wave optimization. The "comfortable" pattern of one-Task-per-turn is the exact anti-pattern this skill exists to prevent.
✅ Right: One assistant message with N Task tool-use blocks emitted before any of them returns. The runtime returns all N results before the next assistant turn.
Per-call parameters:
maister-task-group-implementerSELF-CHECK before sending the message: Are you about to emit a message with one Task call when the current wave has more than one group? If yes, STOP. Compose every wave member's prompt first, then emit them all in the same message. Awaiting one before composing the next violates this skill's contract. If the wave has exactly one group, a single Task call is correct.
Wait for all wave members to return, then for each result:
implementation-plan.md.work-log.md with standards trail.TaskUpdate to status: "completed" with metadata: {completed_at, tests_passed, files_modified, standards_applied, wave: N}.Partial-wave failure handling:
completed normally. Keep failed groups in_progress with metadata: {failed_at, failure_reason, wave: N} until the ask_user recovery path resolves them.After the wave fully resolves (all members completed or recovered), recompute the ready set and proceed to the next wave.
--sequential Opt-OutRead orchestrator.options.sequential from orchestrator-state.yml at Phase 2 entry. When true (or when the validation fallback above triggered):
Philosophy: Standards are discovered when relevant, not memorized upfront.
Implementation Plan Standards: The "Standards Compliance" section in implementation-plan.md lists standards identified during planning. Filter these per task group based on relevance.
INDEX.md Discovery: The file .maister/docs/INDEX.md maps topics to standard files. Use it to find standards not listed in the plan.
Keyword-Triggered Discovery: During execution, step descriptions may reveal need for additional standards.
These are examples to guide discovery. Do not limit discovery to only these triggers - use judgment to identify when other standards may apply.
| Example Keywords | May Suggest Standards For | |------------------|---------------------------| | file, upload, download | file handling, storage | | auth, login, session | security, authentication | | email, notification | external services | | form, input, validation | forms, validation | | API, endpoint | api design, error handling | | migration, schema | database conventions |
Key principle: If a step involves a concept that likely has project standards, check INDEX.md even if no keyword explicitly matches.
Per task group:
1. Check "Standards Compliance" section in implementation-plan.md
- Identify which listed standards are relevant to THIS group
- Read those standards
2. Check INDEX.md for additional standards matching group topic
3. During step execution:
- If step description suggests a standard may apply
- Check INDEX.md, read if found and not yet loaded
- Log discovery with trigger reason
4. Apply discovered standards to implementation
## Standards Reading Log
### Group 1: [Name]
**From Implementation Plan**:
- [x] .maister/docs/standards/backend/api.md - Listed in Standards Compliance
**From INDEX.md**:
- [x] .maister/docs/standards/global/naming.md - Group topic match
**Discovered During Execution**:
- [x] .maister/docs/standards/global/security.md - Step 1.3 (auth-related logic)
### Group 2: [Name]
**From Implementation Plan**:
- [x] .maister/docs/standards/frontend/forms.md - Listed in Standards Compliance
When delegating a task group, use this prompt structure:
## Task: Execute Task Group [N]
### Task Group Content
[Paste the task group section from implementation-plan.md, including the `Visual References` block if present]
### Specification Excerpt
[Relevant sections from spec.md for this group]
### Standards from Implementation Plan
The implementation plan's "Standards Compliance" section lists these standards.
Identify which are relevant to this group and read them:
- [path/to/standard1.md] - [likely relevant because...]
- [path/to/standard2.md] - [likely relevant because...]
### Standards Discovery
You have access to `.maister/docs/INDEX.md` for continuous standards discovery.
- Check INDEX.md for additional standards matching this group's topic
- During implementation, discover more standards as step context reveals needs
- Do not limit discovery to explicit keyword matches - use judgment
### Design Context
[OMIT this section entirely when no `Visual References` are present in the task group AND no `analysis/design-context/` exists.]
[OTHERWISE include:]
- Design context root: `analysis/design-context/`
- Brief excerpt (when present): [Layer 0 from `design-context/brief.md` + relevant screen sections]
- Mockup files referenced by this group: [list paths from `Visual References`]
- Inline ASCII excerpt (when ASCII mockup is small and directly relevant): [paste here]
- Binding rule: each mockup in `Visual References` MUST be read before implementing; layout, copy, field order, and explicit states are binding; self-check each `acceptance` criterion before declaring done.
### Sibling Wave
[None] OR [Group K (Files to Modify: ...) is running in parallel in the same wave. File sets are disjoint per the executor's wave-computation invariant; do not edit paths outside your declared `Files to Modify`.]
### Requirements
1. Execute in test-driven order: tests (N.1) → implementation (N.2+) → verify (N.n)
2. Log all standards applied (from plan, from INDEX.md, discovered during execution)
3. When `Visual References` present: read each mockup before implementing, log per-reference compliance in your report
4. Report any failures with root cause analysis
5. Do NOT mark checkboxes - main agent handles that
### Expected Output Format
[See Subagent Output Format section]
The task-group-implementer returns structured output:
## Group [N] Execution Report
### Status: [SUCCESS/PARTIAL/FAILED]
### Steps Completed
- [x] N.1 - [description]
- [x] N.2 - [description]
- [ ] N.3 - [description] (if incomplete)
### Standards Applied
**From Implementation Plan**:
- .maister/docs/standards/backend/api.md
**From INDEX.md** (group topic):
- .maister/docs/standards/global/naming.md
**Discovered During Execution**:
- .maister/docs/standards/global/error-handling.md (step N.2, error handling logic)
### Visual Compliance
[OMIT this section entirely when the group had no `Visual References`.]
[OTHERWISE: one line per reference]
- ✓ analysis/design-context/mockups/login.html — screen:login — field order, error states, "Forgot password?" link match
- ⚠ analysis/design-context/mockups/dashboard.html — screen:dashboard — 3-column layout matched, but icon set differs (used Heroicons; mockup shows custom icons — flagged for review)
### Test Results
**Command**: [test command run]
**Result**: [N passed, M failed]
**Details**: [if failures, brief explanation]
### Files Modified
- path/to/file1.ts (created)
- path/to/file2.ts (modified)
### Notes
[Any decisions made, blockers encountered, recommendations]
N.1 - Write tests (2-8 focused tests)
N.2 - Implementation step
...
N.n-1 - Implementation step
N.n - Run tests (only this group's tests)
Before executing step N.2 or higher:
Question: "Test step N.1 not completed. How to proceed?"
Header: "Tests"
Options:
- "Complete tests first" - Execute N.1 now
- "Skip with justification" - Document reason, continue
- "Stop" - Pause for investigation
- [~] N.1 SKIPPED: [reason]Format: - [ ] → - [x] (or - [~] for skipped)
Timing: Immediately after step completion. Never batch. Never mark ahead.
Responsibility: Always main agent — subagent does NOT mark checkboxes.
After each task group:
## [timestamp] - Group [N] Complete
**Steps**: N.1 through N.M completed
**Standards Applied**:
- From plan: [list]
- From INDEX.md: [list]
- Discovered: [list with trigger reason]
**Tests**: [N] passed
**Files Modified**: [list]
**Notes**: [any decisions or discoveries]
Validate completion:
- [ ] checkboxes remaincompleted via TaskList (cross-validate against markdown checkboxes)Run full project test suite (all tests, not just feature tests — catches regressions in unrelated areas)
Final work-log entry:
## [timestamp] - Implementation Complete
**Total Steps**: [N] completed
**Total Standards**: [M] applied
**Test Suite**: [status]
**Duration**: [if tracked]
Return summary to calling orchestrator
If task-group-implementer reports failure:
Question: "Group [N] implementation failed: [brief reason]. How to proceed?"
Header: "Failure"
Options:
- "Try suggested fix" - [if easy fix identified]
- "Retry group" - Re-invoke subagent
- "Complete manually" - Main agent completes remaining steps for this group
- "Rollback changes" - Revert this group's changes
- "Stop" - Pause for investigation
If tests fail after implementation:
Before returning success:
[x] or [~] (skipped with reason)documentation
Orchestrates comprehensive research workflows from question definition through findings documentation. Handles technical, requirements, literature, and mixed research types with adaptive methodology, multi-source gathering, pattern synthesis, and evidence-based reporting. Supports standalone research tasks and embedded research phase in other workflows.
data-ai
Interactive product/feature design orchestrator. Transforms fuzzy ideas into structured product briefs through collaborative exploration, iterative refinement, and visual prototyping. Adaptive phases detect design complexity and adjust depth.
development
Orchestrates performance optimization workflows using static code analysis to identify bottlenecks (N+1 queries, missing indexes, O(n^2) algorithms, blocking I/O, memory leaks). Accepts optional user-provided profiling data. Reuses standard specification, planning, implementation, and verification phases.
development
Shared orchestration patterns for all workflow orchestrators. NOT an executable skill - provides reference documentation for phase execution, state management, interactive mode, and initialization. All orchestrators reference these patterns.