skills-src/implementation-planning/SKILL.md
Transform design documents into TDD-based implementation plans with parallelizable tasks. Triggers: 'plan implementation', 'create tasks from design', or /plan. Enforces the Iron Law: no production code without a failing test first. Requires an existing design document — use /ideate first if none exists. Do NOT use for brainstorming, debugging, or code review.
npx skillsauth add lvlup-sw/exarchos implementation-planningInstall 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.
Transform design documents into TDD-based implementation plans with granular, parallelizable tasks. Ensures complete spec coverage through explicit traceability.
For a complete worked example, see references/worked-example.md.
Activate this skill when:
{{COMMAND_PREFIX}}plan command{{COMMAND_PREFIX}}ideate after design completion--revise flag (gaps found)When invoked with --revise, plan-review found gaps. Read .planReview.gaps from state, re-read the design, add tasks to address each gap, update the plan file, then clear gaps via {{MCP_PREFIX}}exarchos_workflow action: "update".
Max revisions: 3 per plan.
After 3 failed revisions:
planReview.revisionsExhausted = true{{COMMAND_PREFIX}}ideate --redesign to revisit designMANDATORY: Before accepting any rationalization for skipping tests, planning, or TDD steps, consult
references/rationalization-refutation.md. Every common excuse is catalogued with a counter-argument and the correct action.
NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST
Every implementation task MUST:
Verify TDD compliance in git history after implementation:
exarchos_orchestrate({
action: "check_tdd_compliance",
featureId: "<featureId>",
taskId: "<taskId>",
branch: "feature/<name>"
})
passed: true — All commits have test files before or alongside implementationpassed: false — Violations found; commits have implementation without corresponding testsRead the design document thoroughly. For each major section, extract:
Create a traceability matrix mapping design sections to planned tasks.
Consult references/spec-tracing-guide.md for the methodology and template.
Pre-populate the matrix using the traceability generator script:
exarchos_orchestrate({
action: "generate_traceability",
designFile: "docs/designs/<feature>.md",
planFile: "docs/plans/<date>-<feature>.md",
output: "docs/plans/<date>-<feature>-traceability.md"
})
passed: true — Matrix generated; review and fill in "Key Requirements" columnpassed: false — Parse error; design document may lack expected ##/### headersEach task follows the TDD format in references/task-template.md.
Granularity Guidelines:
Assign a testingStrategy to each task using references/testing-strategy-guide.md to control which verification techniques agents apply. Auto-determine propertyTests and benchmarks flags by matching each task's description and file paths against the category tables — do not leave these for the implementer to decide.
Task Ordering:
Analyze dependencies to find sequential chains and parallel-safe groups that can run simultaneously in worktrees.
Save to: docs/plans/YYYY-MM-DD-<feature>.md
Use the template from references/plan-document-template.md.
Run deterministic verification scripts instead of manual checklist review.
5a. Design-to-plan coverage — verify every Technical Design subsection maps to a task:
exarchos_orchestrate({
action: "check_plan_coverage",
featureId: "<id>",
designPath: "docs/designs/<feature>.md",
planPath: "docs/plans/<date>-<feature>.md"
})
5a-ii. Provenance chain verification — verify every DR-N requirement maps to a task via Implements: field:
exarchos_orchestrate({
action: "check_provenance_chain",
featureId: "<id>",
designPath: "docs/designs/<feature>.md",
planPath: "docs/plans/<date>-<feature>.md"
})
**Implements:** DR-N to tasks for each uncovered requirement before proceeding. Every DR-N requirement MUST trace to at least one task.5a-iii. D5: Task decomposition quality (advisory) — verify each task has clear description, file targets, and test expectations; dependency graph is a valid DAG; parallelizable tasks don't modify the same files:
exarchos_orchestrate({
action: "check_task_decomposition",
featureId: "<id>",
planPath: "docs/plans/<date>-<feature>.md"
})
Advisory: This gate verifies task structure quality but does not block plan approval. Findings are recorded for convergence tracking.
5b. Spec coverage check — verify planned test files exist and pass:
exarchos_orchestrate({
action: "spec_coverage_check",
planFile: "docs/plans/<date>-<feature>.md",
repoRoot: ".",
threshold: 80
})
passed: true — All planned tests found and passing; plan verification completepassed: false — Missing test files or test failures; create missing tests or fix failuresFor reference, consult references/spec-tracing-guide.md for the underlying methodology.
| Don't | Do Instead | |-------|------------| | Write implementation first | Write failing test first | | Create large tasks | Break into 2-5 min chunks | | Skip dependency analysis | Identify parallel opportunities | | Vague test descriptions | Specific: Method_Scenario_Outcome | | Assume tests pass | Verify each test fails first | | Add "nice to have" code | Only what the test requires |
| Excuse | Reality | |--------|---------| | "This is too simple for tests" | Simple code breaks too. Test it. | | "I'll add tests after" | You won't. Or they'll be weak. | | "Tests slow me down" | Debugging without tests is slower. | | "The design is obvious" | Obvious to you now. Not in 3 months. |
On plan save, transition phase based on workflowType: feature → plan-review, refactor → overhaul-plan-review.
action: "update", featureId: "<id>", phase: "<plan-review-phase>", updates: {
"artifacts": { "plan": "<plan-file-path>" },
"tasks": [{ "id": "001", "title": "...", "status": "pending", "branch": "...", "blockedBy": [] }, ...]
}
For the full transition table, consult @skills/workflow-state/references/phase-transitions.md.
Quick reference: The plan → plan-review transition requires guard plan-artifact-exists — set artifacts.plan in the same set call as phase.
Use exarchos_workflow({ action: "describe", actions: ["update", "init"] }) for
parameter schemas and exarchos_workflow({ action: "describe", playbook: "feature" })
(or "debug", "refactor") for phase transitions, guards, and playbook guidance.
Use exarchos_orchestrate({ action: "describe", actions: ["check_plan_coverage", "check_provenance_chain"] })
for orchestrate action schemas.
exarchos_orchestrate({ action: "generate_traceability" }))exarchos_orchestrate({ action: "check_plan_coverage" }) returns passed: trueexarchos_orchestrate({ action: "check_provenance_chain" }) passed (blocking; gaps must be resolved before proceeding)exarchos_orchestrate({ action: "check_task_decomposition" }) run (advisory; findings presented but non-blocking)exarchos_orchestrate({ action: "spec_coverage_check" }) passed: trueexarchos_orchestrate({ action: "check_coverage_thresholds" }) passed: true:exarchos_orchestrate({
action: "check_coverage_thresholds",
coverageFile: "coverage/coverage-summary.json",
lineThreshold: 80,
branchThreshold: 70,
functionThreshold: 100
})
docs/plans/After planning completes, auto-continue to plan-review (delta analysis). Set .phase to the appropriate review phase (feature: plan-review, refactor: overhaul-plan-review). Plan-review compares design sections against planned tasks:
.planReview.gaps, auto-loop back to {{COMMAND_PREFIX}}plan --revise.planReview.approved = true, invoke {{COMMAND_PREFIX}}delegateREQUIRED: Run exarchos_orchestrate({ action: "check_plan_coverage" }). If passed: false → auto-invoke {{COMMAND_PREFIX}}plan --revise. If passed: true → continue to the plan-review phase (feature: plan-review, refactor: overhaul-plan-review) and only invoke {{COMMAND_PREFIX}}delegate after plan-review approval.
Phase transitions auto-emit workflow.transition events via exarchos_workflow set. No manual exarchos_event append needed.
| Issue | Cause | Resolution |
|-------|-------|------------|
| check_plan_coverage returns passed: false | Design sections not mapped to tasks | Add tasks for uncovered sections or add explicit deferral rationale |
| spec_coverage_check passed: false | Planned test files missing or failing | Create missing test stubs, verify file paths in plan match actual paths |
| generate_traceability passed: false | Design doc missing expected ##/### headers | Verify design uses standard Markdown headings |
| Revision loop (3+ attempts) | Persistent gaps between design and plan | Set planReview.revisionsExhausted = true, suggest {{COMMAND_PREFIX}}ideate --redesign |
tools
Land a subagent worktree branch onto an integration branch with preflight + recorded rollback. Triggers: operator (or `next_actions`) surfaces verb `merge_orchestrate` via Exarchos MCP. Local git operation — NOT remote PR merging (that is `merge_pr`).
tools
Land a subagent worktree branch onto an integration branch with preflight + recorded rollback. Triggers: operator (or `next_actions`) surfaces verb `merge_orchestrate` via Exarchos MCP. Local git operation — NOT remote PR merging (that is `merge_pr`).
tools
Land a subagent worktree branch onto an integration branch with preflight + recorded rollback. Triggers: operator (or `next_actions`) surfaces verb `merge_orchestrate` via Exarchos MCP. Local git operation — NOT remote PR merging (that is `merge_pr`).
tools
Land a subagent worktree branch onto an integration branch with preflight + recorded rollback. Triggers: operator (or `next_actions`) surfaces verb `merge_orchestrate` via Exarchos MCP. Local git operation — NOT remote PR merging (that is `merge_pr`).