@hegemonart/get-design-done 1.24.2 → 1.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +41 -0
- package/README.de.md +679 -0
- package/README.fr.md +679 -0
- package/README.it.md +679 -0
- package/README.ja.md +679 -0
- package/README.ko.md +679 -0
- package/README.md +396 -729
- package/README.zh-CN.md +480 -133
- package/SKILL.md +2 -0
- package/agents/prototype-gate.md +122 -0
- package/agents/quality-gate-runner.md +125 -0
- package/hooks/budget-enforcer.ts +132 -7
- package/hooks/gdd-decision-injector.js +183 -3
- package/hooks/gdd-turn-closeout.js +238 -0
- package/hooks/hooks.json +10 -0
- package/package.json +5 -5
- package/reference/STATE-TEMPLATE.md +41 -0
- package/reference/config-schema.md +30 -0
- package/scripts/lib/gdd-state/mutator.ts +454 -0
- package/scripts/lib/gdd-state/parser.ts +351 -1
- package/scripts/lib/gdd-state/types.ts +193 -0
- package/scripts/lib/quality-gate-detect.cjs +126 -0
- package/skills/quality-gate/SKILL.md +222 -0
- package/skills/router/SKILL.md +29 -9
- package/skills/sketch-wrap-up/SKILL.md +47 -2
- package/skills/spike-wrap-up/SKILL.md +41 -2
- package/skills/turn-closeout/SKILL.md +115 -0
- package/skills/verify/SKILL.md +22 -0
package/README.md
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
# GET DESIGN DONE
|
|
4
4
|
|
|
5
|
-
**English** · [简体中文](README.zh-CN.md)
|
|
5
|
+
**English** · [简体中文](README.zh-CN.md) · [日本語](README.ja.md) · [한국어](README.ko.md) · [Français](README.fr.md) · [Italiano](README.it.md) · [Deutsch](README.de.md)
|
|
6
6
|
|
|
7
|
-
**
|
|
7
|
+
**A design-quality pipeline for AI coding agents: brief → explore → plan → implement → verify.**
|
|
8
8
|
|
|
9
|
-
**
|
|
9
|
+
**Get Design Done keeps AI-generated UI tied to your brief, your design system, your references, and your quality gates. Works with Claude Code, OpenCode, Gemini CLI, Kilo, Codex, Copilot, Cursor, Windsurf, Antigravity, Augment, Trae, Qwen Code, CodeBuddy, and Cline.**
|
|
10
10
|
|
|
11
11
|
[](https://www.npmjs.com/package/@hegemonart/get-design-done)
|
|
12
12
|
[](https://www.npmjs.com/package/@hegemonart/get-design-done)
|
|
13
|
-
[](https://github.com/hegemonart/get-design-done)
|
|
14
13
|
[](https://github.com/hegemonart/get-design-done/actions/workflows/ci.yml)
|
|
14
|
+
[](https://github.com/hegemonart/get-design-done)
|
|
15
15
|
[](https://nodejs.org/)
|
|
16
16
|
[](LICENSE)
|
|
17
17
|
|
|
@@ -21,15 +21,15 @@
|
|
|
21
21
|
npx @hegemonart/get-design-done@latest
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
**
|
|
24
|
+
**Works on macOS, Linux, and Windows.**
|
|
25
25
|
|
|
26
26
|
<br>
|
|
27
27
|
|
|
28
|
-
*"
|
|
28
|
+
*"AI coding agents ship UI fast. Get Design Done makes sure it ships as design."*
|
|
29
29
|
|
|
30
30
|
<br>
|
|
31
31
|
|
|
32
|
-
[Why I Built This](#why-i-built-this) · [How It Works](#how-it-works) · [
|
|
32
|
+
[Why I Built This](#why-i-built-this) · [How It Works](#how-it-works) · [Commands](#commands) · [Connections](#connections) · [Why It Works](#why-it-works)
|
|
33
33
|
|
|
34
34
|
</div>
|
|
35
35
|
|
|
@@ -44,91 +44,82 @@ npx @hegemonart/get-design-done@latest
|
|
|
44
44
|
> /gdd:handoff ./my-design.html
|
|
45
45
|
> ```
|
|
46
46
|
>
|
|
47
|
-
>
|
|
47
|
+
> Parses the bundle's CSS custom properties into D-XX design decisions, runs the verification pass with Handoff Faithfulness scoring, and optionally writes implementation status back to Figma.
|
|
48
48
|
|
|
49
49
|
---
|
|
50
50
|
|
|
51
51
|
## Why I Built This
|
|
52
52
|
|
|
53
|
-
I'm a designer who ships with
|
|
53
|
+
I'm a designer who ships with AI coding agents. The code-side workflow is mature: specs, tasks, tests, commits, review loops. The design-side workflow was not.
|
|
54
54
|
|
|
55
|
-
What I kept running into:
|
|
55
|
+
What I kept running into: the agent could generate a screen that looked fine in isolation, but the work was disconnected. Tokens did not match the existing system. Contrast ratios drifted below WCAG. Hierarchy got reinvented per screen. Old anti-patterns leaked into new components. And because nothing verified the output against the original brief, the problems usually surfaced late, in PR review or after handoff.
|
|
56
56
|
|
|
57
|
-
So I built Get Design Done
|
|
57
|
+
So I built Get Design Done: a design pipeline that gives AI coding agents the same kind of structure developers already expect from engineering workflows. It captures the brief, maps the current design system, grounds decisions in references, decomposes the work into atomic tasks, executes those tasks, and verifies the result before you ship.
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
Behind the scenes: 37 specialized agents, a queryable intel store, tier-aware model routing, 12 optional tool connections, atomic commits, and a no-regret adaptive layer that learns from solidify-with-rollback outcomes. What you use day to day: a few `/gdd:*` commands that keep design work coherent.
|
|
60
60
|
|
|
61
61
|
— **Hegemon**
|
|
62
62
|
|
|
63
63
|
---
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
AI-generated design has the same failure mode as AI-generated code: describe what you want, get something plausible, then watch it fall apart at scale because no system tied the output back to the brief.
|
|
66
66
|
|
|
67
|
-
Get Design Done
|
|
67
|
+
Get Design Done is the context engineering layer for design work. It turns "make this UI better" into a traceable cycle: brief → inventory → references → plan → implementation → verification.
|
|
68
68
|
|
|
69
69
|
---
|
|
70
70
|
|
|
71
|
-
##
|
|
72
|
-
|
|
73
|
-
Anyone shipping UI with Claude Code who expects the output to actually hold up — engineers, designers, design-engineers, solo founders. If you care that tokens match, contrast passes WCAG, and the result ties back to what you asked for, this is for you.
|
|
74
|
-
|
|
75
|
-
You don't need to be a designer. The pipeline carries the design expertise so you don't have to — it extracts the system, grounds in references, verifies against the brief, and catches the things people usually miss.
|
|
76
|
-
|
|
77
|
-
Built-in quality gates catch real problems: Handoff Faithfulness scoring on Claude Design bundles, contrast audits across the full palette × surface matrix, anti-pattern detection from the NNG catalog, dark-mode architecture verification, and motion-system consistency checks.
|
|
78
|
-
|
|
79
|
-
### v1.19.0 Highlights — Full Knowledge Coverage (18 reference files)
|
|
80
|
-
|
|
81
|
-
- **Knowledge-layer complete** — The plugin now ships **18 reference files** covering every major design-knowledge domain identified in the 2026-04-18 coverage audit. Agents have authoritative answers on platform conventions, internationalization, research methodology, information architecture, form design, and data visualization — in addition to the foundational knowledge from v1.15.0.
|
|
82
|
-
- **7 new Phase 19 references** — `platforms.md` (iOS/Android/web/visionOS/watchOS), `rtl-cjk-cultural.md` (RTL + CJK + cultural color), `onboarding-progressive-disclosure.md`, `user-research.md` (method matrix, A/B, ethics), `information-architecture.md` (nav patterns, tree-test benchmarks), `form-patterns.md` (Wroblewski label research, autocomplete taxonomy, CAPTCHA ethics), `data-visualization.md` (25 chart types, Okabe-Ito palette, dashboard patterns — UUPM MIT).
|
|
83
|
-
- **New `type:forms` executor task type** — `design-executor` now has a dedicated 7-step checklist for form audits: label position, validation timing, autocomplete tokens, inputmode hints, password UX, multi-step state, and CAPTCHA compliance.
|
|
84
|
-
- **Platform + locale detection in context-builder** — `design-context-builder` now explicitly prompts for locale/RTL/CJK requirements (Area 2) and device targets with platform references (Area 6), ensuring downstream agents receive the full platform context.
|
|
71
|
+
## What You Get
|
|
85
72
|
|
|
86
|
-
|
|
73
|
+
- **Brief-grounded design work** — every cycle starts with the problem, audience, constraints, success metrics, and must-haves.
|
|
74
|
+
- **Design-system extraction** — GDD inventories tokens, typography, spacing, components, motion, accessibility, dark mode, and design debt before planning changes.
|
|
75
|
+
- **Reference-backed decisions** — agents use embedded design references plus optional Figma, Refero, Pinterest, Storybook, Chromatic, Preview, Claude Design, paper.design, pencil.dev, Graphify, 21st.dev Magic, and Magic Patterns connections.
|
|
76
|
+
- **Atomic execution** — design tasks are decomposed by dependency, run in safe waves, and committed independently.
|
|
77
|
+
- **Verification before shipping** — audits check brief fit, token integration, WCAG contrast, component conformance, motion consistency, dark-mode architecture, and design anti-patterns.
|
|
78
|
+
- **Rollback on failed validation** — solidify-with-rollback validates each task before it sticks; failed work is automatically reverted.
|
|
87
79
|
|
|
88
|
-
|
|
89
|
-
- **Motion vocabulary (RN MIT upstream)** — `motion-easings.md` (12 canonical curve presets, `--ease-*` token catalog), `motion-interpolate.md` (input→output range + 4 extrapolation modes: extend/identity/clamp/wrap), `motion-spring.md` (gentle/wobbly/stiff/slow presets with 60fps settle-times). Optional math helpers at `scripts/lib/easings.cjs` and `scripts/lib/spring.cjs`.
|
|
90
|
-
- **Transition taxonomy (hyperframes Apache-2.0)** — `motion-transition-taxonomy.md` names 8 controlled families (3d, blur, cover, destruction, dissolve, distortion, grid, light) so motion-mapper output diffs cleanly cycle-over-cycle.
|
|
91
|
-
- **Structured motion-map output** — `motion-mapper` now emits a JSON block at the top of `.design/map/motion.md` conforming to `reference/output-contracts/motion-map.schema.json`. Every animation binding declares easing (canonical or custom+justification), transition family, duration class, and trigger type. `scripts/lib/parse-contract.cjs` validates and returns structured data or actionable error.
|
|
92
|
-
- **Agent wiring** — `token-mapper` gains easing consolidation (raw `cubic-bezier()` → `--ease-*` token recommendations); `design-executor` reads craft references per task type; `design-auditor` scores gesture patterns and clip-path animations as advanced-craft signal (positive, not a penalty).
|
|
93
|
-
|
|
94
|
-
### v1.15.0 Highlights — Design Knowledge Expansion
|
|
95
|
-
|
|
96
|
-
- **10 new foundational references** — `iconography.md`, `performance.md`, `brand-voice.md`, `visual-hierarchy-layout.md`, `gestalt.md`, `design-system-guidance.md`, `design-systems-catalog.md`, `framer-motion-patterns.md`, `palette-catalog.md`, `style-vocabulary.md`. Agents now have authoritative answers on icon sizing, Web Vitals budgets, brand voice axes, Gestalt principles, DS governance, and 40+ industry-vertical color palettes.
|
|
97
|
-
- **MIFB micro-polish track** — MIT content from [Jakub Krehel](https://jakub.kr/writing/details-that-make-interfaces-feel-better): new `reference/surfaces.md` (concentric radius, 3-layer shadow), `text-wrap: balance/pretty`, canonical press scale `0.96`, `AnimatePresence initial={false}`, `bounce: 0` icon cross-fade, and 4 new BAN entries. All four mapper agents gain "Micro-polish findings" detection. New 7th audit pillar: **Micro-polish** (5%).
|
|
98
|
-
- **UUPM data ingest** — One-shot MIT snapshot from [nextlevelbuilder/ui-ux-pro-max-skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) v2.5.0: icon metaphor taxonomy, React perf heuristics, 20+ industry verticals, 24 landing-page archetypes, 57 font pairings, 40+ WCAG-verified palettes, 38+ UI aesthetic styles — all rewritten in GDD voice.
|
|
99
|
-
- **⚠️ Breaking** — 7th audit pillar changes Anti-Pattern Compliance weight (10%→5%). Cross-cycle score comparisons spanning v1.14.x and v1.15.0 should account for this weight shift.
|
|
100
|
-
|
|
101
|
-
### v1.14.0 Highlights
|
|
102
|
-
|
|
103
|
-
- **AI-native canvas tools** — paper.design (MCP canvas read/write, screenshot verification) and pencil.dev (git-tracked `.pen` spec files, no MCP required) complete a full canvas→code→verify→canvas round-trip.
|
|
104
|
-
- **Component generators** — 21st.dev Magic MCP adds a prior-art gate before any greenfield build; Magic Patterns generates DS-aware components with a `preview_url` for visual verification. Both feed into a shared `design-component-generator` agent.
|
|
105
|
-
- **Twelve tool connections** — Four new connections (paper.design, pencil.dev, 21st.dev, Magic Patterns) join the original eight. All are optional; the pipeline degrades gracefully to fallbacks when any connection is unavailable.
|
|
80
|
+
---
|
|
106
81
|
|
|
107
|
-
##
|
|
82
|
+
## Who This Is For
|
|
108
83
|
|
|
109
|
-
|
|
84
|
+
GDD is for engineers, designers, design engineers, founders, and product builders who ship UI with AI coding agents and need the result to hold together beyond the first screenshot.
|
|
110
85
|
|
|
111
|
-
|
|
86
|
+
Use it when you care that tokens match, contrast passes WCAG, motion feels cohesive, components follow your system, and the final implementation still matches what you asked for.
|
|
112
87
|
|
|
113
|
-
|
|
88
|
+
You do not need to be a designer to benefit from it. The pipeline carries the design discipline into the agent workflow: it extracts context, asks only for missing decisions, grounds the work in references, and catches the issues people usually find too late.
|
|
114
89
|
|
|
115
|
-
|
|
90
|
+
### v1.25.0 Highlights — Pipeline Hardening
|
|
116
91
|
|
|
117
|
-
|
|
92
|
+
Four pipeline gaps surfaced in the post-Phase-24 retrospective land as first-class pipeline citizens. All four are additive — no state-machine break, no breaking router contract.
|
|
118
93
|
|
|
119
|
-
**
|
|
94
|
+
- **Prototype gate** — sketches and spikes become read/write members of the decision graph. New `prototype-gate` Haiku agent emits a recommend/skip verdict at two firing points (post-explore for sketches, post-plan for spikes); `sketch-wrap-up` and `spike-wrap-up` close the loop with a coupled D-XX + `<prototyping>` outcome write. The `decision-injector` surfaces top-N prior outcomes when downstream agents read planning files. STATE.md gains a `<prototyping>` block — round-trips byte-identically through the parser/serializer.
|
|
95
|
+
- **S/M/L/XL complexity buckets** — router heuristic table refined from 3 to 4 tiers so telemetry distinguishes trivial from full-pipeline. JSON output now carries `complexity_class` (`S | M | L | XL`) next to the existing `path` (`fast | quick | full`) — strict superset, no breaking change for existing consumers. Canonical mapping: `/gdd:help`→S (short-circuit), `/gdd:scan`→M, standalone `/gdd:plan`→L, `/gdd:next` autonomous flow→XL. Budget enforcer reads class-specific caps from `.design/budget.json#class_caps_usd` when present.
|
|
96
|
+
- **Quality gate (Stage 4.5)** — new lint/typecheck/test/visual-regression gate sits between `/gdd:design` and `/gdd:verify`. Detects commands automatically from `package.json#scripts` (or honors `.design/config.json#quality_gate.commands` when declared); excludes `test:e2e` for speed. Bounded fix loop (default `max_iters: 3`) reuses `design-fixer`. Timeout warns and proceeds (non-blocking on slow suites); failures mark STATE `<quality_gate>` block status=fail and verify entry refuses. Six lifecycle events emitted to `events.jsonl`.
|
|
97
|
+
- **Turn closeout (Stop hook)** — new `gdd-turn-closeout.js` Stop hook fires when the assistant turn ends. Reads STATE.md + tails events.jsonl; if mid-pipeline and the last event is stale, appends a `turn_end` event and surfaces a stage-completion or paused-mid-task nudge. ≤10ms typical latency budget. Portable Skill mirror at `skills/turn-closeout/SKILL.md` covers the 13 non-Claude runtimes that lack a Stop hook surface.
|
|
120
98
|
|
|
121
|
-
|
|
99
|
+
### Previous releases
|
|
122
100
|
|
|
123
|
-
|
|
101
|
+
- **v1.24.0** — Multi-Runtime Installer (`@clack/prompts` interactive multi-select for all 14 runtimes, idempotent + foreign-AGENTS.md-safe, scripted CI surface preserved 1:1).
|
|
102
|
+
- **v1.23.5** — No-Regret Adaptive Layer (Thompson sampling bandit + AdaNormalHedge ensemble + MMR rerank; single-user via informed-prior bootstrap, no opt-in telemetry).
|
|
103
|
+
- **v1.23.0** — SDK Domain Primitives (solidify-with-rollback gate, JSON output contracts, auto-crystallization of `Touches:` patterns).
|
|
104
|
+
- **v1.22.0** — SDK Observability (~24 typed event types, per-tool-call trajectory, append-only event chain, secret scrubber).
|
|
105
|
+
- **v1.21.0** — Headless SDK (`gdd-sdk` CLI runs full pipeline without Claude Code, parallel researchers, cross-harness MCP).
|
|
106
|
+
- **v1.20.0** — SDK Foundation (resilience primitives, lockfile-safe `STATE.md`, `gdd-state` MCP server with 11 typed tools, TypeScript foundation).
|
|
124
107
|
|
|
125
|
-
|
|
108
|
+
For full release notes see [CHANGELOG.md](CHANGELOG.md).
|
|
126
109
|
|
|
127
|
-
|
|
110
|
+
---
|
|
128
111
|
|
|
129
|
-
|
|
112
|
+
<p align="center">
|
|
113
|
+
<strong>Supported by</strong>
|
|
114
|
+
</p>
|
|
130
115
|
|
|
131
|
-
|
|
116
|
+
<div align="center">
|
|
117
|
+
<a href="https://www.humbleteam.com/" aria-label="Humbleteam">
|
|
118
|
+
<img src="docs/assets/sponsors/humbleteam.svg" alt="Humbleteam logo" width="180">
|
|
119
|
+
</a>
|
|
120
|
+
<br>
|
|
121
|
+
<sub>Product design partner for ambitious startups and AI products.</sub>
|
|
122
|
+
</div>
|
|
132
123
|
|
|
133
124
|
---
|
|
134
125
|
|
|
@@ -138,103 +129,98 @@ Built-in quality gates catch real problems: Handoff Faithfulness scoring on Clau
|
|
|
138
129
|
npx @hegemonart/get-design-done@latest
|
|
139
130
|
```
|
|
140
131
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
132
|
+
The installer prompts you to choose:
|
|
133
|
+
1. **Runtime** — Claude Code, OpenCode, Gemini, Kilo, Codex, Copilot, Cursor, Windsurf, Antigravity, Augment, Trae, Qwen Code, CodeBuddy, Cline, or all (interactive multi-select — pick multiple runtimes in a single session)
|
|
134
|
+
2. **Location** — Global (all projects) or local (current project only)
|
|
144
135
|
|
|
145
|
-
|
|
136
|
+
Verify with:
|
|
146
137
|
|
|
147
|
-
|
|
138
|
+
```
|
|
139
|
+
/gdd:help
|
|
140
|
+
```
|
|
148
141
|
|
|
149
|
-
|
|
142
|
+
> [!TIP]
|
|
143
|
+
> Run Claude Code with `--dangerously-skip-permissions` for a frictionless experience. GDD is designed for autonomous multi-stage execution — approving each Read and `git commit` defeats the purpose.
|
|
150
144
|
|
|
151
|
-
|
|
145
|
+
### Staying Updated
|
|
152
146
|
|
|
153
|
-
|
|
154
|
-
- For AGENTS.md runtimes: drops a fingerprinted `AGENTS.md` (or `GEMINI.md`) in the runtime's config dir.
|
|
155
|
-
- Preserves every other key in your settings — theme, permissions, other marketplaces — untouched.
|
|
156
|
-
- Idempotent: safe to re-run; no duplicate entries; foreign AGENTS.md files are never overwritten.
|
|
147
|
+
GDD ships often. Update by re-running the installer (it's idempotent — updates registered marketplace entries in place):
|
|
157
148
|
|
|
158
|
-
|
|
149
|
+
```bash
|
|
150
|
+
npx @hegemonart/get-design-done@latest
|
|
151
|
+
```
|
|
159
152
|
|
|
160
|
-
|
|
153
|
+
Or from inside Claude Code:
|
|
161
154
|
|
|
162
155
|
```
|
|
163
|
-
/gdd:
|
|
156
|
+
/gdd:update
|
|
164
157
|
```
|
|
165
158
|
|
|
166
|
-
|
|
159
|
+
`/gdd:update` previews the changelog before applying. Local modifications under `reference/` are preserved — if a structural update needs re-stitching, run `/gdd:reapply-patches`. When a new release lands, the SessionStart hook prints a one-line banner gated by state-machine logic so it never interrupts a running stage.
|
|
167
160
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
### Non-interactive install (CI, Docker, scripts)
|
|
161
|
+
<details>
|
|
162
|
+
<summary><strong>Non-interactive Install (Docker, CI, Scripts)</strong></summary>
|
|
171
163
|
|
|
172
164
|
```bash
|
|
173
|
-
#
|
|
174
|
-
npx @hegemonart/get-design-done
|
|
175
|
-
|
|
176
|
-
# Custom config dir (Docker, non-default Claude root)
|
|
177
|
-
CLAUDE_CONFIG_DIR=/workspace/.claude npx @hegemonart/get-design-done@latest
|
|
178
|
-
|
|
179
|
-
# Pick specific runtimes (any flag → scripted, no prompts)
|
|
180
|
-
npx @hegemonart/get-design-done@latest --claude --opencode --gemini
|
|
165
|
+
# Claude Code
|
|
166
|
+
npx @hegemonart/get-design-done --claude --global # Install to ~/.claude/
|
|
167
|
+
npx @hegemonart/get-design-done --claude --local # Install to ./.claude/
|
|
181
168
|
|
|
182
|
-
#
|
|
183
|
-
npx @hegemonart/get-design-done
|
|
169
|
+
# OpenCode
|
|
170
|
+
npx @hegemonart/get-design-done --opencode --global # Install to ~/.config/opencode/
|
|
184
171
|
|
|
185
|
-
#
|
|
186
|
-
npx @hegemonart/get-design-done
|
|
172
|
+
# Gemini CLI
|
|
173
|
+
npx @hegemonart/get-design-done --gemini --global # Install to ~/.gemini/
|
|
187
174
|
|
|
188
|
-
#
|
|
189
|
-
npx @hegemonart/get-design-done
|
|
175
|
+
# Kilo
|
|
176
|
+
npx @hegemonart/get-design-done --kilo --global # Install to ~/.kilo/
|
|
190
177
|
|
|
191
|
-
#
|
|
192
|
-
npx @hegemonart/get-design-done
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
Per-runtime env-var overrides: `CLAUDE_CONFIG_DIR`, `OPENCODE_CONFIG_DIR`, `GEMINI_CONFIG_DIR`, `CODEX_HOME`, `CURSOR_CONFIG_DIR`, `KILO_CONFIG_DIR`, `COPILOT_CONFIG_DIR`, `WINDSURF_CONFIG_DIR`, `ANTIGRAVITY_CONFIG_DIR`, `AUGMENT_CONFIG_DIR`, `TRAE_CONFIG_DIR`, `QWEN_CONFIG_DIR`, `CODEBUDDY_CONFIG_DIR`, `CLINE_CONFIG_DIR`. Each falls back to `$HOME / $USERPROFILE` joined with the runtime's default subdirectory (e.g. `~/.claude`, `~/.gemini`, `~/.config/opencode`).
|
|
178
|
+
# Codex
|
|
179
|
+
npx @hegemonart/get-design-done --codex --global # Install to ~/.codex/
|
|
196
180
|
|
|
197
|
-
|
|
181
|
+
# Copilot
|
|
182
|
+
npx @hegemonart/get-design-done --copilot --global # Install to ~/.copilot/
|
|
198
183
|
|
|
199
|
-
|
|
184
|
+
# Cursor
|
|
185
|
+
npx @hegemonart/get-design-done --cursor --global # Install to ~/.cursor/
|
|
200
186
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
187
|
+
# Windsurf, Antigravity, Augment, Trae, Qwen, CodeBuddy, Cline
|
|
188
|
+
npx @hegemonart/get-design-done --windsurf --global
|
|
189
|
+
npx @hegemonart/get-design-done --antigravity --global
|
|
190
|
+
npx @hegemonart/get-design-done --augment --global
|
|
191
|
+
npx @hegemonart/get-design-done --trae --global
|
|
192
|
+
npx @hegemonart/get-design-done --qwen --global
|
|
193
|
+
npx @hegemonart/get-design-done --codebuddy --global
|
|
194
|
+
npx @hegemonart/get-design-done --cline --global
|
|
205
195
|
|
|
206
|
-
|
|
196
|
+
# All runtimes
|
|
197
|
+
npx @hegemonart/get-design-done --all --global
|
|
207
198
|
|
|
208
|
-
|
|
199
|
+
# Dry run (print diff, write nothing)
|
|
200
|
+
npx @hegemonart/get-design-done --dry-run
|
|
209
201
|
|
|
202
|
+
# Custom config dir (Docker, non-default Claude root)
|
|
203
|
+
CLAUDE_CONFIG_DIR=/workspace/.claude npx @hegemonart/get-design-done
|
|
210
204
|
```
|
|
211
|
-
/gdd:help
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
> [!TIP]
|
|
215
|
-
> Run Claude Code with `--dangerously-skip-permissions` for the intended frictionless flow. GDD is built for autonomous multi-stage execution; approving every file read and `git commit` defeats the purpose.
|
|
216
205
|
|
|
217
|
-
|
|
206
|
+
</details>
|
|
218
207
|
|
|
219
|
-
|
|
208
|
+
<details>
|
|
209
|
+
<summary><strong>Alternative: Claude Code CLI</strong></summary>
|
|
220
210
|
|
|
221
211
|
```bash
|
|
222
|
-
|
|
212
|
+
claude plugin marketplace add hegemonart/get-design-done
|
|
213
|
+
claude plugin install get-design-done@get-design-done
|
|
223
214
|
```
|
|
224
215
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
```
|
|
228
|
-
/gdd:update
|
|
229
|
-
```
|
|
216
|
+
This is what the npx installer does for you — `npx` just collapses two commands into one.
|
|
230
217
|
|
|
231
|
-
|
|
218
|
+
</details>
|
|
232
219
|
|
|
233
|
-
---
|
|
234
220
|
|
|
235
221
|
## How It Works
|
|
236
222
|
|
|
237
|
-
> **New to
|
|
223
|
+
> **New to an existing codebase?** Run `/gdd:map` first. It dispatches 5 specialist mappers in parallel (tokens, components, visual hierarchy, a11y, motion) and writes structured JSON to `.design/map/` — much higher signal than the grep-based fallback in Explore.
|
|
238
224
|
|
|
239
225
|
### 1. Brief
|
|
240
226
|
|
|
@@ -242,15 +228,7 @@ Or from inside Claude Code:
|
|
|
242
228
|
/gdd:brief
|
|
243
229
|
```
|
|
244
230
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
1. **Problem** — The user-facing outcome you're solving
|
|
248
|
-
2. **Audience** — Primary user, device, context
|
|
249
|
-
3. **Constraints** — Tech stack, brand, time, a11y requirements
|
|
250
|
-
4. **Success Metrics** — How you'll know it worked
|
|
251
|
-
5. **Scope** — What's in, what's out
|
|
252
|
-
|
|
253
|
-
You approve the brief. Now the rest of the pipeline has something to verify against.
|
|
231
|
+
Captures the design problem before any scanning or exploration. The skill interviews via `AskUserQuestion`, one question at a time, only for unanswered sections: problem, audience, constraints, success metrics, scope.
|
|
254
232
|
|
|
255
233
|
**Creates:** `.design/BRIEF.md`
|
|
256
234
|
|
|
@@ -262,17 +240,9 @@ You approve the brief. Now the rest of the pipeline has something to verify agai
|
|
|
262
240
|
/gdd:explore
|
|
263
241
|
```
|
|
264
242
|
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
The skill probes all twelve connection slots (Figma, Refero, Pinterest, Preview, Storybook, Chromatic, Graphify, Claude Design, paper.design, pencil.dev, 21st.dev, Magic Patterns), then:
|
|
243
|
+
Inventories the current codebase's design system: colors, typography, spacing, components, motion, a11y, dark-mode. Five parallel mappers + a `design-discussant` interview produce three artifacts. Connection probes detect Figma, Refero, Storybook, Chromatic, Preview, Pinterest, Claude Design, paper.design, pencil.dev, Graphify, 21st.dev Magic, and Magic Patterns availability.
|
|
268
244
|
|
|
269
|
-
|
|
270
|
-
2. **Design interview** — Spawns `design-discussant`, which runs an adaptive interview grounded in the brief and what it found in the code
|
|
271
|
-
3. **Baseline audit** — Writes `DESIGN.md` (current state), `DESIGN-DEBT.md` (known gaps), and `DESIGN-CONTEXT.md` (decisions + architectural responsibility map + Mermaid flow diagram)
|
|
272
|
-
|
|
273
|
-
The deeper you engage in the interview, the more the downstream planner and executors build *your* vision rather than reasonable defaults.
|
|
274
|
-
|
|
275
|
-
**Creates:** `DESIGN.md`, `DESIGN-DEBT.md`, `DESIGN-CONTEXT.md`
|
|
245
|
+
**Creates:** `.design/DESIGN.md`, `.design/DESIGN-DEBT.md`, `.design/DESIGN-CONTEXT.md`, `.design/map/{tokens,components,a11y,motion,visual-hierarchy}.{md,json}`
|
|
276
246
|
|
|
277
247
|
---
|
|
278
248
|
|
|
@@ -282,15 +252,9 @@ The deeper you engage in the interview, the more the downstream planner and exec
|
|
|
282
252
|
/gdd:plan
|
|
283
253
|
```
|
|
284
254
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
1. **Researches** — `design-phase-researcher` investigates how to implement, guided by `DESIGN-CONTEXT.md` decisions. Consults Graphify knowledge graph when available, so dependency queries are O(1) instead of grep-based guessing
|
|
288
|
-
2. **Plans** — `design-planner` decomposes into atomic tasks, annotates with Chromatic change-risk and Storybook component fan-out
|
|
289
|
-
3. **Verifies** — `design-plan-checker` validates the plan against the brief and context, loops until it passes
|
|
290
|
-
|
|
291
|
-
Each task is small enough to execute in a fresh context window. No degradation, no abbreviated outputs.
|
|
255
|
+
Decomposes Explore output into atomic, wave-coordinated, dependency-analyzed design tasks. Each task carries explicit `Touches:` paths, parallel-safety tags, and acceptance criteria. `design-planner` (opus) authors; `design-plan-checker` (haiku) gate-checks against the brief goal before execution.
|
|
292
256
|
|
|
293
|
-
**Creates:**
|
|
257
|
+
**Creates:** `.design/DESIGN-PLAN.md`
|
|
294
258
|
|
|
295
259
|
---
|
|
296
260
|
|
|
@@ -300,16 +264,28 @@ Each task is small enough to execute in a fresh context window. No degradation,
|
|
|
300
264
|
/gdd:design
|
|
301
265
|
```
|
|
302
266
|
|
|
303
|
-
|
|
267
|
+
Executes plan tasks in waves. Each task gets a dedicated `design-executor` agent with a fresh 200k context, atomic git commit, and automatic deviation handling per in-context rules. Parallel-safe tasks run in worktrees.
|
|
304
268
|
|
|
305
|
-
|
|
306
|
-
2. **Tier-aware routing** — Each agent carries a `default-tier` frontmatter field (haiku/sonnet/opus); the router + `budget.json` override determine actual tier per spawn. Cheap work runs on Haiku; precise work on Opus
|
|
307
|
-
3. **Atomic commits per task** — Every task gets its own commit, keeping git history surgical
|
|
308
|
-
4. **Streaming synthesizer** — Parallel-agent outputs collapse through a single Haiku call before returning to main context, so the orchestrator stays cache-aligned
|
|
269
|
+
**Solidify-with-rollback** (v1.23.0) — every task validates (typecheck + build + targeted test) before locking in. Validation fails → `git stash` revert. Each task is atomic commit-or-revert.
|
|
309
270
|
|
|
310
|
-
|
|
271
|
+
**Creates:** `.design/tasks/task-NN.md` per task, atomic git commit per task
|
|
311
272
|
|
|
312
|
-
|
|
273
|
+
```
|
|
274
|
+
┌────────────────────────────────────────────────────────────────────┐
|
|
275
|
+
│ WAVE EXECUTION │
|
|
276
|
+
├────────────────────────────────────────────────────────────────────┤
|
|
277
|
+
│ │
|
|
278
|
+
│ WAVE 1 (parallel) WAVE 2 (parallel) WAVE 3 │
|
|
279
|
+
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
|
280
|
+
│ │ Task 01 │ │ Task 02 │ → │ Task 03 │ │ Task 04 │ → │ Task 05 │ │
|
|
281
|
+
│ │ tokens │ │ a11y │ │ button │ │ form │ │ verify │ │
|
|
282
|
+
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
|
|
283
|
+
│ │ │ ↑ ↑ ↑ │
|
|
284
|
+
│ └───────────┴──────────────┴───────────┴──────────────┘ │
|
|
285
|
+
│ Touches: paths drive dependency analysis │
|
|
286
|
+
│ │
|
|
287
|
+
└────────────────────────────────────────────────────────────────────┘
|
|
288
|
+
```
|
|
313
289
|
|
|
314
290
|
---
|
|
315
291
|
|
|
@@ -319,556 +295,289 @@ Walk away, come back to completed work with a clean commit history.
|
|
|
319
295
|
/gdd:verify
|
|
320
296
|
```
|
|
321
297
|
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
The skill spawns four agents in sequence, each with cheap-gate precursors:
|
|
325
|
-
|
|
326
|
-
1. **`design-verifier`** — Scores output against brief + context + plan. Runs visual verification via Preview (Playwright screenshots) when available, plus Chromatic delta narration on the visual regression diff
|
|
327
|
-
2. **`design-auditor`** — Runs the NNG heuristic sweep, WCAG contrast pass across the full palette × surface matrix, typography system audit, motion framework audit, and anti-pattern detector
|
|
328
|
-
3. **`design-integration-checker`** — Cross-file consistency: token naming, component taxonomy, visual hierarchy, a11y labels
|
|
329
|
-
4. **`design-fixer`** — Proposes fixes for each gap, scoped and prioritized
|
|
298
|
+
Verifies against the brief — must-haves, NN/g heuristics, audit rubric, token integration. Three agents run in sequence: `design-auditor` (6-pillar 1–4 score), `design-verifier` (goal-backward), `design-integration-checker` (greps D-XX decisions back to code). On failures, produces a structured gap list and enters a verify→fix loop via `design-fixer`.
|
|
330
299
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
**Creates:** `DESIGN-VERIFICATION.md`
|
|
300
|
+
**Creates:** `.design/DESIGN-VERIFICATION.md`, gap-fix commits if issues found
|
|
334
301
|
|
|
335
302
|
---
|
|
336
303
|
|
|
337
304
|
### 6. Ship → Reflect → Next Cycle
|
|
338
305
|
|
|
339
306
|
```
|
|
340
|
-
/gdd:ship #
|
|
341
|
-
/gdd:reflect #
|
|
342
|
-
/gdd:apply-reflections # Review
|
|
343
|
-
/gdd:complete-cycle # Archive cycle
|
|
344
|
-
/gdd:new-cycle #
|
|
307
|
+
/gdd:ship # Generate clean PR branch (filters .design/ commits)
|
|
308
|
+
/gdd:reflect # design-reflector reads telemetry + learnings
|
|
309
|
+
/gdd:apply-reflections # Review and selectively apply reflector proposals
|
|
310
|
+
/gdd:complete-cycle # Archive cycle artifacts, write EXPERIENCE.md
|
|
311
|
+
/gdd:new-cycle # Open a new design cycle
|
|
345
312
|
```
|
|
346
313
|
|
|
347
|
-
Or
|
|
314
|
+
Or auto-route:
|
|
348
315
|
|
|
349
316
|
```
|
|
350
317
|
/gdd:next # Auto-detect state and run the next step
|
|
351
318
|
```
|
|
352
319
|
|
|
353
|
-
|
|
320
|
+
Each cycle gets a brief, scan, plan, execution, verification, and a per-cycle `EXPERIENCE.md` (~100–200 lines: Goal / Decisions made / Learnings graduated / What died / Handoff to next cycle) that becomes the highest-priority source for the decision-injector hook.
|
|
354
321
|
|
|
355
322
|
---
|
|
356
323
|
|
|
357
|
-
###
|
|
324
|
+
### Fast Mode
|
|
358
325
|
|
|
359
326
|
```
|
|
360
|
-
/gdd:
|
|
361
|
-
/gdd:style Button # Generate component handoff doc
|
|
362
|
-
/gdd:darkmode # Audit dark mode architecture + contrast
|
|
363
|
-
/gdd:compare # Delta between baseline and verification
|
|
364
|
-
/gdd:sketch # Multi-variant HTML exploration
|
|
365
|
-
/gdd:spike # Timeboxed feasibility experiment
|
|
366
|
-
/gdd:figma-write <mode> # Write decisions back to Figma
|
|
367
|
-
/gdd:graphify <subcommand> # Manage Graphify knowledge graph
|
|
327
|
+
/gdd:fast "<task>"
|
|
368
328
|
```
|
|
369
329
|
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
## Why It Works
|
|
373
|
-
|
|
374
|
-
### Context Engineering
|
|
375
|
-
|
|
376
|
-
Claude Code does great design work *if* you give it the context it needs. Most workflows don't. GDD handles the context layer for you:
|
|
377
|
-
|
|
378
|
-
| File | What it does |
|
|
379
|
-
|------|--------------|
|
|
380
|
-
| `.design/BRIEF.md` | Problem, audience, constraints, metrics, scope — the verification target |
|
|
381
|
-
| `.design/DESIGN.md` | Current-state inventory: tokens, components, hierarchy, a11y, motion |
|
|
382
|
-
| `.design/DESIGN-DEBT.md` | Known gaps and technical-design debt |
|
|
383
|
-
| `.design/DESIGN-CONTEXT.md` | D-XX decisions, architectural responsibility map, Mermaid flow diagram |
|
|
384
|
-
| `.design/DESIGN-PLAN.md` | Atomic tasks with Touches:, Chromatic risk, Storybook fan-out |
|
|
385
|
-
| `.design/DESIGN-SUMMARY.md` | What happened per task, committed to history |
|
|
386
|
-
| `.design/DESIGN-VERIFICATION.md` | Scored audit against brief + context + plan |
|
|
387
|
-
| `.design/STATE.md` | Position, connections, handoff source, decisions — memory across sessions |
|
|
388
|
-
| `.design/intel/` | 10 queryable JSON slices: files, exports, symbols, tokens, components, patterns, dependencies, decisions, debt, cross-reference graph |
|
|
389
|
-
| `.design/CYCLES.md` | Cycle lifecycle + archived cycles in `.design/archive/` |
|
|
390
|
-
|
|
391
|
-
Size budgets are tiered per agent (XXL: 700, XL: 500, Large: 300, Default: 200 lines). Stay under, get consistent output. The `agent-size-budget` CI job blocks violations.
|
|
392
|
-
|
|
393
|
-
### 33 Specialized Agents
|
|
394
|
-
|
|
395
|
-
Every stage uses the same pattern: a thin orchestrator skill spawns specialized agents, collects results, routes to the next step.
|
|
396
|
-
|
|
397
|
-
| Stage | Orchestrator does | Agents do |
|
|
398
|
-
|-------|------------------|-----------|
|
|
399
|
-
| Brief | Runs interview, writes BRIEF.md | — |
|
|
400
|
-
| Map | Coordinates parallel spawn | 5 mappers investigate tokens, components, visual hierarchy, a11y, motion |
|
|
401
|
-
| Explore | Probes connections, runs inventory | `design-context-builder` + `design-context-checker` gate → full checker |
|
|
402
|
-
| Plan | Validates, manages iteration | `design-phase-researcher`, `design-planner`, `design-plan-checker` loop |
|
|
403
|
-
| Design | Dispatches tasks | `design-executor` per task, streaming-synthesizer merge |
|
|
404
|
-
| Verify | Presents results, routes fixes | `design-verifier`, `design-auditor`, `design-integration-checker`, `design-fixer` (each with cheap Haiku gate precursor) |
|
|
405
|
-
| Post-cycle | Review proposals | `design-reflector` reads telemetry + learnings, proposes improvements |
|
|
406
|
-
|
|
407
|
-
All agents carry `default-tier: haiku|sonnet|opus` + `tier-rationale` in frontmatter. Every agent opens with `@reference/shared-preamble.md` so the first agent in a session pays full cost and the rest ride Anthropic's 5-minute prompt cache.
|
|
330
|
+
For trivial single-file fixes that don't need the full pipeline. Skips the router, cache-manager, and telemetry. Same atomic-commit guarantees.
|
|
408
331
|
|
|
409
|
-
### 12 Tool Connections
|
|
410
|
-
|
|
411
|
-
Every connection is optional. The pipeline degrades gracefully — a grep-based fallback exists for every missing tool.
|
|
412
|
-
|
|
413
|
-
| Connection | Type | Purpose |
|
|
414
|
-
|-----------|------|---------|
|
|
415
|
-
| Figma | MCP (auto-detects any `/figma/i` server — remote or desktop) | Token extraction, design context pre-population, write-back via `use_figma` (remote only; annotate, tokenize, Code Connect) |
|
|
416
|
-
| Refero | MCP (`mcp__refero__*`) | Reference design search during exploration |
|
|
417
|
-
| Pinterest | MCP (`mcp__mcp-pinterest__*`) | Visual inspiration boards alongside Refero |
|
|
418
|
-
| Preview (Playwright) | MCP (`mcp__Claude_Preview__*`) | Live page screenshots for visual verification |
|
|
419
|
-
| Storybook | HTTP (`localhost:6006`) | Component inventory, a11y per story, story stubs |
|
|
420
|
-
| Chromatic | CLI (`npx chromatic`) | Visual regression delta narration and change-risk scoping |
|
|
421
|
-
| Graphify | CLI (`graphify`) | Knowledge graph: component↔token↔decision relationships |
|
|
422
|
-
| Claude Design | Bundle adapter | Parse HTML export → D-XX decisions, Handoff Faithfulness scoring |
|
|
423
|
-
| paper.design | MCP (`mcp__paper-design__*`) | Canvas read/write, component tree + computed styles, screenshot verification |
|
|
424
|
-
| pencil.dev | File (`.pen` YAML) | Git-tracked design specs; no MCP — pipeline reads and writes `.pen` files directly |
|
|
425
|
-
| 21st.dev Magic MCP | MCP + CLI | Prior-art gate before greenfield builds; component search + generation; SVGL brand logos |
|
|
426
|
-
| Magic Patterns | MCP / API key | DS-aware component generation; `preview_url` feeds visual verification |
|
|
427
|
-
|
|
428
|
-
See [`connections/connections.md`](connections/connections.md) for the full index and capability matrix.
|
|
429
|
-
|
|
430
|
-
### Atomic Git Commits
|
|
431
|
-
|
|
432
|
-
Each task gets its own commit immediately after completion:
|
|
433
|
-
|
|
434
|
-
```bash
|
|
435
|
-
abc123f docs(cycle-1): DESIGN-CONTEXT.md decisions locked
|
|
436
|
-
def456g feat(cycle-1): unify button tokens across surfaces
|
|
437
|
-
hij789k feat(cycle-1): fix dark-mode contrast on CardMuted
|
|
438
|
-
lmn012o feat(cycle-1): motion tokens for modal presentation
|
|
439
332
|
```
|
|
440
|
-
|
|
441
|
-
> [!NOTE]
|
|
442
|
-
> **Benefits:** `git bisect` finds the exact task that broke contrast. Each task is independently revertable via `/gdd:undo`. Clear history for Claude in future sessions. `/gdd:pr-branch` strips `.design/` and `.planning/` commits for a clean code-review branch.
|
|
443
|
-
|
|
444
|
-
### Self-Improvement
|
|
445
|
-
|
|
446
|
-
After each design cycle, `/gdd:reflect` reads `.design/learnings/`, `.design/telemetry/costs.jsonl`, and `.design/agent-metrics.json` and proposes concrete improvements:
|
|
447
|
-
|
|
448
|
-
- **Frontmatter updates** — agent duration estimates and tier assignments from measured data
|
|
449
|
-
- **Reference additions** — anti-patterns and heuristics that appeared ≥3 cycles
|
|
450
|
-
- **Budget adjustments** — cost caps tuned from actual spend patterns
|
|
451
|
-
- **Question pruning** — discussant questions that consistently got low-value answers
|
|
452
|
-
- **Global skill promotion** — project findings promoted to `~/.claude/gdd/global-skills/` for cross-project use
|
|
453
|
-
|
|
454
|
-
**Nothing auto-applies.** Every proposal requires explicit review via `/gdd:apply-reflections` — diff, accept, skip, or edit each one. The discipline mirrors the `design-figma-writer` proposal→confirm pattern.
|
|
455
|
-
|
|
456
|
-
---
|
|
457
|
-
|
|
458
|
-
## Component Benchmark Corpus
|
|
459
|
-
|
|
460
|
-
Per-component design specifications harvested from 18 major design systems and synthesized into a locked, agent-consumable format. Every spec is ≤350 lines, greppable, diff-friendly, and cross-linked to `reference/anti-patterns.md`.
|
|
461
|
-
|
|
462
|
-
**Wave 1 — Inputs (v1.16.0)**: Button · Input · Select/Combobox · Checkbox · Radio · Switch · Link · Label
|
|
463
|
-
|
|
464
|
-
**Wave 2 — Containers (v1.16.0)**: Card · Modal/Dialog · Drawer/Sheet · Popover · Tooltip · Accordion · Tabs
|
|
465
|
-
|
|
466
|
-
**Wave 3 — Feedback (v1.17.0)**: Toast · Alert · Progress · Skeleton · Badge · Chip
|
|
467
|
-
|
|
468
|
-
**Wave 4 — Navigation & Data (v1.17.0)**: Menu · Navbar · Sidebar · Breadcrumbs · Pagination · Table · List · Tree · Command-palette
|
|
469
|
-
|
|
470
|
-
**Wave 5 — Advanced (v1.17.0)**: Date-picker · Slider · File-upload · Rich-text editor · Stepper
|
|
471
|
-
|
|
472
|
-
**Total: 35 specs** across 5 waves. Each spec: WAI-ARIA keyboard contracts (verbatim), NORM/DIVERGE convergence analysis, grep signatures for `design-auditor` conformance scoring, and a failing-example block.
|
|
473
|
-
|
|
474
|
-
**Pipeline integration (v1.17.0):**
|
|
475
|
-
- `design-auditor` — detects component implementations via grep signatures, scores conformance against specs, emits Component Conformance addendum
|
|
476
|
-
- `design-executor` — reads matching spec as pre-flight contract for `type:components` tasks
|
|
477
|
-
- `design-doc-writer` — scaffolds handoff docs from spec anatomy/variants when a benchmark spec exists
|
|
478
|
-
- `design-pattern-mapper` — writes `.design/map/component-convergence.md` (matched/absent components + convergence %)
|
|
479
|
-
|
|
480
|
-
```bash
|
|
481
|
-
/gdd:benchmark button # harvest + synthesize a single spec
|
|
482
|
-
/gdd:benchmark --wave 1 # run all Wave 1 specs
|
|
483
|
-
/gdd:benchmark --list # coverage table
|
|
484
|
-
/gdd:benchmark --refresh modal-dialog # re-harvest after design-system update
|
|
333
|
+
/gdd:quick
|
|
485
334
|
```
|
|
486
335
|
|
|
487
|
-
|
|
336
|
+
For ad-hoc tasks that need GSD-style guarantees but skip optional gates (no phase-researcher, no assumptions analyzer, no integration-checker). Faster than the full pipeline; safer than `/gdd:fast`.
|
|
488
337
|
|
|
489
338
|
---
|
|
490
339
|
|
|
491
|
-
##
|
|
492
|
-
|
|
493
|
-
Subscribe to a curated whitelist of design-authority sources, diff it against a snapshot, and feed only genuinely new, classified entries into the Self-Improvement reflector. Authority monitoring — not trend watching.
|
|
494
|
-
|
|
495
|
-
```bash
|
|
496
|
-
# On-demand diff + classify
|
|
497
|
-
/gdd:watch-authorities
|
|
498
|
-
|
|
499
|
-
# Force re-seed the snapshot (recovery for a corrupted snapshot)
|
|
500
|
-
/gdd:watch-authorities --refresh
|
|
501
|
-
|
|
502
|
-
# Surface backlog since a specific date
|
|
503
|
-
/gdd:watch-authorities --since 2026-01-01
|
|
504
|
-
|
|
505
|
-
# Limit to a single feed (debugging)
|
|
506
|
-
/gdd:watch-authorities --feed wai-aria-apg
|
|
507
|
-
|
|
508
|
-
# Schedule recurring runs (requires the scheduled-tasks MCP)
|
|
509
|
-
/gdd:watch-authorities --schedule weekly
|
|
510
|
-
```
|
|
511
|
-
|
|
512
|
-
### What the whitelist covers
|
|
513
|
-
|
|
514
|
-
See [`reference/authority-feeds.md`](reference/authority-feeds.md). 26 curated feeds grouped by kind:
|
|
515
|
-
|
|
516
|
-
- **Spec sources** — WAI-ARIA APG, Material 3, Apple HIG, Fluent 2, W3C Design Tokens CG
|
|
517
|
-
- **Component systems** — Radix, shadcn/ui, Polaris, Carbon, Primer, Atlassian, Ant, Mantine
|
|
518
|
-
- **Research institutions** — Nielsen Norman Group, Laws of UX, Baymard
|
|
519
|
-
- **Named practitioners** — 10 writers filtered for spec-adjacent, durable, original analysis
|
|
520
|
-
- **User-added Are.na channels** — extensibility point; add your own via a PR to the Are.na section, no config file or schema editing required
|
|
521
|
-
|
|
522
|
-
### What is explicitly rejected
|
|
340
|
+
## Why It Works
|
|
523
341
|
|
|
524
|
-
|
|
342
|
+
### Context Engineering
|
|
525
343
|
|
|
526
|
-
|
|
344
|
+
AI coding CLIs are powerful **if** you feed them context. Most people don't.
|
|
527
345
|
|
|
528
|
-
|
|
346
|
+
GDD handles it for you:
|
|
529
347
|
|
|
530
|
-
|
|
348
|
+
| File | What it does |
|
|
349
|
+
|------|--------------|
|
|
350
|
+
| `.design/BRIEF.md` | The cycle's problem, audience, success metrics |
|
|
351
|
+
| `.design/DESIGN.md` | Current design-system snapshot (tokens, components, hierarchy) |
|
|
352
|
+
| `.design/DESIGN-CONTEXT.md` | D-XX decisions, interview answers, upstream/downstream constraints |
|
|
353
|
+
| `.design/DESIGN-PLAN.md` | Atomic tasks, wave choreography, dependencies |
|
|
354
|
+
| `.design/DESIGN-VERIFICATION.md` | Verification result, gap list, Handoff Faithfulness score |
|
|
355
|
+
| `.design/intel/` | Queryable knowledge layer: token fan-out, component call-graph, decision traceability |
|
|
356
|
+
| `.design/archive/cycle-N/EXPERIENCE.md` | Per-cycle retrospective for cross-cycle memory |
|
|
357
|
+
| `.design/telemetry/events.jsonl` | Typed event stream across stages |
|
|
358
|
+
| `.design/telemetry/posterior.json` | Bandit posterior (when `adaptive_mode != static`) |
|
|
531
359
|
|
|
532
|
-
|
|
360
|
+
Size limits where Claude's quality degrades. Stay under, get consistency.
|
|
533
361
|
|
|
534
|
-
|
|
362
|
+
### 37 Specialized Agents
|
|
535
363
|
|
|
536
|
-
|
|
537
|
-
npx gdd-sdk init # bootstrap a new project
|
|
538
|
-
npx gdd-sdk run # full pipeline (brief → verify)
|
|
539
|
-
npx gdd-sdk stage explore --parallel # single stage with parallel mappers
|
|
540
|
-
npx gdd-sdk query position # typed STATE.md read
|
|
541
|
-
npx gdd-sdk audit --baseline <dir> # regression check
|
|
542
|
-
```
|
|
364
|
+
Each stage is a thin orchestrator that spawns specialized agents. Heavy lifting happens in fresh 200k contexts, not your main session.
|
|
543
365
|
|
|
544
|
-
|
|
366
|
+
| Stage | Orchestrator does | Agents do |
|
|
367
|
+
|-------|-------------------|-----------|
|
|
368
|
+
| Brief | one-question interview | (no subagents — leaf skill) |
|
|
369
|
+
| Explore | spawns 5 mappers + discussant | 5 parallel mappers, design-discussant, research-synthesizer |
|
|
370
|
+
| Plan | spawns researcher + planner + checker | design-phase-researcher (optional), design-planner (opus), design-plan-checker (haiku) |
|
|
371
|
+
| Design | wave coordination + worktree isolation | design-executor per task, design-fixer on solidify failure |
|
|
372
|
+
| Verify | spawns auditor + verifier + checker | design-auditor (6-pillar score), design-verifier (goal-backward), design-integration-checker (D-XX → code) |
|
|
373
|
+
| Reflect | reads telemetry + learnings | design-reflector (opus), design-authority-watcher, design-update-checker |
|
|
545
374
|
|
|
546
|
-
|
|
547
|
-
`session-runner` (budget + turn cap + transcript), `context-engine` (per-stage
|
|
548
|
-
file manifest + markdown truncation), `tool-scoping` (per-stage allowed-tools),
|
|
549
|
-
`pipeline-runner` (brief → verify state machine with retry-once + human-gate
|
|
550
|
-
callbacks), and `explore-parallel` / `discuss-parallel` / `init` for the
|
|
551
|
-
concurrent researcher stages.
|
|
375
|
+
### 12 Tool Connections
|
|
552
376
|
|
|
553
|
-
|
|
377
|
+
All optional — the pipeline degrades gracefully when any connection is unavailable:
|
|
554
378
|
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
379
|
+
- **Figma** (read + write + Code Connect) — annotations, token bindings, implementation status write-back
|
|
380
|
+
- **Refero** — design reference search
|
|
381
|
+
- **Pinterest** — visual reference grounding
|
|
382
|
+
- **Claude Design** — handoff bundle import (`/gdd:handoff`)
|
|
383
|
+
- **Storybook** — component-spec lookup
|
|
384
|
+
- **Chromatic** — visual regression baseline diff
|
|
385
|
+
- **Preview** — Playwright + Claude Preview MCP for runtime screenshots
|
|
386
|
+
- **paper.design** — MCP canvas read/write for round-trip verification
|
|
387
|
+
- **pencil.dev** — git-tracked `.pen` spec files
|
|
388
|
+
- **Graphify** — knowledge-graph export
|
|
389
|
+
- **21st.dev Magic** — prior-art component search before greenfield builds
|
|
390
|
+
- **Magic Patterns** — DS-aware component generation with `preview_url`
|
|
560
391
|
|
|
561
|
-
|
|
392
|
+
### Embedded Design References
|
|
562
393
|
|
|
563
|
-
|
|
394
|
+
The plugin ships **18+ reference files** covering every major design-knowledge domain. Agents have authoritative answers without web search:
|
|
564
395
|
|
|
565
|
-
|
|
396
|
+
- **Heuristics** — NN/g 10, Don Norman emotional design (visceral/behavioral/reflective), Dieter Rams 10, Disney 12 (motion), Sonner / Emil Kowalski component-authoring lens, Peak-End Rule, Loss Aversion, Cognitive Load Theory, Aesthetic-Usability Effect, Doherty Threshold, Flow.
|
|
397
|
+
- **Components** — 35 component specs (Material 3, Apple HIG, Radix, shadcn, Polaris, Carbon, Fluent, Atlassian, Ant, Mantine, Chakra, Base Web, Spectrum, Lightning, Evergreen, Gestalt) with locked spec template (Purpose · Anatomy · Variants · States · Sizing · Typography · Keyboard · Motion · Do/Don't · Anti-patterns · Citations · Grep signatures).
|
|
398
|
+
- **Visual + brand** — gestalt principles, visual-hierarchy, brand-voice, palette catalog (161 industry palettes), style vocabulary (67 UI aesthetics), iconography (Lucide / Phosphor / Heroicons / Radix Icons / Tabler / SF Symbols).
|
|
399
|
+
- **Motion** — 12 canonical easings (RN MIT) + 8 transition families (hyperframes Apache-2.0) + spring presets + interpolation taxonomy + advanced craft (gesture mechanics, clip-path, blur crossfades, View Transitions API, WAAPI).
|
|
400
|
+
- **Platform + a11y** — WCAG 2.1 AA thresholds, platforms (iOS / Android / web / visionOS / watchOS), RTL + CJK + cultural color, form patterns (Wroblewski label research, autocomplete taxonomy, CAPTCHA ethics).
|
|
401
|
+
- **Anti-patterns** — regex-signature catalog matched by `design-pattern-mapper`.
|
|
566
402
|
|
|
567
|
-
###
|
|
403
|
+
### Atomic Git Commits
|
|
568
404
|
|
|
569
|
-
|
|
405
|
+
Each design task gets its own commit immediately after completion:
|
|
570
406
|
|
|
571
|
-
**Setup:**
|
|
572
|
-
```bash
|
|
573
|
-
claude mcp add paper-design --transport http https://mcp.paper.design/sse
|
|
574
407
|
```
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
-
|
|
578
|
-
|
|
579
|
-
- `verify` — `get_screenshot` captures component snapshots for `? VISUAL` checks (Phase 4C)
|
|
580
|
-
|
|
581
|
-
See [`connections/paper-design.md`](connections/paper-design.md) for full setup and probe pattern.
|
|
582
|
-
|
|
583
|
-
### pencil.dev
|
|
584
|
-
|
|
585
|
-
Git-tracked `.pen` YAML files are canonical design specs. No MCP required — the pipeline reads and writes `.pen` files directly.
|
|
586
|
-
|
|
587
|
-
**Setup:** Install the pencil.dev VS Code / Cursor extension. Add `.pen` files to your project.
|
|
588
|
-
|
|
589
|
-
**Capabilities:**
|
|
590
|
-
- `explore` — discovers `.pen` files; synthesizer merges token declarations with code
|
|
591
|
-
- `design` — `design-pencil-writer` agent writes DESIGN-DEBT findings and status back as `.pen` comments / spec updates (atomic git commits)
|
|
592
|
-
- `verify` — spec-vs-implementation diff: declared token values vs. actual CSS values
|
|
593
|
-
|
|
594
|
-
See [`connections/pencil-dev.md`](connections/pencil-dev.md) for `.pen` file format and pipeline integration.
|
|
595
|
-
|
|
596
|
-
---
|
|
597
|
-
|
|
598
|
-
## Component Generators
|
|
599
|
-
|
|
600
|
-
Component generators produce UI component code from natural-language descriptions, targeting your project's design system.
|
|
601
|
-
|
|
602
|
-
### 21st.dev Magic MCP
|
|
603
|
-
|
|
604
|
-
Marketplace search + AI component generation. Built-in prior-art gate: the explore stage searches 21st.dev before any greenfield component build. If an existing component fits ≥80%, adoption is recommended over custom build.
|
|
605
|
-
|
|
606
|
-
**Setup:**
|
|
607
|
-
```bash
|
|
608
|
-
npx @21st-dev/magic@latest init
|
|
609
|
-
# Set TWENTY_FIRST_API_KEY environment variable
|
|
408
|
+
abc123f docs(08-02): complete user-card token plan
|
|
409
|
+
def456g feat(08-02): unify card surface tokens with --color-bg-elevated
|
|
410
|
+
hij789k feat(08-02): replace inline padding with --space-* scale
|
|
411
|
+
lmn012o test(08-02): assert card.spec passes WCAG contrast 4.5:1
|
|
610
412
|
```
|
|
611
413
|
|
|
612
|
-
|
|
613
|
-
- `explore` — prior-art gate: `21st_magic_component_search` before greenfield builds
|
|
614
|
-
- `design` — `design-component-generator` (21st.dev impl): search → generate → adopt
|
|
615
|
-
- `explore/design` — `svgl_get_brand_logo` for brand logo/icon SVGs
|
|
414
|
+
Git bisect finds exact failing task. Each task is independently revertable. Solidify-with-rollback adds a per-task validation gate so a broken task 3 never corrupts tasks 4–10 before verify runs.
|
|
616
415
|
|
|
617
|
-
|
|
416
|
+
### Self-Improvement Loop
|
|
618
417
|
|
|
619
|
-
|
|
418
|
+
After every cycle, `design-reflector` (opus) reads `events.jsonl`, `agent-metrics.json`, and `learnings/`, then proposes diffs:
|
|
620
419
|
|
|
621
|
-
|
|
420
|
+
- **Tier overrides** — "design-verifier on plans <300 lines: drop to haiku, no measured quality regression"
|
|
421
|
+
- **Parallelism rules** — "token-mapper + component-taxonomy-mapper conflict on `Touches: src/styles/`; serialize"
|
|
422
|
+
- **Reference additions** — "L-12 cited 9 times across cycles 3–5; promote to `reference/heuristics.md`"
|
|
423
|
+
- **Frontmatter updates** — "design-executor `typical-duration-seconds: 60` measured at 142s; propose 120s"
|
|
622
424
|
|
|
623
|
-
**
|
|
425
|
+
`/gdd:apply-reflections` shows the diff and asks before applying. Nothing auto-applies. The **No-Regret Adaptive Layer** (v1.23.5) layers a Thompson sampling bandit + AdaNormalHedge ensemble + MMR rerank on top, viable in single-user mode via informed-prior bootstrap.
|
|
624
426
|
|
|
625
|
-
|
|
626
|
-
```bash
|
|
627
|
-
claude mcp add magic-patterns --transport http https://mcp.magicpatterns.com/sse \
|
|
628
|
-
-e MAGIC_PATTERNS_API_KEY=$MAGIC_PATTERNS_API_KEY
|
|
629
|
-
```
|
|
427
|
+
### Cost Governance
|
|
630
428
|
|
|
631
|
-
**
|
|
632
|
-
-
|
|
633
|
-
- `
|
|
429
|
+
- **`gdd-router` skill** — deterministic intent → fast / quick / full routing. No model call.
|
|
430
|
+
- **`gdd-cache-manager`** — Layer-B explicit cache with SHA-256 input-hash + 5-min TTL awareness.
|
|
431
|
+
- **`budget-enforcer` PreToolUse hook** — enforces tier overrides, hard caps, lazy-spawn gates from `.design/budget.json`.
|
|
432
|
+
- **Per-spawn cost telemetry** — `.design/telemetry/costs.jsonl` rows feed `/gdd:optimize` rule-based recommendations.
|
|
634
433
|
|
|
635
|
-
|
|
434
|
+
Targets 50–70% per-task token-cost reduction with no quality-floor regression.
|
|
636
435
|
|
|
637
436
|
---
|
|
638
437
|
|
|
639
|
-
## Safety + Recall Floor
|
|
640
|
-
|
|
641
|
-
Starting with v1.14.6, GDD ships three defense-in-depth hooks, the first cross-cycle recall primitive, and a typed reference index:
|
|
642
|
-
|
|
643
|
-
- **Bash guard** (`hooks/gdd-bash-guard.js`) — PreToolUse:Bash blocks ~45 dangerous shell patterns after Unicode NFKC + ANSI + zero-width/bidi normalization, so `rm\u200B -rf /`, bidi-override obfuscations, and hex-encoded exec sequences fail closed.
|
|
644
|
-
- **Protected paths** (`hooks/gdd-protected-paths.js`) — PreToolUse:Edit|Write|Bash refuses to mutate `reference/**`, `skills/**`, `commands/**`, `hooks/**`, `.design/archive/**`, `.design/config.json`, `.design/telemetry/**`, `.git/**`, both plugin manifests, and anything the user appends under `.design/config.json.protected_paths` (merge-only — user configs cannot reduce the default set).
|
|
645
|
-
- **Blast-radius preflight** (`scripts/lib/blast-radius.cjs`) — `design-executor` refuses tasks above `.design/config.json.blast_radius.max_files_per_task` (default 10), `max_lines_per_task` (default 400), or `max_mcp_calls_per_task` (default 30); writes a blocker to STATE.md with a diff summary.
|
|
646
|
-
- **Decision-injector** (`hooks/gdd-decision-injector.js`) — PreToolUse:Read on any `.design/**.md | reference/**.md | .planning/**.md` ≥ 1500 bytes surfaces the top-15 matching D-XX decisions, L-NN learnings, and prior-cycle summary excerpts that reference the opened file. Grep backend; Phase 19.5 upgrades to FTS5 transparently.
|
|
647
|
-
|
|
648
|
-
**Reference index** — `reference/registry.json` (schema: `reference/registry.schema.json`) indexes every `reference/*.md` by typed category (`heuristic | preamble | motion | defaults | meta-rules | …`). Agents can query `list({type: "heuristic"})` instead of grep-hunting import strings. `scripts/build-intel.cjs` enforces round-trip on every `reference/**` change: missing entries, dangling entries, and duplicates fail the build.
|
|
649
|
-
|
|
650
|
-
**L0/L2 cache-locality split** — the 5 framework-invariant rules (Required Reading Discipline, Writes Protocol, Deviation Handling, Completion Markers, Context-Exhaustion & Budget Awareness) now live in `reference/meta-rules.md` (tier L0). `reference/shared-preamble.md` becomes an L0 aggregator importing `meta-rules.md` first, so Phase 15+ L2 churn (heuristics, anti-patterns, checklists) no longer invalidates the L0 prompt-cache prefix.
|
|
651
|
-
|
|
652
|
-
**Figma authoring-redirect** — `/gdd:figma-write` is a decision-writer (annotations, token bindings, Code Connect, implementation-status). For authoring new Figma content (create pages, populate library components, build layouts from scratch), use `figma:figma-generate-design` from the Figma plugin — it runs outside the Figma plugin sandbox. `design-figma-writer` Step 0.5 detects author-intent (EN + RU) and emits a bilingual redirect citing the four sandbox pitfalls in `reference/figma-sandbox.md`. The MCP circuit-breaker (`hooks/gdd-mcp-circuit-breaker.js`) caps `use_figma | use_paper | use_pencil` at 30 calls/task and 3 consecutive timeouts by default (see `reference/mcp-budget.default.json`), logging per-call JSONL at `.design/telemetry/mcp-budget.jsonl`.
|
|
653
|
-
|
|
654
438
|
## Commands
|
|
655
439
|
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
### Core pipeline
|
|
440
|
+
### Core Pipeline
|
|
659
441
|
|
|
660
442
|
| Command | What it does |
|
|
661
443
|
|---------|--------------|
|
|
662
|
-
| `/gdd:brief` | Stage 1 —
|
|
663
|
-
| `/gdd:explore
|
|
664
|
-
| `/gdd:plan` | Stage 3 —
|
|
665
|
-
| `/gdd:design` | Stage 4 — execute
|
|
666
|
-
| `/gdd:verify
|
|
667
|
-
| `/gdd:
|
|
668
|
-
| `/gdd:next` | Auto-
|
|
669
|
-
| `/gdd:
|
|
670
|
-
|
|
671
|
-
|
|
444
|
+
| `/gdd:brief` | Stage 1 — capture the design brief |
|
|
445
|
+
| `/gdd:explore` | Stage 2 — codebase inventory + interview |
|
|
446
|
+
| `/gdd:plan` | Stage 3 — produce DESIGN-PLAN.md |
|
|
447
|
+
| `/gdd:design` | Stage 4 — execute plan in waves |
|
|
448
|
+
| `/gdd:verify` | Stage 5 — verify against brief |
|
|
449
|
+
| `/gdd:ship` | Generate clean PR branch (filters .design/ commits) |
|
|
450
|
+
| `/gdd:next` | Auto-route to the next stage based on STATE.md |
|
|
451
|
+
| `/gdd:do <text>` | Natural-language router — picks the right command |
|
|
452
|
+
| `/gdd:fast <text>` | One-shot trivial fix, no pipeline |
|
|
453
|
+
| `/gdd:quick` | Ad-hoc task with GDD guarantees but skipped optional gates |
|
|
454
|
+
|
|
455
|
+
### First-Run + Onboarding
|
|
672
456
|
|
|
673
457
|
| Command | What it does |
|
|
674
458
|
|---------|--------------|
|
|
675
|
-
| `/gdd:start
|
|
676
|
-
| `/gdd:new-project
|
|
677
|
-
| `/gdd:
|
|
678
|
-
| `/gdd:complete-cycle [<note>]` | Archive cycle to `.design/archive/cycle-N/` |
|
|
679
|
-
| `/gdd:ship [--draft]` | Clean PR branch + `gh pr create` |
|
|
459
|
+
| `/gdd:start` | First-run proof path — top-3 design issues in your repo (no `.design/` footprint until you opt in) |
|
|
460
|
+
| `/gdd:new-project` | Initialize a GDD project (PROJECT.md + STATE.md + first cycle) |
|
|
461
|
+
| `/gdd:connections` | Onboarding wizard for the 12 external integrations |
|
|
680
462
|
|
|
681
|
-
###
|
|
463
|
+
### Cycle Lifecycle
|
|
682
464
|
|
|
683
465
|
| Command | What it does |
|
|
684
466
|
|---------|--------------|
|
|
685
|
-
| `/gdd:
|
|
686
|
-
| `/gdd:
|
|
687
|
-
| `/gdd:
|
|
688
|
-
| `/gdd:
|
|
689
|
-
| `/gdd:
|
|
690
|
-
| `/gdd:sketch [topic] [--variants N]` | Multi-variant HTML exploration |
|
|
691
|
-
| `/gdd:spike [hypothesis] [--timebox]` | Timeboxed feasibility experiment |
|
|
692
|
-
| `/gdd:sketch-wrap-up`, `/gdd:spike-wrap-up` | Distill winner + findings into project-local convention skills |
|
|
467
|
+
| `/gdd:new-cycle` | Open a new design cycle |
|
|
468
|
+
| `/gdd:complete-cycle` | Archive cycle artifacts + write per-cycle EXPERIENCE.md |
|
|
469
|
+
| `/gdd:pause` / `/gdd:resume` | Numbered checkpoints — pause mid-stage, resume from any saved checkpoint |
|
|
470
|
+
| `/gdd:continue` | Alias for `/gdd:resume` (latest checkpoint) |
|
|
471
|
+
| `/gdd:timeline` | Narrative retrospective across cycles + git log |
|
|
693
472
|
|
|
694
|
-
###
|
|
473
|
+
### Iteration + Decisions
|
|
695
474
|
|
|
696
475
|
| Command | What it does |
|
|
697
476
|
|---------|--------------|
|
|
698
|
-
| `/gdd:
|
|
699
|
-
| `/gdd:
|
|
700
|
-
| `/gdd:
|
|
701
|
-
| `/gdd:
|
|
702
|
-
| `/gdd:
|
|
477
|
+
| `/gdd:discuss [topic]` | Adaptive design interview — `--all` for batch gray areas, `--spec` for ambiguity scoring |
|
|
478
|
+
| `/gdd:list-assumptions` | Surface hidden design assumptions before planning |
|
|
479
|
+
| `/gdd:sketch [idea]` | Multi-variant HTML mockup exploration — browser-openable directly |
|
|
480
|
+
| `/gdd:spike [idea]` | Timeboxed feasibility experiment with hypothesis + verdict |
|
|
481
|
+
| `/gdd:sketch-wrap-up` / `/gdd:spike-wrap-up` | Package findings into project-local skill |
|
|
482
|
+
| `/gdd:audit` | Wraps `design-verifier` + `design-auditor` + `design-reflector`. `--retroactive` audits the full cycle |
|
|
483
|
+
| `/gdd:reflect` | Run `design-reflector` on demand — produces `.design/reflections/<cycle-slug>.md` |
|
|
484
|
+
| `/gdd:apply-reflections` | Review and selectively apply reflector proposals — diff before apply |
|
|
703
485
|
|
|
704
|
-
### Knowledge Layer
|
|
486
|
+
### Memory + Knowledge Layer
|
|
705
487
|
|
|
706
488
|
| Command | What it does |
|
|
707
489
|
|---------|--------------|
|
|
708
|
-
| `/gdd:
|
|
709
|
-
| `/gdd:extract-learnings
|
|
710
|
-
| `/gdd:
|
|
490
|
+
| `/gdd:recall <query>` | FTS5-backed search across cycle archives, learnings, decisions, EXPERIENCE.md files |
|
|
491
|
+
| `/gdd:extract-learnings` | Mine cycle artifacts for patterns + decisions + lessons |
|
|
492
|
+
| `/gdd:note <text>` | Zero-friction idea capture — append, list, promote to todo |
|
|
493
|
+
| `/gdd:plant-seed <idea>` | Forward-looking idea with trigger condition — surfaces at the right cycle |
|
|
494
|
+
| `/gdd:analyze-dependencies` | Token fan-out, component call-graphs, decision traceability, circular dependency detection |
|
|
495
|
+
| `/gdd:skill-manifest` | List all GDD skills + agents from the intel store |
|
|
496
|
+
| `/gdd:graphify` | Build, query, inspect, diff the project knowledge graph |
|
|
497
|
+
| `/gdd:watch-authorities` | Diff the design-authority feed whitelist + classify into 5 buckets |
|
|
711
498
|
|
|
712
|
-
###
|
|
499
|
+
### Connections
|
|
713
500
|
|
|
714
501
|
| Command | What it does |
|
|
715
502
|
|---------|--------------|
|
|
716
|
-
| `/gdd:
|
|
717
|
-
| `/gdd:
|
|
718
|
-
| `/gdd:
|
|
719
|
-
| `/gdd:
|
|
503
|
+
| `/gdd:figma-write` | Write design decisions back to Figma (annotate / tokenize / roundtrip) |
|
|
504
|
+
| `/gdd:handoff <bundle>` | Import a Claude Design bundle and skip Stages 1–3 |
|
|
505
|
+
| `/gdd:darkmode` | Audit dark-mode implementation (CSS custom props / Tailwind dark: / JS class toggle) |
|
|
506
|
+
| `/gdd:compare` | Compute delta between DESIGN.md baseline and DESIGN-VERIFICATION.md result |
|
|
507
|
+
| `/gdd:style <Component>` | Generate component handoff doc (DESIGN-STYLE-[Component].md) |
|
|
720
508
|
|
|
721
|
-
###
|
|
509
|
+
### Diagnostic + Forensic
|
|
722
510
|
|
|
723
511
|
| Command | What it does |
|
|
724
512
|
|---------|--------------|
|
|
725
|
-
| `/gdd:
|
|
726
|
-
| `/gdd:
|
|
727
|
-
| `/gdd:
|
|
728
|
-
| `/gdd:
|
|
729
|
-
| `/gdd:
|
|
513
|
+
| `/gdd:scan` | Codebase design-system inventory (no STATE.md write) |
|
|
514
|
+
| `/gdd:map` | 5 parallel codebase mappers (tokens / components / a11y / motion / visual-hierarchy) |
|
|
515
|
+
| `/gdd:debug [desc]` | Symptom-driven design investigation with persistent state |
|
|
516
|
+
| `/gdd:health` | Reports `.design/` artifact health — staleness, missing files, token drift |
|
|
517
|
+
| `/gdd:progress` | Show pipeline position; `--forensic` runs 6-check integrity audit |
|
|
518
|
+
| `/gdd:stats` | Cycle stats — decisions made, tasks completed, commits, timeline, git metrics |
|
|
519
|
+
| `/gdd:optimize` | Rule-based cost analysis + tier-override recommendations |
|
|
520
|
+
| `/gdd:warm-cache` | Pre-warm Anthropic prompt cache across all agents that import shared-preamble |
|
|
730
521
|
|
|
731
|
-
###
|
|
522
|
+
### Distribution + Update
|
|
732
523
|
|
|
733
524
|
| Command | What it does |
|
|
734
525
|
|---------|--------------|
|
|
735
|
-
| `/gdd:
|
|
736
|
-
| `/gdd:
|
|
737
|
-
| `/gdd:
|
|
738
|
-
| `/gdd:
|
|
739
|
-
| `/gdd:
|
|
740
|
-
| `/gdd:
|
|
526
|
+
| `/gdd:update` | Update GDD with changelog preview |
|
|
527
|
+
| `/gdd:reapply-patches` | Restitch local `reference/` modifications after structural updates |
|
|
528
|
+
| `/gdd:check-update` | Manual update check — `--refresh` bypasses 24h TTL, `--dismiss` hides nudge |
|
|
529
|
+
| `/gdd:settings` | Configure `.design/config.json` — profile / parallelism / cleanup |
|
|
530
|
+
| `/gdd:set-profile <profile>` | Switch model profile (quality / balanced / budget / inherit) |
|
|
531
|
+
| `/gdd:undo` | Safe design change revert — uses git log + dependency check |
|
|
532
|
+
| `/gdd:pr-branch` | Create clean PR branch by filtering out `.design/` and `.planning/` commits |
|
|
741
533
|
|
|
742
|
-
###
|
|
534
|
+
### Backlog + Notes
|
|
743
535
|
|
|
744
536
|
| Command | What it does |
|
|
745
537
|
|---------|--------------|
|
|
746
|
-
| `/gdd:
|
|
747
|
-
| `/gdd:
|
|
748
|
-
| `/gdd:
|
|
749
|
-
| `/gdd:list-assumptions [--area]` | Surface implicit design assumptions baked into the codebase |
|
|
538
|
+
| `/gdd:todo` | Add / list / pick design tasks |
|
|
539
|
+
| `/gdd:add-backlog <idea>` | Park a design idea for a future cycle |
|
|
540
|
+
| `/gdd:review-backlog` | Review parked items + promote to active cycle todo |
|
|
750
541
|
|
|
751
|
-
###
|
|
542
|
+
### Help
|
|
752
543
|
|
|
753
544
|
| Command | What it does |
|
|
754
545
|
|---------|--------------|
|
|
755
|
-
| `/gdd:
|
|
756
|
-
| `/gdd:
|
|
757
|
-
| `/gdd:reapply-patches [--dry-run]` | Reapply `reference/` customizations after an update |
|
|
758
|
-
|
|
759
|
-
Full command reference with argument specs: [`SKILL.md`](SKILL.md).
|
|
546
|
+
| `/gdd:help` | Full command list + usage |
|
|
547
|
+
| `/gdd:bandit-reset` | Reset adaptive-layer posterior on Anthropic model release |
|
|
760
548
|
|
|
761
549
|
---
|
|
762
550
|
|
|
763
551
|
## Connections
|
|
764
552
|
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
**
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
**
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
**Desktop MCP (reads only):** optionally enabled via the Figma desktop app's Dev Mode. Useful when writes are not needed. Register under server name `figma-desktop` — the probe auto-detects it.
|
|
784
|
-
|
|
785
|
-
Setup: [`connections/figma.md`](connections/figma.md). If you previously registered the remote MCP with the legacy URL `https://mcp.figma.com/v1/sse`, remove and re-add with the current URL `https://mcp.figma.com/mcp` (Streamable HTTP).
|
|
786
|
-
|
|
787
|
-
> ⚠︎ **Authoring new Figma content?** `/gdd:figma-write` is a *decision-writer* (annotations, token bindings, Code Connect). For **creating pages, populating with library components, building doc layouts from scratch**, use `figma:figma-generate-design` from the Figma plugin — it runs outside the plugin sandbox. See [`reference/figma-sandbox.md`](reference/figma-sandbox.md) for the four sandbox pitfalls the MCP circuit-breaker (`hooks/gdd-mcp-circuit-breaker.js`) protects you from (defaults: 30 calls/task, 3 consecutive timeouts → break).
|
|
788
|
-
|
|
789
|
-
### Refero MCP
|
|
790
|
-
|
|
791
|
-
When Refero is active, `explore` pulls visual references to ground design decisions. Requires an API token in `~/.claude.json`:
|
|
792
|
-
|
|
793
|
-
```json
|
|
794
|
-
{
|
|
795
|
-
"mcpServers": {
|
|
796
|
-
"refero": {
|
|
797
|
-
"type": "http",
|
|
798
|
-
"url": "https://mcp.refero.design/mcp",
|
|
799
|
-
"headers": { "Authorization": "Bearer YOUR_REFERO_TOKEN" }
|
|
800
|
-
}
|
|
801
|
-
}
|
|
802
|
-
}
|
|
803
|
-
```
|
|
804
|
-
|
|
805
|
-
Falls back to `~/.claude/libs/awesome-design-md/`. Setup: [`connections/refero.md`](connections/refero.md).
|
|
806
|
-
|
|
807
|
-
### Pinterest MCP
|
|
808
|
-
|
|
809
|
-
When the Pinterest MCP (`terryso/mcp-pinterest`) is active, `explore` pulls visual inspiration boards alongside Refero. ToolSearch-only probe — no API key required. Fallback chain: Pinterest → Refero → awesome-design-md. Setup: [`connections/pinterest.md`](connections/pinterest.md).
|
|
810
|
-
|
|
811
|
-
### Preview (Playwright)
|
|
812
|
-
|
|
813
|
-
When the Claude Preview MCP is active, `verify` runs live page screenshots on `? VISUAL` verification gaps, so the auditor grades actual rendered output rather than inferring from code. Setup: [`connections/preview.md`](connections/preview.md).
|
|
814
|
-
|
|
815
|
-
### Storybook
|
|
816
|
-
|
|
817
|
-
When Storybook is running on `localhost:6006`, `explore` pulls component inventory, `verify` runs per-story a11y passes, and `design` can generate `.stories.tsx` stubs. Setup: [`connections/storybook.md`](connections/storybook.md).
|
|
818
|
-
|
|
819
|
-
### Chromatic
|
|
820
|
-
|
|
821
|
-
When Chromatic CLI is available, `plan` uses `--trace-changed=expanded` for change-risk scoping and `verify` narrates visual regression deltas. Setup: [`connections/chromatic.md`](connections/chromatic.md).
|
|
822
|
-
|
|
823
|
-
### Graphify
|
|
824
|
-
|
|
825
|
-
When Graphify CLI is available, `plan` and `design-integration-checker` consult the component↔token↔decision knowledge graph before grep searches — dependency queries become O(1). Setup: [`connections/graphify.md`](connections/graphify.md).
|
|
826
|
-
|
|
827
|
-
### Claude Design
|
|
828
|
-
|
|
829
|
-
Drop a Claude Design bundle (HTML export from [claude.ai/design](https://claude.ai/design)) into your project root and run `/gdd:handoff <path>`. The pipeline skips Explore → Plan, parses the bundle CSS custom properties into D-XX design decisions, runs `verify --post-handoff` for Handoff Faithfulness scoring, and optionally writes implementation status back to Figma. Full format: [`connections/claude-design.md`](connections/claude-design.md).
|
|
830
|
-
|
|
831
|
-
### paper.design
|
|
832
|
-
|
|
833
|
-
When the paper.design MCP is active, `explore` reads the canvas selection (JSX tree, computed styles) into `DESIGN-CONTEXT.md`, `design` writes annotations and token bindings back to the canvas, and `verify` captures component screenshots for visual checks. Setup: [`connections/paper-design.md`](connections/paper-design.md).
|
|
834
|
-
|
|
835
|
-
```bash
|
|
836
|
-
claude mcp add paper-design --transport http https://mcp.paper.design/sse
|
|
837
|
-
```
|
|
838
|
-
|
|
839
|
-
### pencil.dev
|
|
840
|
-
|
|
841
|
-
No MCP required. Add `.pen` YAML files to your project and install the pencil.dev VS Code / Cursor extension. `explore` discovers and merges `.pen` token declarations; `design` writes DESIGN-DEBT findings back as spec updates; `verify` diffs declared token values against actual CSS. Setup: [`connections/pencil-dev.md`](connections/pencil-dev.md).
|
|
842
|
-
|
|
843
|
-
### 21st.dev Magic MCP
|
|
844
|
-
|
|
845
|
-
When active, `explore` runs a prior-art gate (`21st_magic_component_search`) before any greenfield component build — if an existing component fits ≥80%, adoption is recommended. `design` generates components via search → generate → adopt. Also provides `svgl_get_brand_logo` for brand SVGs. Setup: [`connections/21st-dev.md`](connections/21st-dev.md).
|
|
846
|
-
|
|
847
|
-
```bash
|
|
848
|
-
npx @21st-dev/magic@latest init
|
|
849
|
-
```
|
|
850
|
-
|
|
851
|
-
### Magic Patterns
|
|
852
|
-
|
|
853
|
-
When the Magic Patterns connector is active (via Claude environment or API key), `design` generates DS-aware components and feeds the `preview_url` into visual verification. Setup: [`connections/magic-patterns.md`](connections/magic-patterns.md).
|
|
553
|
+
GDD ships with 12 tool connections. All are optional; the pipeline degrades gracefully to fallbacks when any connection is unavailable. Configure with `/gdd:connections`.
|
|
554
|
+
|
|
555
|
+
| Connection | Purpose | Probe |
|
|
556
|
+
|------------|---------|-------|
|
|
557
|
+
| **Figma** | Read tokens, components, screenshots; write annotations, Code Connect, implementation status | `mcp__figma__get_metadata` + `use_figma` |
|
|
558
|
+
| **Refero** | Design reference search across catalogued sources | `mcp__refero__search` |
|
|
559
|
+
| **Pinterest** | Visual reference grounding for brand-voice + style | OAuth + MCP |
|
|
560
|
+
| **Claude Design** | Handoff bundle import (`/gdd:handoff`) — skip Stages 1–3 | URL or local file |
|
|
561
|
+
| **Storybook** | Component-spec lookup at port 6006 | HTTP probe |
|
|
562
|
+
| **Chromatic** | Visual regression baseline diff | API key |
|
|
563
|
+
| **Preview** | Playwright + Claude Preview MCP runtime screenshots | `mcp__Claude_Preview__preview_*` |
|
|
564
|
+
| **paper.design** | MCP canvas read/write for canvas → code → verify → canvas round-trip | `mcp__paper__use_paper` |
|
|
565
|
+
| **pencil.dev** | Git-tracked `.pen` spec files (no MCP required) | `.pen` files in repo |
|
|
566
|
+
| **Graphify** | Knowledge-graph export | `mcp__graphify__*` |
|
|
567
|
+
| **21st.dev Magic** | Prior-art component search before greenfield builds | `mcp__magic__search` |
|
|
568
|
+
| **Magic Patterns** | DS-aware component generation with `preview_url` | `mcp__magic-patterns__generate` |
|
|
569
|
+
|
|
570
|
+
For full connection details and probe patterns, see [`connections/connections.md`](connections/connections.md).
|
|
854
571
|
|
|
855
572
|
---
|
|
856
573
|
|
|
857
574
|
## Configuration
|
|
858
575
|
|
|
859
|
-
GDD stores project settings in `.design/config.json`. Configure
|
|
860
|
-
|
|
861
|
-
### Core
|
|
576
|
+
GDD stores project settings in `.design/config.json`. Configure during `/gdd:new-project` or update with `/gdd:settings`.
|
|
862
577
|
|
|
863
|
-
|
|
864
|
-
|---------|---------|---------|------------------|
|
|
865
|
-
| `mode` | `yolo`, `interactive` | `interactive` | Auto-approve vs confirm at each step |
|
|
866
|
-
| `profile` | `quality`, `balanced`, `budget`, `inherit` | `balanced` | Model tier policy (see below) |
|
|
867
|
-
| `parallelism` | `aggressive`, `conservative`, `off` | `conservative` | Wave parallelism for `design` stage |
|
|
578
|
+
### Model Profiles
|
|
868
579
|
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
Each agent carries a `default-tier: haiku|sonnet|opus` in frontmatter. The active profile + `tier_overrides` in `budget.json` determine actual tier per spawn.
|
|
580
|
+
Control which Claude model each agent uses. Balance quality vs token spend.
|
|
872
581
|
|
|
873
582
|
| Profile | Planning | Execution | Verification |
|
|
874
583
|
|---------|----------|-----------|--------------|
|
|
@@ -877,178 +586,136 @@ Each agent carries a `default-tier: haiku|sonnet|opus` in frontmatter. The activ
|
|
|
877
586
|
| `budget` | Sonnet | Sonnet | Haiku |
|
|
878
587
|
| `inherit` | Inherit | Inherit | Inherit |
|
|
879
588
|
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
### Budget + optimization
|
|
589
|
+
Switch profiles:
|
|
883
590
|
|
|
884
|
-
`.design/budget.json` controls the cost layer:
|
|
885
|
-
|
|
886
|
-
```json
|
|
887
|
-
{
|
|
888
|
-
"per_task_cap_usd": 2.00,
|
|
889
|
-
"per_phase_cap_usd": 20.00,
|
|
890
|
-
"tier_overrides": {
|
|
891
|
-
"design-planner": "opus",
|
|
892
|
-
"design-verifier": "haiku"
|
|
893
|
-
},
|
|
894
|
-
"auto_downgrade_on_cap": true,
|
|
895
|
-
"cache_ttl_seconds": 3600,
|
|
896
|
-
"enforcement_mode": "enforce"
|
|
897
|
-
}
|
|
898
591
|
```
|
|
899
|
-
|
|
900
|
-
`enforcement_mode`: `enforce` (hard-block on cap breach) | `warn` (warn + continue) | `log` (silent log). Use `log` during adoption to observe the hook's decisions without blocking.
|
|
901
|
-
|
|
902
|
-
Full schema: [`reference/config-schema.md`](reference/config-schema.md).
|
|
903
|
-
|
|
904
|
-
---
|
|
905
|
-
|
|
906
|
-
## Knowledge Layer
|
|
907
|
-
|
|
908
|
-
The knowledge layer gives the pipeline persistent memory and O(1) lookups across all design surface files.
|
|
909
|
-
|
|
910
|
-
### Intel store (`.design/intel/`)
|
|
911
|
-
|
|
912
|
-
Ten queryable JSON slices that index the design surface:
|
|
913
|
-
|
|
914
|
-
| Slice | Contents |
|
|
915
|
-
|-------|----------|
|
|
916
|
-
| `files.json` | All tracked files with mtime + git hash |
|
|
917
|
-
| `exports.json` | Named exports: skill commands + agent names |
|
|
918
|
-
| `symbols.json` | Markdown headings + section anchors |
|
|
919
|
-
| `tokens.json` | Design token references (color, spacing, typography, radius) |
|
|
920
|
-
| `components.json` | Component names + referencing files |
|
|
921
|
-
| `patterns.json` | Design pattern classifications by concern |
|
|
922
|
-
| `dependencies.json` | @-reference and reads-from relationships |
|
|
923
|
-
| `decisions.json` | Architectural decisions from DESIGN-CONTEXT.md |
|
|
924
|
-
| `debt.json` | Design debt items from DESIGN-DEBT.md |
|
|
925
|
-
| `graph.json` | Cross-reference graph: nodes + edges |
|
|
926
|
-
|
|
927
|
-
Build the intel store:
|
|
928
|
-
|
|
929
|
-
```bash
|
|
930
|
-
node scripts/build-intel.cjs --force
|
|
592
|
+
/gdd:set-profile budget
|
|
931
593
|
```
|
|
932
594
|
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
### Context exhaustion hook
|
|
936
|
-
|
|
937
|
-
`hooks/context-exhaustion.js` auto-records a `<paused>` resumption block in `.design/STATE.md` when session context reaches 85%. Run `/gdd:resume` in the next session to restore context.
|
|
595
|
+
Use `inherit` when using non-Anthropic providers or to follow the runtime's current model selection.
|
|
938
596
|
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
## Optimization Layer
|
|
942
|
-
|
|
943
|
-
Every `/gdd:*` command and agent spawn passes through a cross-cutting optimization layer designed to reduce token cost without regressing on design quality.
|
|
944
|
-
|
|
945
|
-
- **`gdd-router` skill** — First-step intent router. Returns the right execution path (`fast|quick|full`) with model-tier overrides and a cache-hit check before any downstream spawn.
|
|
946
|
-
- **`gdd-cache-manager` skill + `/gdd:warm-cache`** — Pre-warms common agent system prompts so Anthropic's 5-minute prompt cache fires on the shared preamble across a session.
|
|
947
|
-
- **`budget-enforcer` PreToolUse hook** — Intercepts every `Agent` spawn. Hard-blocks on cap breach, auto-downgrades at the soft threshold, short-circuits on cache hit.
|
|
948
|
-
- **Lazy checker gates** — Cheap Haiku heuristic decides whether to spawn the expensive full checker for each verification stage.
|
|
949
|
-
- **Streaming synthesizer** — Parallel-mapper outputs collapse through a single Haiku call before returning to main context, keeping the orchestrator cache-aligned.
|
|
950
|
-
- **Cost telemetry** — `.design/telemetry/costs.jsonl` records every spawn decision. Aggregated to `.design/agent-metrics.json` and consumed by `/gdd:optimize` and `design-reflector`.
|
|
951
|
-
|
|
952
|
-
---
|
|
953
|
-
|
|
954
|
-
## Testing & CI
|
|
955
|
-
|
|
956
|
-
GDD ships with a locked test suite. Every push and PR runs a five-job pipeline across a cross-platform matrix — Node 22/24 × Linux/macOS/Windows.
|
|
597
|
+
### Adaptive Mode
|
|
957
598
|
|
|
958
|
-
|
|
599
|
+
`.design/budget.json#adaptive_mode` ladder (v1.23.5):
|
|
959
600
|
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
### CI pipeline
|
|
967
|
-
|
|
968
|
-
```
|
|
969
|
-
lint → validate → test (matrix) → security + size-budget
|
|
970
|
-
```
|
|
601
|
+
| Mode | What it does |
|
|
602
|
+
|------|--------------|
|
|
603
|
+
| `static` (default) | Phase 10.1 behavior — static D-13 tier map |
|
|
604
|
+
| `hedge` | AdaNormalHedge ensemble + MMR rerank engaged. Bandit router still reads static map. Safest intro. |
|
|
605
|
+
| `full` | Bandit router + Hedge + MMR all active, reading/writing `.design/telemetry/posterior.json` |
|
|
971
606
|
|
|
972
|
-
|
|
973
|
-
- **Validate** — JSON schema validation, agent frontmatter validator, stale-ref detector, `claude plugin validate .`
|
|
974
|
-
- **Test** — Node 22/24 × Linux/macOS/Windows, fail-fast disabled
|
|
975
|
-
- **Security** — shellcheck on `scripts/`, secrets scan, injection scanner over all shipped skills/agents
|
|
976
|
-
- **Size-budget** — Blocking tier enforcement (XXL: 700, XL: 500, Large: 300, Default: 200 lines)
|
|
607
|
+
### Parallelism
|
|
977
608
|
|
|
978
|
-
|
|
609
|
+
| Setting | Default | What it controls |
|
|
610
|
+
|---------|---------|------------------|
|
|
611
|
+
| `parallelism.enabled` | `true` | Run independent tasks in worktrees |
|
|
612
|
+
| `parallelism.min_estimated_savings_seconds` | `30` | Skip parallelization below this threshold |
|
|
613
|
+
| `parallelism.max_concurrent_workers` | `4` | Hard cap on simultaneous worktrees |
|
|
979
614
|
|
|
980
|
-
|
|
615
|
+
### Quality Gates
|
|
981
616
|
|
|
982
|
-
|
|
617
|
+
| Setting | Default | What it controls |
|
|
618
|
+
|---------|---------|------------------|
|
|
619
|
+
| `solidify.rollback_mode` | `"stash"` | `stash` / `hard` / `none` — how to revert on validation failure |
|
|
620
|
+
| `solidify.commands` | autodetect | Override typecheck / build / test commands |
|
|
621
|
+
| `verify.iterations_max` | `3` | Cap on verify→fix loop iterations |
|
|
622
|
+
| `connection.figma_writeback` | `proposal` | `proposal` / `auto` — confirm before writing |
|
|
983
623
|
|
|
984
624
|
---
|
|
985
625
|
|
|
986
|
-
##
|
|
626
|
+
## Security
|
|
987
627
|
|
|
988
|
-
|
|
989
|
-
- `SKILL.md` — root pipeline router
|
|
990
|
-
- `skills/` — 55 stage + standalone skills
|
|
991
|
-
- `agents/` — 33 specialized agent specs
|
|
992
|
-
- `connections/` — 12 connection specs
|
|
993
|
-
- `reference/` — curated design reference (shared preamble, model tiers, model prices, schemas, DEPRECATIONS, config schema)
|
|
994
|
-
- `hooks/`, `scripts/bootstrap.sh`
|
|
628
|
+
### Built-in Hardening
|
|
995
629
|
|
|
996
|
-
|
|
630
|
+
GDD ships defense-in-depth security since Phase 14.5:
|
|
997
631
|
|
|
998
|
-
|
|
632
|
+
- **`hooks/gdd-bash-guard.js`** — PreToolUse:Bash blocks ~50 dangerous patterns (`rm -rf /`, `chmod 777`, `curl | sh`, `git reset --hard`, fork bombs) after Unicode NFKC + ANSI normalization.
|
|
633
|
+
- **`hooks/gdd-protected-paths.js`** — PreToolUse:Edit/Write/Bash enforces `protected_paths` glob list (defaults: `reference/**`, `.design/archive/**`, `skills/**`, `commands/**`, `hooks/**`, `.design/config.json`, `.design/telemetry/**`).
|
|
634
|
+
- **`hooks/gdd-read-injection-scanner.ts`** — scans inbound Read content for invisible-Unicode (zero-width, word-joiner, BOM, bidi overrides) + HTML-comment + secret-exfil patterns.
|
|
635
|
+
- **`scripts/lib/blast-radius.cjs`** — `design-executor` preflight refuses tasks above `max_files_per_task: 10` / `max_lines_per_task: 400`.
|
|
636
|
+
- **`hooks/gdd-mcp-circuit-breaker.js`** — breaks consecutive-timeout loops on `use_figma` / `use_paper` / `use_pencil`.
|
|
999
637
|
|
|
1000
|
-
|
|
1001
|
-
git clone https://github.com/hegemonart/get-design-done.git
|
|
1002
|
-
cd get-design-done
|
|
1003
|
-
npm ci
|
|
1004
|
-
npm test
|
|
1005
|
-
claude --plugin-dir ./
|
|
1006
|
-
```
|
|
638
|
+
### Protecting Sensitive Files
|
|
1007
639
|
|
|
1008
|
-
|
|
640
|
+
Add sensitive paths to your runtime's deny list:
|
|
1009
641
|
|
|
1010
|
-
```
|
|
1011
|
-
|
|
1012
|
-
|
|
642
|
+
```json
|
|
643
|
+
{
|
|
644
|
+
"permissions": {
|
|
645
|
+
"deny": [
|
|
646
|
+
"Read(.env)",
|
|
647
|
+
"Read(.env.*)",
|
|
648
|
+
"Read(**/secrets/*)",
|
|
649
|
+
"Read(**/*credential*)",
|
|
650
|
+
"Read(**/*.pem)",
|
|
651
|
+
"Read(**/*.key)"
|
|
652
|
+
]
|
|
653
|
+
}
|
|
654
|
+
}
|
|
1013
655
|
```
|
|
1014
656
|
|
|
1015
|
-
|
|
657
|
+
> [!IMPORTANT]
|
|
658
|
+
> Because GDD generates markdown files that become LLM system prompts, any user-controlled text flowing into `.design/` artifacts is a potential indirect prompt-injection vector. The injection scanner catches such vectors at multiple layers — but defense-in-depth is best practice.
|
|
1016
659
|
|
|
1017
660
|
---
|
|
1018
661
|
|
|
1019
662
|
## Troubleshooting
|
|
1020
663
|
|
|
1021
664
|
**Commands not found after install?**
|
|
1022
|
-
- Restart
|
|
1023
|
-
- Verify files exist
|
|
1024
|
-
-
|
|
665
|
+
- Restart your runtime to reload commands/skills
|
|
666
|
+
- Verify files exist at `~/.claude/skills/get-design-done/` for global Claude Code installs
|
|
667
|
+
- For local installs, verify `./.claude/skills/get-design-done/`
|
|
668
|
+
- Run `/gdd:help` to confirm registration
|
|
1025
669
|
|
|
1026
|
-
**Pipeline stuck
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
```
|
|
1031
|
-
The forensic mode runs a 6-check integrity audit — stale artifacts, dangling decisions, unfinished handoffs, orphan cycles, schema drift, injection-scanner warnings.
|
|
670
|
+
**Pipeline stuck mid-stage?**
|
|
671
|
+
- `/gdd:resume` — restore from the most recent numbered checkpoint
|
|
672
|
+
- `/gdd:health` — diagnose `.design/` artifact issues
|
|
673
|
+
- `/gdd:progress --forensic` — 6-check integrity audit
|
|
1032
674
|
|
|
1033
|
-
**
|
|
1034
|
-
|
|
675
|
+
**Cost overruns?**
|
|
676
|
+
- `/gdd:optimize` — rule-based recommendations
|
|
677
|
+
- `/gdd:set-profile budget` — switch to budget tier
|
|
678
|
+
- Set `adaptive_mode: "full"` in `.design/budget.json` — bandit will learn cheap-and-correct tier per agent over 5–10 cycles
|
|
1035
679
|
|
|
1036
680
|
**Updating to the latest version?**
|
|
1037
|
-
See [Staying Updated](#staying-updated). Short version: `npx @hegemonart/get-design-done@latest` or `/gdd:update`.
|
|
1038
|
-
|
|
1039
|
-
### Uninstall
|
|
1040
|
-
|
|
1041
681
|
```bash
|
|
1042
|
-
|
|
682
|
+
npx @hegemonart/get-design-done@latest
|
|
1043
683
|
```
|
|
1044
684
|
|
|
1045
|
-
|
|
685
|
+
**Using Docker / containers?**
|
|
1046
686
|
|
|
1047
687
|
```bash
|
|
1048
|
-
|
|
688
|
+
CLAUDE_CONFIG_DIR=/workspace/.claude npx @hegemonart/get-design-done
|
|
1049
689
|
```
|
|
1050
690
|
|
|
1051
|
-
|
|
691
|
+
### Uninstalling
|
|
692
|
+
|
|
693
|
+
```bash
|
|
694
|
+
# Global installs (per-runtime)
|
|
695
|
+
npx @hegemonart/get-design-done --claude --global --uninstall
|
|
696
|
+
npx @hegemonart/get-design-done --opencode --global --uninstall
|
|
697
|
+
npx @hegemonart/get-design-done --gemini --global --uninstall
|
|
698
|
+
npx @hegemonart/get-design-done --kilo --global --uninstall
|
|
699
|
+
npx @hegemonart/get-design-done --codex --global --uninstall
|
|
700
|
+
npx @hegemonart/get-design-done --copilot --global --uninstall
|
|
701
|
+
npx @hegemonart/get-design-done --cursor --global --uninstall
|
|
702
|
+
npx @hegemonart/get-design-done --windsurf --global --uninstall
|
|
703
|
+
npx @hegemonart/get-design-done --antigravity --global --uninstall
|
|
704
|
+
npx @hegemonart/get-design-done --augment --global --uninstall
|
|
705
|
+
npx @hegemonart/get-design-done --trae --global --uninstall
|
|
706
|
+
npx @hegemonart/get-design-done --qwen --global --uninstall
|
|
707
|
+
npx @hegemonart/get-design-done --codebuddy --global --uninstall
|
|
708
|
+
npx @hegemonart/get-design-done --cline --global --uninstall
|
|
709
|
+
|
|
710
|
+
# Multi-select interactive uninstall (no runtime flag)
|
|
711
|
+
npx @hegemonart/get-design-done --uninstall
|
|
712
|
+
|
|
713
|
+
# Local installs (current project)
|
|
714
|
+
npx @hegemonart/get-design-done --claude --local --uninstall
|
|
715
|
+
# ... same flags as above with --local
|
|
716
|
+
```
|
|
717
|
+
|
|
718
|
+
This removes all GDD commands, agents, hooks, and settings while preserving other configurations.
|
|
1052
719
|
|
|
1053
720
|
---
|
|
1054
721
|
|
|
@@ -1060,6 +727,6 @@ MIT License. See [LICENSE](LICENSE) for details.
|
|
|
1060
727
|
|
|
1061
728
|
<div align="center">
|
|
1062
729
|
|
|
1063
|
-
**Claude Code
|
|
730
|
+
**Claude Code ships code. Get Design Done makes sure it ships design.**
|
|
1064
731
|
|
|
1065
732
|
</div>
|