High-level technical design — affected components, tool selection, approach, and sequencing. Invoke when task involves any interaction with technical designs — creating, reviewing, understanding, or mapping design decisions onto the codebase.
Creates technical implementation plans mapping design decisions to affected components, tools, and sequencing.
npx claudepluginhub xobotyi/cc-foundryThis skill inherits all available tools. When active, it can use any tool Claude has access to.
High-level technical planning that bridges a design document to task decomposition. The input is a design document with a chosen solution. The output is a technical design that maps the solution onto the codebase without prescribing implementation details.
A design document decides WHAT to build and WHY. But before work can be decomposed into tasks, someone must map the decision onto reality: which components are affected, what tools are needed, in what order things should change, and what risks exist.
Without this step, task decomposition operates on abstractions. Tasks like "implement the new cache layer" appear without clarity on which modules are involved, what dependencies exist between changes, or what the technical approach looks like. The result is tasks that are either too vague to act on or too detailed to have been created without actually doing the implementation work.
The technical design is the map between the strategic decision and the practical work breakdown. It scopes the territory so that task decomposition can divide it.
Write a technical design when:
Skip when:
For each affected component, describe WHAT changes at a high level:
Describe changes in terms of their effect on the component, not the code that implements them. Pseudocode is acceptable when expressing logical changes that are easier to communicate as structured logic than as prose.
Identify ordering constraints between component changes:
Explicitly state what this technical design does NOT cover:
design-docs/ following the file conventions.# Technical Design: [Feature/Change Name]
**Design Document:** [link to or name of the design document]
**Chosen Solution:** [brief restatement of the recommended option]
## Affected Components
- **[Component A]** — [brief description of what changes]
- **[Component B]** — [brief description of what changes]
- ...
## Technical Approach
### [Component A]
- Current state: [what it does now]
- Target state: [what it needs to do]
- Nature of change: [new code / refactor / config / migration]
### [Component B]
- Current state: [what it does now]
- Target state: [what it needs to do]
- Nature of change: [new code / refactor / config / migration]
## Tool and Technology Decisions
- **[Tool/Library]** — [what for, why this one]
- ...
## Dependencies and Sequencing
[Component A] (no dependencies) ↓ [Component B] (depends on A) ↓ [Component C] (depends on B)
[Component D] (parallel, no dependencies)
## Risks and Assumptions
- **Risk:** [what could go wrong]
- **Assumption:** [what we're taking for granted]
## Scope Boundaries
**In scope:**
- [what this effort covers]
**Out of scope:**
- [what it explicitly does not cover]
Before considering a technical design complete:
design-docs/ within project directory, alongside the design document it realizesNN-short-description.technical-design.md — same number prefix as the parent design
document (e.g., 02-cache-layer-redesign.technical-design.md for design doc 02-cache-layer-redesign.md)design-docs/completed/ when implementedContains implementation details: If the document includes production code or function-level descriptions, it has crossed into implementation. The technical design describes WHAT changes at the component level and HOW the approach works abstractly — the exact implementation is the job of whoever picks up the task. Pseudocode for logical changes is acceptable; production code is not.
Skips the design document: A technical design without a design document is a solution without a justified decision. Go back and create the design document first.
Task-level granularity: If the document reads like a task list ("Step 1: create file X, Step 2: modify function Y"), it has crossed into task decomposition. Pull back to the component level.
Missing dependencies: Without sequencing, task decomposition will produce tasks that block each other or that someone starts before prerequisites are ready.
Scope creep from the design document: The technical design realizes the CHOSEN solution. If it starts exploring alternatives or revisiting decisions, it belongs back in the design document.
When the technical design is complete and approved:
The technical design is complete. The next step is decomposing it into actionable tasks. Would you like to proceed with task decomposition?
task-decomposition skill.This skill should be used when the user asks about libraries, frameworks, API references, or needs code examples. Activates for setup questions, code generation involving libraries, or mentions of specific frameworks like React, Vue, Next.js, Prisma, Supabase, etc.