@hegemonart/get-design-done 1.0.7 → 1.14.1
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 +129 -2
- package/README.md +186 -53
- package/SKILL.md +6 -4
- package/agents/design-authority-watcher.md +208 -0
- package/agents/design-component-generator.md +221 -0
- package/agents/design-context-builder.md +83 -6
- package/agents/design-discussant.md +1 -1
- package/agents/design-figma-writer.md +8 -8
- package/agents/design-paper-writer.md +131 -0
- package/agents/design-pencil-writer.md +99 -0
- package/agents/design-research-synthesizer.md +13 -1
- package/agents/design-update-checker.md +117 -0
- package/agents/design-verifier.md +51 -0
- package/agents/token-mapper.md +1 -1
- package/connections/21st-dev.md +98 -0
- package/connections/claude-design.md +0 -1
- package/connections/connections.md +50 -33
- package/connections/figma.md +81 -39
- package/connections/magic-patterns.md +105 -0
- package/connections/paper-design.md +137 -0
- package/connections/pencil-dev.md +88 -0
- package/connections/pinterest.md +0 -1
- package/hooks/budget-enforcer.js +13 -2
- package/hooks/gdd-read-injection-scanner.js +4 -9
- package/hooks/hooks.json +8 -0
- package/hooks/update-check.sh +251 -0
- package/package.json +1 -1
- package/reference/ai-native-tool-interface.md +102 -0
- package/reference/authority-feeds.md +72 -0
- package/reference/schemas/authority-snapshot.schema.json +42 -0
- package/reference/schemas/config.schema.json +4 -0
- package/reference/schemas/marketplace.schema.json +2 -2
- package/reference/schemas/plugin.schema.json +1 -1
- package/scripts/aggregate-agent-metrics.js +20 -0
- package/scripts/build-intel.cjs +13 -5
- package/scripts/injection-patterns.cjs +17 -0
- package/scripts/run-injection-scanner-ci.cjs +1 -10
- package/scripts/tests/test-authority-rejected-kinds.sh +58 -0
- package/scripts/tests/test-authority-watcher-diff.sh +113 -0
- package/scripts/validate-schemas.cjs +18 -1
- package/skills/audit/SKILL.md +11 -1
- package/skills/check-update/SKILL.md +135 -0
- package/skills/complete-cycle/SKILL.md +10 -0
- package/skills/design/SKILL.md +5 -5
- package/skills/discover/SKILL.md +2 -2
- package/skills/explore/SKILL.md +55 -3
- package/skills/health/SKILL.md +10 -0
- package/skills/help/SKILL.md +10 -0
- package/skills/progress/SKILL.md +10 -0
- package/skills/reflect/SKILL.md +1 -0
- package/skills/scan/SKILL.md +9 -19
- package/skills/ship/SKILL.md +10 -0
- package/skills/watch-authorities/SKILL.md +82 -0
- package/connections/figma-writer.md +0 -139
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
},
|
|
6
6
|
"metadata": {
|
|
7
7
|
"description": "Get Design Done — 5-stage agent-orchestrated design pipeline with 9 connections, handoff-first workflow, bidirectional Figma write-back, 22+ specialized agents, queryable knowledge layer (intel store, dependency analysis, learnings extraction), and a self-improvement loop (reflector, frontmatter + budget feedback, global-skills layer). Ships with a full CI/CD pipeline (Node 22/24 × Linux/macOS/Windows) and release automation (auto-tag + GitHub Release + release-time smoke test).",
|
|
8
|
-
"version": "1.
|
|
8
|
+
"version": "1.14.1"
|
|
9
9
|
},
|
|
10
10
|
"plugins": [
|
|
11
11
|
{
|
|
12
12
|
"name": "get-design-done",
|
|
13
13
|
"source": "./",
|
|
14
14
|
"description": "Agent-orchestrated 5-stage design pipeline: Brief → Explore → Plan → Design → Verify. 22+ specialized agents, 9 connections (Figma, Refero, Preview, Storybook, Chromatic, Figma Writer, Graphify, Pinterest, Claude Design), Claude Design handoff, bidirectional Figma write-back, and a queryable intel store (.design/intel/) for dependency and learnings queries. Standalone commands: style, darkmode, compare, figma-write, graphify, handoff, analyze-dependencies, skill-manifest, extract-learnings. Embeds NNG heuristics, WCAG thresholds, typographic systems, motion framework, and anti-pattern catalog. Ships with a full CI/CD pipeline (Node 22/24 × Linux/macOS/Windows) and release automation. Optimization layer (v1.0.4.1, retroactive): gdd-router + gdd-cache-manager skills, PreToolUse budget-enforcer hook, tier-aware agent frontmatter, lazy checker gates, streaming synthesizer, /gdd:warm-cache + /gdd:optimize commands, and cost telemetry at .design/telemetry/costs.jsonl — targeting 50-70% per-task token-cost reduction with no quality-floor regression.",
|
|
15
|
-
"version": "1.
|
|
15
|
+
"version": "1.14.1",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "hegemonart"
|
|
18
18
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "get-design-done",
|
|
3
3
|
"short_name": "gdd",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.14.1",
|
|
5
5
|
"description": "Agent-orchestrated 5-stage design pipeline: Brief → Explore → Plan → Design → Verify. 22+ specialized agents, 9 connections (Figma, Refero, Preview, Storybook, Chromatic, Figma Writer, Graphify, Pinterest, Claude Design), handoff-first workflow via Claude Design bundles, bidirectional Figma write-back (annotations, Code Connect), queryable intel store (`.design/intel/`) for O(1) design surface lookups, and self-improvement loop (reflector agent, frontmatter + budget feedback, global-skills layer at `~/.claude/gdd/global-skills/`). Standalone commands: style, darkmode, compare, figma-write, graphify, handoff, analyze-dependencies, skill-manifest, extract-learnings, reflect, apply-reflections. Embeds NNG heuristics, WCAG thresholds, typographic systems, motion framework, and anti-pattern catalog. Ships with a full CI/CD pipeline (Node 22/24 × Linux/macOS/Windows, lint + schema + frontmatter + stale-ref + shellcheck + gitleaks + injection-scan + blocking size-budget) and release automation (auto-tag + GitHub Release + release-time smoke test). Optimization layer (v1.0.4.1, retroactive): gdd-router + gdd-cache-manager skills, PreToolUse budget-enforcer hook, tier-aware agent frontmatter, lazy checker gates, streaming synthesizer, /gdd:warm-cache + /gdd:optimize commands, and cost telemetry at .design/telemetry/costs.jsonl — targeting 50-70% per-task token-cost reduction with no quality-floor regression.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "hegemonart",
|
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,133 @@ All notable changes to get-design-done are documented here. Versions follow [sem
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## [1.14.1] — 2026-04-19
|
|
8
|
+
|
|
9
|
+
### Fixed — Security hardening (full codebase review)
|
|
10
|
+
|
|
11
|
+
- **CR-01** `scripts/build-intel.cjs` — replaced `execSync` template literal with `spawnSync` argv array; eliminates command injection via crafted filenames in the project tree. Added 5 s timeout to all git calls.
|
|
12
|
+
- **CR-02** `hooks/update-check.sh` — validate `LATEST_TAG` against a semver pattern before writing to cache; strip double-quotes from `BODY_EXCERPT` to prevent injection via adversarial release body.
|
|
13
|
+
- **CR-03** `.github/workflows/ci.yml` — pin `ludeeus/action-shellcheck` from `@master` (mutable) to `@2.0.0` (supply-chain hardening).
|
|
14
|
+
- **WR-01** `scripts/injection-patterns.cjs` — new shared source of truth for prompt-injection patterns; both the runtime hook and CI scanner now require from it, eliminating silent pattern drift.
|
|
15
|
+
- **WR-02** `hooks/budget-enforcer.js` — phase spend now read from the lightweight `phase-totals.json` written by the aggregator instead of replaying the full `costs.jsonl` on every agent spawn (O(1) vs O(n)).
|
|
16
|
+
- **WR-04** `hooks/update-check.sh` — allowlist-gate `C_DELTA` after cache read (`major|minor|patch|off-cadence|none`) before it reaches any shell context.
|
|
17
|
+
- **WR-05** `scripts/tests/test-authority-watcher-diff.sh` — replace `find | wc -l` with null-delimited loop; handles filenames with newlines.
|
|
18
|
+
- **WR-06** `tests/regression-baseline.test.cjs` — replace `execSync` template literal with `spawnSync` in git helpers.
|
|
19
|
+
- **WR-07** `tests/optimization-layer.test.cjs` — fix budget schema test to match the actual `loadBudget()` format (`per_task_cap_usd`, `per_phase_cap_usd`, `enforcement_mode`, …); previous test validated a dead schema shape.
|
|
20
|
+
- **IN-02** `hooks/budget-enforcer.js` — detached aggregator child now inherits only `PATH`, not full `process.env`.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## [1.14.0] — 2026-04-19
|
|
25
|
+
|
|
26
|
+
### Added — Phase 14: AI-Native Design Tool Connections
|
|
27
|
+
|
|
28
|
+
- `connections/paper-design.md` — paper.design MCP integration (canvas read/write, budget tracking, 100 calls/week free tier)
|
|
29
|
+
- `connections/pencil-dev.md` — pencil.dev .pen file integration (git-tracked design specs, pre-merge spec-vs-impl diff)
|
|
30
|
+
- `connections/21st-dev.md` — 21st.dev Magic MCP (prior-art gate, component scaffolding, SVGL brand logo lookup)
|
|
31
|
+
- `connections/magic-patterns.md` — Magic Patterns component generator (Claude connector + API key fallback, DS-aware, preview_url)
|
|
32
|
+
- `agents/design-paper-writer.md` — annotate / tokenize / roundtrip modes for paper.design canvas; proposal→confirm, dry-run, budget-aware
|
|
33
|
+
- `agents/design-pencil-writer.md` — annotate / roundtrip modes for .pen files with atomic git commits
|
|
34
|
+
- `agents/design-component-generator.md` — shared component generator (21st.dev + Magic Patterns impl sections); proposal→confirm, DS-aware
|
|
35
|
+
- `reference/ai-native-tool-interface.md` — capability-based contract for canvas + component-generator sub-categories; extension guide for future tools
|
|
36
|
+
- Explore stage: 21st.dev prior-art gate — marketplace search before any greenfield component build; ≥80% fit → adopt recommendation
|
|
37
|
+
- Explore stage: design-system auto-detection (shadcn / tailwind / mantine / chakra) written to STATE.md for generator targeting
|
|
38
|
+
- Verify stage: paper.design component screenshots via `get_screenshot` for `? VISUAL` checks (Phase 4C)
|
|
39
|
+
- Verify stage: pencil.dev spec-vs-implementation diff — compares .pen design-token declarations against actual code values
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- `connections/connections.md` — added `canvas` and `generator` columns to capability matrix; 4 new rows; backlog of 8 candidate future tools
|
|
44
|
+
- `agents/design-context-builder.md` — Step 0A (paper.design canvas read), Step 0B (pencil.dev .pen discovery), Step 0C (DS detection)
|
|
45
|
+
- `agents/design-verifier.md` — Phase 4C (paper.design screenshots), pencil.dev spec-vs-impl diff block
|
|
46
|
+
- `agents/design-research-synthesizer.md` — .pen file merge into synthesis output
|
|
47
|
+
- `skills/explore/SKILL.md` — probes C/D/E/F (21st.dev, Magic Patterns, paper.design, pencil.dev) + Step 1.5 prior-art gate
|
|
48
|
+
- Version bump to 1.14.0 (milestone.phase.patch scheme: 1.MM.P)
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## [1.13.3] — 2026-04-19
|
|
53
|
+
|
|
54
|
+
### Added — Phase 13.3: Plugin Update Checker
|
|
55
|
+
|
|
56
|
+
- `hooks/update-check.sh` — SessionStart Bash hook; 24h-cached unauthenticated `GET /repos/hegemonart/get-design-done/releases/latest`; classifies semver delta (major / minor / patch / off-cadence); respects `.design/STATE.md` stage guard (suppresses nudge during `plan`, `design`, `verify`); respects per-version dismissal from `.design/config.json`; silent-on-failure by policy (exit 0 on every error path); BASH_SOURCE guard makes the script source-safe for self-test.
|
|
57
|
+
- `hooks/hooks.json` — registers `update-check.sh` as a second SessionStart command alongside `bootstrap.sh` (run order: bootstrap → update-check).
|
|
58
|
+
- `agents/design-update-checker.md` — Haiku-tier enrichment agent (Phase 10.1 cost governance). Invoked only by `/gdd:check-update --prompt` to produce a 3–5-line "what this release changes for you" summary from the cached release body. Reads-only, inline-text-only output, ends with `## UPDATE-CHECKER COMPLETE`.
|
|
59
|
+
- `skills/check-update/SKILL.md` — `/gdd:check-update` manual slash command. Flags: `--refresh` (bypass 24h TTL, re-fetch now), `--dismiss` (write `update_dismissed: "<tag>"` atomically to `.design/config.json` via env-prefix python3 heredoc, preserves all pre-existing keys), `--prompt` (spawn the enrichment agent). Default (no flag) prints cached state.
|
|
60
|
+
- `.design/update-cache.json` — per-user-project runtime cache (written by the hook). Shape: `{checked_at, current_tag, latest_tag, delta, is_newer, changelog_excerpt}`; 500-char excerpt from release body.
|
|
61
|
+
- `.design/update-available.md` — per-user-project runtime rendered banner. Written only when all four gates pass (cache is_newer=true AND stage ∉ {plan,design,verify} AND not dismissed AND latest_tag parsed successfully). Consumed by safe-window skills via `[ -f .design/update-available.md ] && cat .design/update-available.md`.
|
|
62
|
+
- `reference/schemas/config.schema.json` — adds optional `update_dismissed: string` property.
|
|
63
|
+
- Safe-window surfaces: `/gdd:progress`, `/gdd:health`, `/gdd:help`, post-closeout of `/gdd:ship`, `/gdd:complete-cycle`, `/gdd:audit` — each appends the one-line banner-cat tail before its completion marker. Mid-pipeline skills (`brief`, `explore`, `plan`, `design`, `verify`) explicitly NOT modified.
|
|
64
|
+
- `skills/audit/SKILL.md` — `tools:` list extended with `Bash` to enable the banner-cat tail (previously: `Read, Write, Task, Glob`).
|
|
65
|
+
- Root `SKILL.md` — `check-update` registered in argument-hint alternation.
|
|
66
|
+
- `test-fixture/baselines/phase-13.3/` — regression baseline lock for v1.13.3.
|
|
67
|
+
- `test-fixture/baselines/current/agent-list.txt` — appended `design-update-checker.md` in sorted position.
|
|
68
|
+
- `test-fixture/baselines/current/skill-list.txt` — appended `check-update` in sorted position.
|
|
69
|
+
|
|
70
|
+
### Changed
|
|
71
|
+
|
|
72
|
+
- Plugin version: 1.0.7.2 → 1.13.3 (per the new milestone.phase.sub-phase versioning scheme — MAJOR=milestone, MINOR=phase, PATCH=sub-phase). Phase 13.3 lands as a valid semver; release workflow auto-tags and `npm publish` succeeds.
|
|
73
|
+
|
|
74
|
+
### Design principles (Phase 13.3)
|
|
75
|
+
|
|
76
|
+
- **Never auto-updates.** The checker only surfaces a nudge; `/gdd:update` remains the explicit user action.
|
|
77
|
+
- **Never interrupts critical work.** State-machine guard suppresses the nudge during mid-pipeline stages (`plan`, `design`, `verify`); banner renders only in the 6 documented safe windows.
|
|
78
|
+
- **Silent-on-failure.** Network timeout, malformed JSON, missing plugin.json, unwritable `.design/` — every path exits 0 without printing to stderr during normal SessionStart.
|
|
79
|
+
- **No telemetry.** Unauthenticated GitHub Releases fetch; no phone-home, no tracking, no tokens in code.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## [1.13.2] — 2026-04-19
|
|
84
|
+
|
|
85
|
+
### Added — Phase 13.2: External Authority Watcher
|
|
86
|
+
|
|
87
|
+
- `reference/authority-feeds.md` — curated whitelist of 26 design-authority feeds grouped by kind (5 spec sources, 8 component systems, 3 research institutions, 10 named practitioners, user-extensible Are.na channels) with an explicit `## Rejected kinds` assertion block covering Dribbble, Behance, LinkedIn, generic Medium topic feeds, and trending aggregators.
|
|
88
|
+
- `reference/schemas/authority-snapshot.schema.json` — Draft-07 JSON Schema validating `.design/authority-snapshot.json` shape (version const 1, feeds keyed by id, 64-hex sha256 hash pattern, `maxItems: 200` per-feed entry cap enforcing D-14 retention at validation time).
|
|
89
|
+
- `agents/design-authority-watcher.md` — Sonnet-tier, parallel-safe watcher agent. Fetches feeds via WebFetch, diffs against snapshot, classifies new entries into five buckets (`spec-change`, `heuristic-update`, `pattern-guidance`, `craft-tip`, `skip`) with a one-sentence rationale per entry. First run seeds the snapshot silently; `--since <date>` is the escape hatch for surfacing a backlog.
|
|
90
|
+
- `skills/watch-authorities/SKILL.md` — `/gdd:watch-authorities` command with `--refresh`, `--since <date>`, `--feed <name>`, `--schedule <weekly|daily|monthly>` flags. Mutual-exclusion rules between `--refresh` and `--since`; `--schedule` registers a cron via the `scheduled-tasks` MCP when connected (weekly=`0 9 * * 1`, daily=`0 9 * * *`, monthly=`0 9 1 * *`) with graceful exit-0 fallback on MCP absence.
|
|
91
|
+
- `scripts/tests/test-authority-rejected-kinds.sh` — CI test enforcing the anti-slop thesis structurally. Splits `reference/authority-feeds.md` at the `## Rejected kinds` heading and greps the active section for `dribbble.com` / `behance.net` / `linkedin.com` / `medium.com/topic` / trending-aggregator hostnames; exits non-zero on any match.
|
|
92
|
+
- `scripts/tests/test-authority-watcher-diff.sh` — structural-only v1 of the watcher-diff test. Asserts fixture presence, baseline existence, D-21 classification-heading vocabulary, and exact count consistency between the header's "N entries surfaced" figure and the number of bulleted entries across classification sections. Full end-to-end byte diff against a live watcher run is deferred until the Claude Code agent runtime is available in CI.
|
|
93
|
+
- `test-fixture/authority-feeds/` — four frozen mock feeds (WAI-ARIA APG Atom, Radix Primitives release Atom, NN/g articles RSS, Are.na channel JSON) with deterministic timestamps for byte-stable CI diff testing. Exercises all four non-practitioner source kinds against every branch of the D-17 classification decision table.
|
|
94
|
+
- `test-fixture/baselines/phase-13.2/authority-report.expected.md` — frozen regression baseline for the watcher-diff test (9 entries across 4 feeds: spec-change=2, heuristic-update=1, pattern-guidance=4, craft-tip=2, skip=0).
|
|
95
|
+
|
|
96
|
+
### Changed
|
|
97
|
+
|
|
98
|
+
- `skills/reflect/SKILL.md` step 3 "Build required-reading list" — appended `.design/authority-report.md`. Single-line addition; `agents/design-reflector.md` itself is byte-identical since phase start (D-25 reflector-non-modification invariant preserved).
|
|
99
|
+
- Root `SKILL.md` — `watch-authorities` registered in argument-hint alternation, the maintenance Command Reference table, and the Jump Mode routing block alongside `/gdd:reflect` and `/gdd:apply-reflections`.
|
|
100
|
+
- `scripts/validate-schemas.cjs` — wired `authority-snapshot` into the `PAIRS` array and invoked `ajv-cli` with `-c ajv-formats` so `format: "date-time"` declarations are enforced rather than rejected under ajv strict mode. No-op for existing schemas (none declared formats).
|
|
101
|
+
- `tests/agent-size-budget.test.cjs` — added `M: 300` tier to `TIER_LIMITS` for Worker-tier agents (between `S: 150` and `LARGE: 350`); accommodates CONTEXT D-05's "body ≈ 200–300 lines" target with modest headroom.
|
|
102
|
+
- `test-fixture/baselines/phase-6/agent-list.txt` — appended `design-authority-watcher.md` in sorted position.
|
|
103
|
+
- `test-fixture/baselines/phase-6/skill-list.txt` — appended `watch-authorities` in sorted position.
|
|
104
|
+
- Plugin version: 1.0.7 → 1.13.2 (decimal sub-phase = PATCH bump per new versioning scheme: MAJOR=milestone, MINOR=phase, PATCH=sub-phase). Does not shift the Phase 14 → v1.14.0 cadence.
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## [1.13.1] — 2026-04-19
|
|
109
|
+
|
|
110
|
+
### Changed — Phase 13.1: Figma MCP Consolidation
|
|
111
|
+
- Collapsed the dual Figma MCP setup (local `figma-desktop` for reads + remote `figma` for writes) into the single remote `figma` MCP, which exposes full read parity (`get_metadata`, `get_design_context`, `get_variable_defs`, `get_screenshot`) alongside `use_figma` for writes.
|
|
112
|
+
- Rewrote `connections/figma.md` to cover both reads and writes; deleted `connections/figma-writer.md` (folded into the unified spec).
|
|
113
|
+
- Migrated every `mcp__figma-desktop__*` tool reference to `mcp__figma__*` across skills (`scan`, `discover`, `explore`, `design`), agents (`design-figma-writer`, `design-context-builder`, `design-discussant`, `token-mapper`), and `connections/connections.md` capability matrix + probe block.
|
|
114
|
+
- Collapsed STATE.md `<connections>` schema from `figma: … / figma_writer: …` to a single `figma:` key. The remote MCP is one server — one probe, one status.
|
|
115
|
+
- Updated capability matrix in `connections/connections.md`: a single `Figma` row now declares write-back under the `design` column (FWR-01..04).
|
|
116
|
+
- Regenerated `test-fixture/baselines/phase-6/connection-list.txt` to drop the deleted `figma-writer.md` entry.
|
|
117
|
+
|
|
118
|
+
### Migration
|
|
119
|
+
- Install the remote Figma MCP (one command; replaces both prior installs):
|
|
120
|
+
```
|
|
121
|
+
claude mcp add figma --transport http https://mcp.figma.com/v1/sse
|
|
122
|
+
```
|
|
123
|
+
- Optionally remove the old desktop MCP after upgrading:
|
|
124
|
+
```
|
|
125
|
+
claude mcp remove figma-desktop
|
|
126
|
+
```
|
|
127
|
+
- No command or flag renames. The `design-figma-writer` agent keeps its name and proposal→confirm UX unchanged.
|
|
128
|
+
|
|
129
|
+
### Version note
|
|
130
|
+
- Shipped as **v1.13.1** per the new versioning scheme (MAJOR=milestone, MINOR=phase, PATCH=sub-phase). Phase 13.1 is a PATCH bump from v1.13.0. Phase 14 ships as v1.14.0.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
7
134
|
## [1.0.7] — 2026-04-18
|
|
8
135
|
|
|
9
136
|
### Added — Phase 13: CI/CD
|
|
@@ -82,9 +209,9 @@ All notable changes to get-design-done are documented here. Versions follow [sem
|
|
|
82
209
|
- `agents/design-discussant.md` logs answer quality after each Q&A exchange
|
|
83
210
|
- Plugin version: 1.0.4.1 → 1.0.5
|
|
84
211
|
|
|
85
|
-
## [1.
|
|
212
|
+
## [1.10.1] — 2026-04-18
|
|
86
213
|
|
|
87
|
-
**Phase 10.1: Optimization Layer + Cost Governance.**
|
|
214
|
+
**Phase 10.1: Optimization Layer + Cost Governance.** Decimal sub-phase = PATCH bump per versioning scheme (MAJOR=milestone, MINOR=phase, PATCH=sub-phase). v1.10.1 follows v1.10.0 (Phase 10) and precedes v1.11.0 (Phase 11).
|
|
88
215
|
|
|
89
216
|
### Added
|
|
90
217
|
- `gdd-router` skill — intent → `{path: fast|quick|full, model_tier_overrides, estimated_cost_usd, cache_hits}`. First step of every `/gdd:*` command.
|
package/README.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# GET DESIGN DONE
|
|
4
4
|
|
|
5
|
-
**Agent-orchestrated design pipeline for Claude Code. Five stages, thirty specialized agents,
|
|
5
|
+
**Agent-orchestrated design pipeline for Claude Code. Five stages, thirty-three specialized agents, twelve tool connections — from brief to verified shipping work.**
|
|
6
6
|
|
|
7
7
|
**Solves the "Claude made it look fine but nothing ties together" problem: no design system extraction, no reference grounding, no verification against the brief.**
|
|
8
8
|
|
|
9
9
|
[](https://www.npmjs.com/package/@hegemonart/get-design-done)
|
|
10
10
|
[](https://github.com/hegemonart/get-design-done/actions/workflows/ci.yml)
|
|
11
11
|
[](https://nodejs.org/)
|
|
12
|
-
[](https://github.com/hegemonart/get-design-done/releases/tag/v1.14.0)
|
|
13
13
|
[](LICENSE)
|
|
14
14
|
|
|
15
15
|
<br>
|
|
@@ -27,7 +27,7 @@ claude plugin install get-design-done@get-design-done
|
|
|
27
27
|
|
|
28
28
|
<br>
|
|
29
29
|
|
|
30
|
-
[Why I Built This](#why-i-built-this) · [How It Works](#how-it-works) · [Commands](#commands) · [Connections](#connections) · [Why It Works](#why-it-works)
|
|
30
|
+
[Why I Built This](#why-i-built-this) · [How It Works](#how-it-works) · [Canvas Tools](#ai-native-canvas-tools) · [Component Generators](#component-generators) · [Commands](#commands) · [Connections](#connections) · [Why It Works](#why-it-works)
|
|
31
31
|
|
|
32
32
|
</div>
|
|
33
33
|
|
|
@@ -52,7 +52,7 @@ I'm a designer who ships with Claude Code. The code-side workflow (GSD, Speckit,
|
|
|
52
52
|
|
|
53
53
|
What I kept running into: Claude happily generates UI, but the output is *disconnected*. Tokens don't match the existing system. Contrast ratios silently drift below WCAG. Hierarchy gets reinvented per screen. Anti-patterns from old stacks leak into new ones. And none of it is caught until the PR review, because nothing verified the output against the original design brief.
|
|
54
54
|
|
|
55
|
-
So I built Get Design Done. Same philosophy as GSD — **the complexity is in the system, not in your workflow**. Behind the scenes: thirty specialized agents, a queryable intel store, tier-aware model routing,
|
|
55
|
+
So I built Get Design Done. Same philosophy as GSD — **the complexity is in the system, not in your workflow**. Behind the scenes: thirty-three specialized agents, a queryable intel store, tier-aware model routing, twelve tool connections, and a self-improvement loop that tunes itself from measured telemetry. What you see: a few commands that just work.
|
|
56
56
|
|
|
57
57
|
The pipeline does the work *and* verifies it. I trust the workflow. It gets design done.
|
|
58
58
|
|
|
@@ -68,15 +68,17 @@ Get Design Done fixes that. It's the context engineering layer for design work i
|
|
|
68
68
|
|
|
69
69
|
## Who This Is For
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
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.
|
|
72
|
+
|
|
73
|
+
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.
|
|
72
74
|
|
|
73
75
|
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.
|
|
74
76
|
|
|
75
|
-
### v1.0
|
|
77
|
+
### v1.14.0 Highlights
|
|
76
78
|
|
|
77
|
-
- **
|
|
78
|
-
- **
|
|
79
|
-
- **
|
|
79
|
+
- **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.
|
|
80
|
+
- **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.
|
|
81
|
+
- **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
82
|
|
|
81
83
|
---
|
|
82
84
|
|
|
@@ -143,7 +145,7 @@ You approve the brief. Now the rest of the pipeline has something to verify agai
|
|
|
143
145
|
|
|
144
146
|
**Unified inventory + interview.** (The old `scan` and `discover` commands are deprecated aliases that route here.)
|
|
145
147
|
|
|
146
|
-
The skill probes connection
|
|
148
|
+
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:
|
|
147
149
|
|
|
148
150
|
1. **Inventory scan** — If `.design/map/` exists and is fresher than `src/`, consumes the structured map output. Otherwise runs a grep-based inventory pass
|
|
149
151
|
2. **Design interview** — Spawns `design-discussant`, which runs an adaptive interview grounded in the brief and what it found in the code
|
|
@@ -202,7 +204,7 @@ Walk away, come back to completed work with a clean commit history.
|
|
|
202
204
|
|
|
203
205
|
The skill spawns four agents in sequence, each with cheap-gate precursors:
|
|
204
206
|
|
|
205
|
-
1. **`design-verifier`** — Scores output against brief + context + plan. Runs
|
|
207
|
+
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
|
|
206
208
|
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
|
|
207
209
|
3. **`design-integration-checker`** — Cross-file consistency: token naming, component taxonomy, visual hierarchy, a11y labels
|
|
208
210
|
4. **`design-fixer`** — Proposes fixes for each gap, scoped and prioritized
|
|
@@ -236,7 +238,7 @@ Loop **brief → explore → plan → design → verify → ship** per cycle. Ea
|
|
|
236
238
|
### Standalone commands (no pipeline init required)
|
|
237
239
|
|
|
238
240
|
```
|
|
239
|
-
/gdd:handoff <bundle.html> # Skip
|
|
241
|
+
/gdd:handoff <bundle.html> # Skip explore/plan, route direct to verify
|
|
240
242
|
/gdd:style Button # Generate component handoff doc
|
|
241
243
|
/gdd:darkmode # Audit dark mode architecture + contrast
|
|
242
244
|
/gdd:compare # Delta between baseline and verification
|
|
@@ -269,7 +271,7 @@ Claude Code does great design work *if* you give it the context it needs. Most w
|
|
|
269
271
|
|
|
270
272
|
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.
|
|
271
273
|
|
|
272
|
-
###
|
|
274
|
+
### 33 Specialized Agents
|
|
273
275
|
|
|
274
276
|
Every stage uses the same pattern: a thin orchestrator skill spawns specialized agents, collects results, routes to the next step.
|
|
275
277
|
|
|
@@ -285,14 +287,13 @@ Every stage uses the same pattern: a thin orchestrator skill spawns specialized
|
|
|
285
287
|
|
|
286
288
|
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.
|
|
287
289
|
|
|
288
|
-
###
|
|
290
|
+
### 12 Tool Connections
|
|
289
291
|
|
|
290
292
|
Every connection is optional. The pipeline degrades gracefully — a grep-based fallback exists for every missing tool.
|
|
291
293
|
|
|
292
294
|
| Connection | Type | Purpose |
|
|
293
295
|
|-----------|------|---------|
|
|
294
|
-
| Figma
|
|
295
|
-
| Figma Writer | MCP (`mcp__figma__use_figma`) | Write decisions back to Figma (annotate, tokenize, Code Connect) |
|
|
296
|
+
| Figma | MCP (`mcp__figma__*`, remote) | Token extraction, design context pre-population, write-back via `use_figma` (annotate, tokenize, Code Connect) |
|
|
296
297
|
| Refero | MCP (`mcp__refero__*`) | Reference design search during exploration |
|
|
297
298
|
| Pinterest | MCP (`mcp__mcp-pinterest__*`) | Visual inspiration boards alongside Refero |
|
|
298
299
|
| Preview (Playwright) | MCP (`mcp__Claude_Preview__*`) | Live page screenshots for visual verification |
|
|
@@ -300,6 +301,10 @@ Every connection is optional. The pipeline degrades gracefully — a grep-based
|
|
|
300
301
|
| Chromatic | CLI (`npx chromatic`) | Visual regression delta narration and change-risk scoping |
|
|
301
302
|
| Graphify | CLI (`graphify`) | Knowledge graph: component↔token↔decision relationships |
|
|
302
303
|
| Claude Design | Bundle adapter | Parse HTML export → D-XX decisions, Handoff Faithfulness scoring |
|
|
304
|
+
| paper.design | MCP (`mcp__paper-design__*`) | Canvas read/write, component tree + computed styles, screenshot verification |
|
|
305
|
+
| pencil.dev | File (`.pen` YAML) | Git-tracked design specs; no MCP — pipeline reads and writes `.pen` files directly |
|
|
306
|
+
| 21st.dev Magic MCP | MCP + CLI | Prior-art gate before greenfield builds; component search + generation; SVGL brand logos |
|
|
307
|
+
| Magic Patterns | MCP / API key | DS-aware component generation; `preview_url` feeds visual verification |
|
|
303
308
|
|
|
304
309
|
See [`connections/connections.md`](connections/connections.md) for the full index and capability matrix.
|
|
305
310
|
|
|
@@ -331,6 +336,123 @@ After each design cycle, `/gdd:reflect` reads `.design/learnings/`, `.design/tel
|
|
|
331
336
|
|
|
332
337
|
---
|
|
333
338
|
|
|
339
|
+
## Authority Watcher
|
|
340
|
+
|
|
341
|
+
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.
|
|
342
|
+
|
|
343
|
+
```bash
|
|
344
|
+
# On-demand diff + classify
|
|
345
|
+
/gdd:watch-authorities
|
|
346
|
+
|
|
347
|
+
# Force re-seed the snapshot (recovery for a corrupted snapshot)
|
|
348
|
+
/gdd:watch-authorities --refresh
|
|
349
|
+
|
|
350
|
+
# Surface backlog since a specific date
|
|
351
|
+
/gdd:watch-authorities --since 2026-01-01
|
|
352
|
+
|
|
353
|
+
# Limit to a single feed (debugging)
|
|
354
|
+
/gdd:watch-authorities --feed wai-aria-apg
|
|
355
|
+
|
|
356
|
+
# Schedule recurring runs (requires the scheduled-tasks MCP)
|
|
357
|
+
/gdd:watch-authorities --schedule weekly
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### What the whitelist covers
|
|
361
|
+
|
|
362
|
+
See [`reference/authority-feeds.md`](reference/authority-feeds.md). 26 curated feeds grouped by kind:
|
|
363
|
+
|
|
364
|
+
- **Spec sources** — WAI-ARIA APG, Material 3, Apple HIG, Fluent 2, W3C Design Tokens CG
|
|
365
|
+
- **Component systems** — Radix, shadcn/ui, Polaris, Carbon, Primer, Atlassian, Ant, Mantine
|
|
366
|
+
- **Research institutions** — Nielsen Norman Group, Laws of UX, Baymard
|
|
367
|
+
- **Named practitioners** — 10 writers filtered for spec-adjacent, durable, original analysis
|
|
368
|
+
- **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
|
|
369
|
+
|
|
370
|
+
### What is explicitly rejected
|
|
371
|
+
|
|
372
|
+
No Dribbble. No Behance. No LinkedIn. No generic "trending" aggregators. See `reference/authority-feeds.md` §"Rejected kinds" — the exclusions are CI-enforced, not just documented.
|
|
373
|
+
|
|
374
|
+
### How the report feeds reflection
|
|
375
|
+
|
|
376
|
+
The watcher writes `.design/authority-report.md` — new entries classified into five buckets (`spec-change`, `heuristic-update`, `pattern-guidance`, `craft-tip`, `skip`) with a one-sentence rationale each. `/gdd:reflect` reads the report alongside internal telemetry and proposes reference-file updates. Nothing auto-ships — you review every proposal via `/gdd:apply-reflections`.
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## AI-Native Canvas Tools
|
|
381
|
+
|
|
382
|
+
get-design-done integrates with canvas tools that treat the design canvas as both source AND destination — enabling a full canvas→code→verify→canvas round-trip.
|
|
383
|
+
|
|
384
|
+
### paper.design
|
|
385
|
+
|
|
386
|
+
Read component trees, computed styles, and screenshots from the paper.design canvas. Write design decisions back via annotate / tokenize / roundtrip modes.
|
|
387
|
+
|
|
388
|
+
**Setup:**
|
|
389
|
+
```bash
|
|
390
|
+
claude mcp add paper-design --transport http https://mcp.paper.design/sse
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
**Capabilities:**
|
|
394
|
+
- `explore` — reads canvas selection, JSX tree, computed styles into DESIGN-CONTEXT.md
|
|
395
|
+
- `design` — `design-paper-writer` agent writes annotations, token bindings, and status back to canvas
|
|
396
|
+
- `verify` — `get_screenshot` captures component snapshots for `? VISUAL` checks (Phase 4C)
|
|
397
|
+
|
|
398
|
+
See [`connections/paper-design.md`](connections/paper-design.md) for full setup and probe pattern.
|
|
399
|
+
|
|
400
|
+
### pencil.dev
|
|
401
|
+
|
|
402
|
+
Git-tracked `.pen` YAML files are canonical design specs. No MCP required — the pipeline reads and writes `.pen` files directly.
|
|
403
|
+
|
|
404
|
+
**Setup:** Install the pencil.dev VS Code / Cursor extension. Add `.pen` files to your project.
|
|
405
|
+
|
|
406
|
+
**Capabilities:**
|
|
407
|
+
- `explore` — discovers `.pen` files; synthesizer merges token declarations with code
|
|
408
|
+
- `design` — `design-pencil-writer` agent writes DESIGN-DEBT findings and status back as `.pen` comments / spec updates (atomic git commits)
|
|
409
|
+
- `verify` — spec-vs-implementation diff: declared token values vs. actual CSS values
|
|
410
|
+
|
|
411
|
+
See [`connections/pencil-dev.md`](connections/pencil-dev.md) for `.pen` file format and pipeline integration.
|
|
412
|
+
|
|
413
|
+
---
|
|
414
|
+
|
|
415
|
+
## Component Generators
|
|
416
|
+
|
|
417
|
+
Component generators produce UI component code from natural-language descriptions, targeting your project's design system.
|
|
418
|
+
|
|
419
|
+
### 21st.dev Magic MCP
|
|
420
|
+
|
|
421
|
+
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.
|
|
422
|
+
|
|
423
|
+
**Setup:**
|
|
424
|
+
```bash
|
|
425
|
+
npx @21st-dev/magic@latest init
|
|
426
|
+
# Set TWENTY_FIRST_API_KEY environment variable
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
**Capabilities:**
|
|
430
|
+
- `explore` — prior-art gate: `21st_magic_component_search` before greenfield builds
|
|
431
|
+
- `design` — `design-component-generator` (21st.dev impl): search → generate → adopt
|
|
432
|
+
- `explore/design` — `svgl_get_brand_logo` for brand logo/icon SVGs
|
|
433
|
+
|
|
434
|
+
See [`connections/21st-dev.md`](connections/21st-dev.md) for setup and prior-art gate logic.
|
|
435
|
+
|
|
436
|
+
### Magic Patterns
|
|
437
|
+
|
|
438
|
+
DS-aware component generation via the Magic Patterns Claude connector (no manual setup when enabled) or API key fallback. Returns a `preview_url` for visual verification.
|
|
439
|
+
|
|
440
|
+
**Setup (Claude connector):** Enable Magic Patterns in your Claude environment — no additional steps.
|
|
441
|
+
|
|
442
|
+
**Setup (API key):**
|
|
443
|
+
```bash
|
|
444
|
+
claude mcp add magic-patterns --transport http https://mcp.magicpatterns.com/sse \
|
|
445
|
+
-e MAGIC_PATTERNS_API_KEY=$MAGIC_PATTERNS_API_KEY
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
**Capabilities:**
|
|
449
|
+
- `design` — `design-component-generator` (magic-patterns impl): generate → annotate → regenerate
|
|
450
|
+
- `verify` — `preview_url` from generation feeds `? VISUAL` check in Phase 8 Preview
|
|
451
|
+
|
|
452
|
+
See [`connections/magic-patterns.md`](connections/magic-patterns.md) for probe pattern and DS detection.
|
|
453
|
+
|
|
454
|
+
---
|
|
455
|
+
|
|
334
456
|
## Commands
|
|
335
457
|
|
|
336
458
|
All commands use the `/gdd:` namespace.
|
|
@@ -344,7 +466,7 @@ All commands use the `/gdd:` namespace.
|
|
|
344
466
|
| `/gdd:plan` | Stage 3 — research + decompose into atomic tasks + verify plan |
|
|
345
467
|
| `/gdd:design` | Stage 4 — execute tasks with fresh context per task |
|
|
346
468
|
| `/gdd:verify [--post-handoff]` | Stage 5 — verifier + auditor + integration checker + fixer |
|
|
347
|
-
| `/gdd:handoff <bundle>` | Skip
|
|
469
|
+
| `/gdd:handoff <bundle>` | Skip explore/plan, route direct to verify from Claude Design bundle |
|
|
348
470
|
| `/gdd:next` | Auto-detect pipeline state and run next step |
|
|
349
471
|
| `/gdd:map` | Parallel codebase mapping — 5 specialist mappers |
|
|
350
472
|
|
|
@@ -443,13 +565,15 @@ Full command reference with argument specs: [`SKILL.md`](SKILL.md).
|
|
|
443
565
|
|
|
444
566
|
All connections are optional — the pipeline degrades gracefully when any connection is unavailable.
|
|
445
567
|
|
|
446
|
-
### Figma MCP
|
|
568
|
+
### Figma MCP (reads + writes)
|
|
447
569
|
|
|
448
|
-
|
|
570
|
+
One remote MCP covers both reads and writes. When active, `explore` reads Figma variables and pre-populates design decisions from your file, and `design-figma-writer` writes decisions back via `use_figma` — annotates frames, tokenizes local styles, registers Code Connect mappings. Proposal → confirm discipline with `--dry-run` and `--confirm-shared` guards. Falls back to code-only analysis when the MCP is not configured. One install command unlocks both:
|
|
449
571
|
|
|
450
|
-
|
|
572
|
+
```
|
|
573
|
+
claude mcp add figma --transport http https://mcp.figma.com/v1/sse
|
|
574
|
+
```
|
|
451
575
|
|
|
452
|
-
`
|
|
576
|
+
Setup: [`connections/figma.md`](connections/figma.md). If you previously installed the local `figma-desktop` MCP, you can remove it — its read tools are now exposed on the remote server.
|
|
453
577
|
|
|
454
578
|
### Refero MCP
|
|
455
579
|
|
|
@@ -491,7 +615,31 @@ When Graphify CLI is available, `plan` and `design-integration-checker` consult
|
|
|
491
615
|
|
|
492
616
|
### Claude Design
|
|
493
617
|
|
|
494
|
-
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
|
|
618
|
+
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).
|
|
619
|
+
|
|
620
|
+
### paper.design
|
|
621
|
+
|
|
622
|
+
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).
|
|
623
|
+
|
|
624
|
+
```bash
|
|
625
|
+
claude mcp add paper-design --transport http https://mcp.paper.design/sse
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
### pencil.dev
|
|
629
|
+
|
|
630
|
+
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).
|
|
631
|
+
|
|
632
|
+
### 21st.dev Magic MCP
|
|
633
|
+
|
|
634
|
+
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).
|
|
635
|
+
|
|
636
|
+
```bash
|
|
637
|
+
npx @21st-dev/magic@latest init
|
|
638
|
+
```
|
|
639
|
+
|
|
640
|
+
### Magic Patterns
|
|
641
|
+
|
|
642
|
+
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).
|
|
495
643
|
|
|
496
644
|
---
|
|
497
645
|
|
|
@@ -581,16 +729,14 @@ Incremental updates fire automatically via the `gdd-intel-updater` agent after f
|
|
|
581
729
|
|
|
582
730
|
## Optimization Layer
|
|
583
731
|
|
|
584
|
-
Every `/gdd:*` command and agent spawn passes through a cross-cutting optimization layer
|
|
732
|
+
Every `/gdd:*` command and agent spawn passes through a cross-cutting optimization layer designed to reduce token cost without regressing on design quality.
|
|
585
733
|
|
|
586
|
-
- **`gdd-router` skill** — First-step intent router. Returns
|
|
587
|
-
- **`gdd-cache-manager` skill + `/gdd:warm-cache`** —
|
|
588
|
-
- **`budget-enforcer` PreToolUse hook** — Intercepts every `Agent` spawn. Hard-blocks on cap breach
|
|
589
|
-
- **Lazy checker gates**
|
|
590
|
-
- **Streaming synthesizer**
|
|
591
|
-
- **Cost telemetry** — `.design/telemetry/costs.jsonl`
|
|
592
|
-
|
|
593
|
-
Regression baseline: [`test-fixture/baselines/phase-10.1/`](test-fixture/baselines/phase-10.1/) — methodology README + `pre-baseline-cost-report.md` + `cost-report.md`. Phase 13 CI diffs against `cost-report.md` to catch regressions.
|
|
734
|
+
- **`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.
|
|
735
|
+
- **`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.
|
|
736
|
+
- **`budget-enforcer` PreToolUse hook** — Intercepts every `Agent` spawn. Hard-blocks on cap breach, auto-downgrades at the soft threshold, short-circuits on cache hit.
|
|
737
|
+
- **Lazy checker gates** — Cheap Haiku heuristic decides whether to spawn the expensive full checker for each verification stage.
|
|
738
|
+
- **Streaming synthesizer** — Parallel-mapper outputs collapse through a single Haiku call before returning to main context, keeping the orchestrator cache-aligned.
|
|
739
|
+
- **Cost telemetry** — `.design/telemetry/costs.jsonl` records every spawn decision. Aggregated to `.design/agent-metrics.json` and consumed by `/gdd:optimize` and `design-reflector`.
|
|
594
740
|
|
|
595
741
|
---
|
|
596
742
|
|
|
@@ -612,43 +758,30 @@ Zero third-party test dependencies — the runner is Node's built-in `node:test`
|
|
|
612
758
|
lint → validate → test (matrix) → security + size-budget
|
|
613
759
|
```
|
|
614
760
|
|
|
615
|
-
- **Lint** —
|
|
616
|
-
- **Validate** — JSON schema validation
|
|
761
|
+
- **Lint** — markdownlint + blocking link checker
|
|
762
|
+
- **Validate** — JSON schema validation, agent frontmatter validator, stale-ref detector, `claude plugin validate .`
|
|
617
763
|
- **Test** — Node 22/24 × Linux/macOS/Windows, fail-fast disabled
|
|
618
|
-
- **Security** —
|
|
619
|
-
- **Size-budget** — Blocking tier enforcement (XXL: 700, XL: 500, Large: 300, Default: 200 lines)
|
|
620
|
-
|
|
621
|
-
### What's covered
|
|
622
|
-
|
|
623
|
-
- **Agent hygiene** — frontmatter completeness, line-count tier budgets, required-reading path validity, `/gdd:` namespace consistency
|
|
624
|
-
- **System contracts** — config schema, command↔skill parity, hooks integrity, atomic writes to `.design/STATE.md`, frontmatter parser edge cases, model-profile resolution, `/gdd:health` output shape, worktree safety, semver bump sequence, STATE-TEMPLATE drift
|
|
625
|
-
- **Pipeline + data** — end-to-end smoke on `test-fixture/`, mapper JSON-schema validation (tokens, components, a11y, motion, hierarchy), parallelism-engine decision table, `Touches:` field parsing, cycle lifecycle, `.design/intel/` incremental-update correctness, regression-baseline drift detector
|
|
626
|
-
- **Feature correctness** — `/gdd:sketch` variant determinism, 9-connection probe contracts with mocked MCPs, `design-figma-writer` dry-run discipline, `design-reflector` proposal-only shape, deprecated-name redirects, NNG heuristic coverage, injection-scanner hook behavior, optimization-layer schema enforcement
|
|
764
|
+
- **Security** — shellcheck on `scripts/`, secrets scan, injection scanner over all shipped skills/agents
|
|
765
|
+
- **Size-budget** — Blocking tier enforcement (XXL: 700, XL: 500, Large: 300, Default: 200 lines)
|
|
627
766
|
|
|
628
767
|
### Release automation
|
|
629
768
|
|
|
630
|
-
`.github/workflows/release.yml` auto-tags and publishes a GitHub Release when `.claude-plugin/plugin.json` version changes. Release body is extracted from the matching `CHANGELOG.md` section.
|
|
769
|
+
`.github/workflows/release.yml` auto-tags and publishes a GitHub Release when `.claude-plugin/plugin.json` version changes. Release body is extracted from the matching `CHANGELOG.md` section.
|
|
631
770
|
|
|
632
|
-
|
|
771
|
+
Every PR must pass `npm test` before merging to `main`. See [`CONTRIBUTING.md`](CONTRIBUTING.md) for the re-lock procedure when baselines change.
|
|
633
772
|
|
|
634
773
|
---
|
|
635
774
|
|
|
636
|
-
##
|
|
775
|
+
## What ships with the plugin
|
|
637
776
|
|
|
638
|
-
**Ships with the plugin:**
|
|
639
777
|
- `.claude-plugin/plugin.json`, `.claude-plugin/marketplace.json` — manifest
|
|
640
778
|
- `SKILL.md` — root pipeline router
|
|
641
779
|
- `skills/` — 55 stage + standalone skills
|
|
642
|
-
- `agents/` —
|
|
643
|
-
- `connections/` —
|
|
780
|
+
- `agents/` — 33 specialized agent specs
|
|
781
|
+
- `connections/` — 12 connection specs
|
|
644
782
|
- `reference/` — curated design reference (shared preamble, model tiers, model prices, schemas, DEPRECATIONS, config schema)
|
|
645
783
|
- `hooks/`, `scripts/bootstrap.sh`
|
|
646
784
|
|
|
647
|
-
**Dev-only (gitignored, not distributed):**
|
|
648
|
-
- `.planning/` — GSD planning artifacts for GDD's own development
|
|
649
|
-
- `.claude/memory/` — session-level memory
|
|
650
|
-
- `.claude/settings.local.json`
|
|
651
|
-
|
|
652
785
|
---
|
|
653
786
|
|
|
654
787
|
## Develop locally
|
package/SKILL.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: get-design-done
|
|
3
3
|
short_name: gdd
|
|
4
4
|
description: "Master design pipeline for Claude Code. 5-stage workflow: Brief → Explore → Plan → Design → Verify. Run 'brief' first in any new project to capture the design problem, then 'explore' to inventory the codebase and interview for context. Invoke without arguments for status and auto-routing."
|
|
5
|
-
argument-hint: "[brief|explore|plan|design|verify|handoff|map|next|help|status|style|darkmode|compare|figma-write|graphify|discuss|list-assumptions|progress|health|todo|stats|note|plant-seed|add-backlog|review-backlog|scan|discover|settings|update|reapply-patches|audit|pause|resume|new-cycle|debug|quick|new-project|complete-cycle|fast|do|ship|undo|pr-branch|sketch|sketch-wrap-up|spike|spike-wrap-up|reflect|apply-reflections|analyze-dependencies|extract-learnings|skill-manifest|warm-cache|optimize|cache-manager]"
|
|
5
|
+
argument-hint: "[brief|explore|plan|design|verify|handoff|map|next|help|status|style|darkmode|compare|figma-write|graphify|discuss|list-assumptions|progress|health|todo|stats|note|plant-seed|add-backlog|review-backlog|scan|discover|settings|update|reapply-patches|audit|pause|resume|new-cycle|debug|quick|new-project|complete-cycle|fast|do|ship|undo|pr-branch|sketch|sketch-wrap-up|spike|spike-wrap-up|reflect|apply-reflections|analyze-dependencies|extract-learnings|skill-manifest|warm-cache|optimize|cache-manager|watch-authorities|check-update]"
|
|
6
6
|
user-invocable: true
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -83,6 +83,7 @@ Each stage produces artifacts in `.design/` inside the current project.
|
|
|
83
83
|
| `analyze-dependencies [--slice <name>]` | `get-design-done:analyze-dependencies` | Query the `.design/intel/` store — dependency slices, graph queries, phase-scoped reads |
|
|
84
84
|
| `extract-learnings [--cycle <slug>]` | `get-design-done:extract-learnings` | Extract decisions, lessons, patterns, and surprises from a completed cycle → `.design/cycles/<slug>/LEARNINGS.md` |
|
|
85
85
|
| `skill-manifest [--refresh]` | `get-design-done:skill-manifest` | List or refresh the local skill manifest used by the router for discovery |
|
|
86
|
+
| `watch-authorities [--refresh] [--since <date>] [--feed <name>] [--schedule <cadence>]` | `get-design-done:gdd-watch-authorities` | Run design-authority-watcher — fetch curated feeds, diff snapshot, classify new entries → `.design/authority-report.md` (consumed by `/gdd:reflect`) |
|
|
86
87
|
|
|
87
88
|
## Handoff Routing
|
|
88
89
|
|
|
@@ -125,9 +126,9 @@ Each stage produces artifacts in `.design/` inside the current project.
|
|
|
125
126
|
|
|
126
127
|
6. **Optional: Bidirectional write-back** (post-verify, offered to user)
|
|
127
128
|
After verify completes without FAIL-level gaps:
|
|
128
|
-
- Check STATE.md `<connections>` for `
|
|
129
|
-
- `
|
|
130
|
-
- `
|
|
129
|
+
- Check STATE.md `<connections>` for `figma:` (the unified remote MCP covers both reads and writes as of v1.0.7.1)
|
|
130
|
+
- `figma: not_configured` or `figma: unavailable` → skip (no offer)
|
|
131
|
+
- `figma: available` → offer: "Write implementation status back to Figma? (annotates frames + Code Connect mappings)"
|
|
131
132
|
Options: [yes, write back] [dry-run, show proposal only] [skip]
|
|
132
133
|
- If yes or dry-run: spawn `agents/design-figma-writer.md` with `mode: implementation-status`, `dry_run: <true|false>`
|
|
133
134
|
|
|
@@ -200,6 +201,7 @@ If `$ARGUMENTS` is a stage or command name — invoke it directly, no state chec
|
|
|
200
201
|
/gdd:audit → Skill("get-design-done:gdd-audit")
|
|
201
202
|
/gdd:reflect → Skill("get-design-done:gdd-reflect")
|
|
202
203
|
/gdd:apply-reflections → Skill("get-design-done:gdd-apply-reflections")
|
|
204
|
+
/gdd:watch-authorities → Skill("get-design-done:gdd-watch-authorities")
|
|
203
205
|
/gdd:pause → Skill("get-design-done:gdd-pause")
|
|
204
206
|
/gdd:resume → Skill("get-design-done:gdd-resume")
|
|
205
207
|
# --- Lifecycle ---
|