plugins/design/skills/design-review/SKILL.md
Reviews and critiques an existing or proposed system design — flags single points of failure, missing non-functional requirements, scaling bottlenecks, security gaps, operational blind spots, unjustified tech choices, and places where the design will fall over under load or failure. Produces a structured review with severity-tagged findings, not just vibes. Use when the user asks for a second opinion on an architecture, requests a design review, wants feedback on a proposed system, pastes a design doc, or says things like "review this design", "what's wrong with X", "poke holes in this", or "is this a good architecture".
npx skillsauth add lucasilverentand/skills design-reviewInstall 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.
Read a design, stress-test it against real failure modes and scale pressures, and produce honest feedback — not a rubber stamp, not a wishlist, but the kind of review that would surface issues before prod does.
.context/ first, then review the implemented architecture against what it should doBefore criticizing anything, make sure you understand:
If the doc doesn't say, ask — don't review against imagined requirements. A design is only wrong relative to something; make sure you know what that something is.
Walk each lens below and write findings as you go. Not every lens applies to every design — skip the ones that don't fit, but skip consciously.
Check the design against the convention references in sibling skills (../data-modeling/references/, ../api-design/references/, ../architecture/references/). If the intent:requirements skill is installed, use its NFR checklist for non-functional coverage; otherwise evaluate NFRs from the design text and ask for missing targets. Deviations aren't wrong, but they should be intentional and documented. Flag if:
Idempotency-Key enforcementtenant_id + RLS on tenant-scoped tablesProduce a structured review document. Write it back to the user in chat for discussion, and optionally save it to .context/architecture/reviews/<design>-review-<date>.md if they want a record.
Structure:
# Review: <design name>
Reviewer: Agent
Date: <YYYY-MM-DD>
## Summary
<2-3 sentences: overall take, most important finding>
## What works
<Things the design gets right. This is not flattery — note real strengths so they don't get lost in a refactor.>
## Findings
### [CRITICAL] <finding title>
**Problem:** <what's wrong>
**Why it matters:** <consequence under realistic conditions>
**Suggestion:** <one or two concrete ways to fix it>
### [MAJOR] <finding title>
...
### [MINOR] <finding title>
...
### [QUESTION] <finding title>
**Question:** <something the doc doesn't answer that a reviewer would need to know>
## Open questions for the author
<Things you couldn't review because the doc didn't say>
Use these to force calibration — don't label everything CRITICAL.
|Severity|Meaning|Example| |---|---|---| |CRITICAL|Will cause incidents in production or block a core requirement|Dual-write between DB and queue with no outbox → lost events| |MAJOR|Significant risk or cost you'd want to address before building|Single Redis instance for session store at 99.95% target| |MINOR|Worth fixing but won't sink the project|Missing rate limits on internal admin endpoint| |QUESTION|Reviewer can't assess without more info|"What's the expected write/read ratio on the orders table?"|
Reviews are a teaching tool. The author might be senior; the next person to read the doc might not be. That means:
Embedded explainers make the review useful to a wider audience — including weaker LLM models that will read this doc later as context.
|File|Covers|
|---|---|
|../data-modeling/references/|Data conventions — IDs, naming, tenancy, soft delete, JSONB, audit, migrations (one file per topic)|
|../api-design/references/|API conventions — HTTP, errors, auth, pagination, API patterns (one file per topic)|
|../architecture/references/|Infra conventions — async, resilience, observability, deploy, testing, privacy (one file per topic)|
|intent:requirements|Companion requirements skill — use for NFR coverage if the plugin is installed|
|Situation|Action|
|---|---|
|The design is missing a section entirely (e.g., no NFRs)|Flag the gap; hand off to intent:requirements for NFRs or design:write-design-doc for structure if installed|
|The user wants the design rewritten after review|Hand off to architecture plus design:write-design-doc with findings as input if installed|
|A finding deserves a permanent decision record|Suggest design:write-adr to capture the resolution if installed|
development
Cross-platform Apple Human Interface Guidelines: color, typography, layout, materials, motion, accessibility, SF Symbols, branding, plus shared UI elements (activity views, rating indicators, web views, …) and meta sections (components, patterns, technologies). Use when the design topic is platform-agnostic. User says: "iOS color tokens", "SF Symbols", "Apple typography", "dark mode guidance".
development
Guides a full system design from idea to spec — sequences requirements gathering, architecture decomposition, data modeling, API design, and document writing into a coherent workflow with clear handoffs. Use when the user asks to "design a system", "build X from scratch", "architect something end-to-end", "plan a new service", or has a broad design ask that spans multiple concerns. Also use when the user says things like "I need to build X" without specifying which aspect to start with. This is the entry point for any design task that isn't clearly scoped to a single skill (data model only, API only, etc.).
development
Synthesizes build-ready design systems and DESIGN.md files from chat briefs, screenshots, moodboards, videos, URLs, live pages, or local image folders while preserving the target product identity. Use when the user asks to "make a design system from these screenshots", "turn this moodboard into DESIGN.md", "extract the design language from this video", "define the UX vibe and rules from these references", or create cohesive UI rules from visual inspiration.
development
Generates interactive HTML design explorations for UI features — produces a single self-contained HTML file with multiple design variants and a switcher to compare them. Supports card-level components through full screen layouts using skeleton wireframe elements. Use when exploring design directions, comparing layout options, mocking up a feature before building it, or presenting UI alternatives.