review-design
Validate technical designs against requirements for coverage, feasibility, and architectural soundness. Use after creating a design.
What this skill does
# Review Design
**Input:** `$ARGUMENTS`
Parse input to extract design path and requirements path. Expected format: `{design-path} {requirements-path}` or just `{design-path}` (infer requirements from same topic directory).
## Phase 1: Requirements Coverage
Designs that skip requirements produce elegant architectures that solve the wrong problem.
Spawn a Task agent to verify the design addresses all requirements:
Task tool parameters:
subagent_type: general-purpose
model: sonnet
description: Design-requirements coverage check
prompt: |
Check that the design covers all requirements.
Input: $ARGUMENTS
- Design: the design.md file
- Requirements: the requirements.md file (same topic directory, or provided explicitly)
## Process
1. Read requirements file — extract every user story and acceptance criterion
2. Read design file
3. Map each acceptance criterion to design coverage: covered, partial, or missing
4. A criterion is "covered" if the design's architecture, components, data models, or error handling would enable an implementer to satisfy it without guessing
## Output
If all covered: `PASS`
If gaps exist:
- Missing: [acceptance criterion not addressed by design]
- Partial: [criterion partially covered — what's missing]
If coverage check fails, report issues and stop.
## Phase 2: Flow Simulation
**You (the main agent) do this phase directly — do not delegate.**
This is the highest-signal review activity. Most design gaps hide in the seams between components.
### Process
1. **Read the design and requirements.**
2. **Read critical related files** — just the ones defining runtime contracts the design depends on:
- Data models (schemas, types) the design creates or reads
- Services/endpoints the design extends
- State machines or lifecycle code the design participates in
3. **Construct the step-by-step journey.** Write out the flow from trigger to final state — every user action, system reaction, state change. Include happy path and important alternate paths.
4. **At each step, check:**
| Check | Question | Example gap |
|-------|----------|-------------|
| **Preconditions** | What must be true for this step? Is it guaranteed by the design? | "Design creates a record but doesn't specify what happens if the parent doesn't exist" |
| **State consistency** | Does the system interpret state correctly at each point? | "Component A sets status to PENDING but Component B only handles ACTIVE and COMPLETE" |
| **Failure** | What happens if this step fails? Is recovery defined? | "If the API call fails, the design doesn't say whether to retry or surface the error" |
| **Handoff** | Does this step's output match the next step's expected input? | "Service returns a list but the consumer expects a single item" |
5. **Report findings.** For each gap: what step, what's missing, what would go wrong during implementation.
If no gaps: `PASS — flow simulation found no gaps.`
## Phase 3: Feasibility Review
A design can cover all requirements and flow correctly but still be unbuildable — incompatible with existing patterns, impossible data model, or components that can't actually connect.
Spawn a Task agent to check architectural feasibility:
Task tool parameters:
subagent_type: general-purpose
model: sonnet
description: Design feasibility review
prompt: |
Review the design for architectural feasibility.
Design path: [from $ARGUMENTS]
## Process
1. Read the design file
2. Read related files listed in the design
3. Read CLAUDE.md and .claude/rules/*.md for project patterns
4. Check:
- **Pattern compatibility**: Does the design follow or reasonably extend existing patterns? Flag contradictions with established conventions.
- **Component boundaries**: Are responsibilities clear? Would two teams implementing different components know exactly where one ends and the other begins?
- **Data model soundness**: Are schemas consistent with existing models? Are relationships, constraints, and validation rules well-defined?
- **Integration feasibility**: Can the proposed components actually connect as described? Are there missing adapters, transformations, or protocol mismatches?
## Critical Rules
- If the design is sound, report PASS.
- Do NOT fabricate concerns or suggest alternatives that aren't clearly better.
- Do NOT flag: subjective architecture preferences, speculative scaling concerns, things the planner will naturally resolve.
- Threshold: Would an implementer discover that the design can't work as described?
## Output
If no issues: `PASS — design is feasible and compatible with existing patterns.`
If issues exist:
- **{issue}** — {what's wrong or incompatible} → {what would break during implementation}
## Phase 4: Aggregate
Multiple phases catching the same gap is signal — those are the issues most likely to cause implementation failure.
Collect results from all phases. Drop PASS results.
If all phases pass: report `PASS` to the user.
If issues found:
- Deduplicate (flow simulation and feasibility may flag the same gap)
- Group by severity: issues found by multiple phases are highest signal
- Present each issue with: which phase found it, the gap, and the implementation risk
- Keep the report concise
Related in Design
contribute
IncludedLocal-only OSS contribution command center. Auto-refreshes the user's in-flight PR and issue state on invoke so conversations start with full context — no need to brief Claude on what's in flight. Helps the user find issues to contribute to on GitHub, builds per-repo dossiers of what each upstream expects (CLA, DCO, branch convention, AI policy, draft-first, review bots, issue templates), runs deterministic gates before any external action so AI-assisted contributions don't reach maintainers as slop. State is markdown-only: candidate files at ~/.contribute-system/candidates/, repo dossiers at ~/.contribute-system/research/, append-only event log at ~/.contribute-system/log.jsonl. No database, no cloud calls. Use when the user asks about their PRs / issues / contributions, wants to find new work to take on, claim an issue, build/refresh a repo's dossier, or draft a Design Issue or PR. Trigger with "/contribute", "what's my PR status", "find a contribution", "claim issue X", "draft a Design Issue for Y", "refresh dossier for Z".
architectural-analysis
IncludedUser-triggered deep architectural analysis of a codebase or scoped subtree across eight modes — information architecture, data flow, integration points, UI surfaces, interaction patterns, data model, control flow, and failure modes. This skill should be used when the user asks to "diagram this codebase," "map the architecture," "show the data flow," "give me an ERD," "trace control flow," "find the integration points," "verify the layout pattern," "audit the UX architecture," or any similar request whose primary deliverable is mermaid diagrams plus cited reports under docs/architecture/. Dispatches haiku/sonnet sub-agents in parallel for per-mode exploration, then verifies every citation mechanically before any node lands in a diagram. Not for one-off prose explanations of code (use code-explanation) or for high-level system design from scratch (use system-design).
mcp
IncludedModel Context Protocol (MCP) server development and tool management. Languages: Python, TypeScript. Capabilities: build MCP servers, integrate external APIs, discover/execute MCP tools, manage multi-server configs, design agent-centric tools. Actions: create, build, integrate, discover, execute, configure MCP servers/tools. Keywords: MCP, Model Context Protocol, MCP server, MCP tool, stdio transport, SSE transport, tool discovery, resource provider, prompt template, external API integration, Gemini CLI MCP, Claude MCP, agent tools, tool execution, server config. Use when: building MCP servers, integrating external APIs as MCP tools, discovering available MCP tools, executing MCP capabilities, configuring multi-server setups, designing tools for AI agents.
react-native-skia
IncludedDesign, build, debug, and optimise high-polish animated graphics in React Native or Expo using @shopify/react-native-skia, Reanimated, and Gesture Handler. Use when the user wants canvas-driven UI, shaders, paths, rich text, image filters, sprite fields, Skottie, video frames, snapshots, web CanvasKit setup, or performance tuning for custom motion-heavy elements such as loaders, hero art, cards, charts, progress indicators, particle systems, or gesture-driven surfaces. Also use when the user asks for fluid, glow, glass, blob, parallax, 60fps/120fps, or GPU-friendly animated effects in React Native, even if they do not explicitly say "Skia". Do not use for ordinary form/layout work with standard views.
plaid
IncludedProduct Led AI Development — guides founders from idea to launched product. Six capabilities: Idea (discover a product idea), Validate (pressure-test the idea against fatal flaws, problem reality, competition, and 2-week MVP feasibility), Plan (vision intake + document generation), Design (translate image references into a design.md spec), Launch (go-to-market strategy), and Build (roadmap execution). Use when someone says "PLAID", "plaid idea", "help me find an idea", "product idea", "idea from my business", "idea from my expertise", "plaid validate", "validate my idea", "pressure-test", "is this idea good", "find fatal flaws", "validate the problem", "plan a product", "define my vision", "generate a PRD", "product strategy", "plaid design", "design from image", "translate image to design", "create design.md", "extract design tokens", "plaid launch", "go-to-market", "launch plan", "GTM strategy", "launch playbook", "plaid build", "build the app", "start building", or "execute the roadmap".
nextjs-framer-motion-animations
IncludedAdds production-safe Motion for React or Framer Motion animations to Next.js apps, including reveal, hover and tap micro-interactions, whileInView, stagger, AnimatePresence, layout and layoutId transitions, reorder, scroll-linked UI, and lightweight route-content transitions. Use when the user asks to add, refactor, or debug Motion or Framer Motion in App Router or Pages Router codebases, especially around server/client boundaries, reduced motion, LazyMotion, bundle size, hydration, or route transitions. Avoid for GSAP-style timelines, WebGL or 3D scenes, heavy scroll storytelling, or CSS-only effects unless Motion is explicitly requested.