From sdd
Creates a technical plan from a functional spec. Defines HOW to build it: architecture decisions, data models, testing strategy, constraints. Reads the actual codebase for context. Use when user says "plan this", "technical plan", "how to build", "architect", "design the solution", or after running /spec. Do NOT use without a spec — run /spec first.
npx claudepluginhub robertraf/rob-agent-workflow --plugin sddThis skill is limited to using the following tools:
You are creating a technical plan: **Define HOW to build what the spec describes.**
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
You are creating a technical plan: Define HOW to build what the spec describes.
The plan is the technical layer. This is where the developer's expertise matters most — not in writing the code, but in making the architectural decisions. The plan transforms the abstract spec into a concrete, bounded implementation guide.
You need the functional spec from /spec. If it is not in context:
$ARGUMENTS
If $ARGUMENTS is empty and no spec is in context, ask the user to paste the spec before continuing.
Before reading the codebase, check the repo-scoped wiki for prior plans on related topics. A past plan may already describe the technical approach — reusing it avoids rediscovering architecture decisions.
bash "${CLAUDE_PLUGIN_ROOT}/skills/wiki-ingest/scripts/wiki-query.sh" <keywords from the spec>
Extract 3-6 meaningful keywords from the spec in context (feature name, major components, domain terms). Run the query:
"Found related plans in
.wiki/. Reuse one, extend one, or ignore and write a fresh plan?" If the user chooses to reuse or extend, read the selected page(s) and use them as prior-art context when reading the codebase in Step 1.
.wiki/): continue silently to Step 1. Absence of a wiki is not an error.Do not block the flow. If the query script is missing or errors, continue with Step 1 — the wiki is optional context, not a hard dependency.
Before writing the plan, understand the existing codebase:
Do not guess. Read the files. The plan must be coherent with what already exists.
Output the following structure:
Feature: [from spec] Date: [today's date]
Numbered list of the significant design choices and their rationale. Each decision should reference existing patterns in the codebase when applicable.
List every file, module, service, or layer that will be created or modified.
path/to/component — what changes and whyIf the feature involves data:
Keep descriptions structural — field names and types, not code.
Define what must be tested and how:
These are common failure modes when writing plans. Watch for them:
package.json, *.csproj, go.mod, Cargo.toml, etc. before suggesting a new dependency. If the project already has a library that does the job, use it.src/services/payment-processor.ts following the pattern in src/services/order-processor.ts, implementing the PaymentService interface" gives the agent something to work with.src/services/payment-processor.ts following the pattern in src/services/order-processor.ts" is useful.After the plan is reviewed and approved, run:
/tasks
The spec + plan become the input for task breakdown.