@hegemonart/get-design-done 1.57.1 → 1.57.3

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.
Files changed (237) hide show
  1. package/.claude-plugin/marketplace.json +26 -41
  2. package/.claude-plugin/plugin.json +23 -48
  3. package/CHANGELOG.md +139 -0
  4. package/README.md +166 -511
  5. package/SKILL.md +4 -6
  6. package/agents/README.md +33 -36
  7. package/agents/a11y-mapper.md +3 -3
  8. package/agents/component-benchmark-harvester.md +6 -6
  9. package/agents/component-benchmark-synthesizer.md +3 -3
  10. package/agents/compose-executor.md +3 -3
  11. package/agents/cost-forecaster.md +2 -2
  12. package/agents/design-auditor.md +7 -7
  13. package/agents/design-authority-watcher.md +15 -15
  14. package/agents/design-context-builder.md +4 -4
  15. package/agents/design-context-checker-gate.md +1 -1
  16. package/agents/design-discussant.md +2 -2
  17. package/agents/design-doc-writer.md +1 -1
  18. package/agents/design-executor.md +2 -2
  19. package/agents/design-figma-writer.md +2 -2
  20. package/agents/design-fixer.md +7 -7
  21. package/agents/design-integration-checker-gate.md +1 -1
  22. package/agents/design-integration-checker.md +1 -1
  23. package/agents/design-paper-writer.md +3 -3
  24. package/agents/design-pencil-writer.md +1 -1
  25. package/agents/design-planner.md +21 -0
  26. package/agents/design-reflector.md +39 -39
  27. package/agents/design-research-synthesizer.md +1 -0
  28. package/agents/design-start-writer.md +1 -1
  29. package/agents/design-update-checker.md +5 -5
  30. package/agents/design-verifier-gate.md +1 -1
  31. package/agents/design-verifier.md +52 -48
  32. package/agents/ds-generator.md +2 -2
  33. package/agents/ds-migration-planner.md +4 -4
  34. package/agents/email-executor.md +9 -9
  35. package/agents/experiment-result-ingester.md +3 -3
  36. package/agents/flutter-executor.md +5 -5
  37. package/agents/gdd-graph-refresh.md +3 -3
  38. package/agents/gdd-intel-updater.md +2 -2
  39. package/agents/motion-mapper.md +2 -2
  40. package/agents/motion-verifier.md +4 -4
  41. package/agents/pdf-executor.md +8 -8
  42. package/agents/perf-analyzer.md +17 -17
  43. package/agents/pr-commenter.md +9 -9
  44. package/agents/prototype-gate.md +2 -2
  45. package/agents/quality-gate-runner.md +1 -1
  46. package/agents/rollout-coordinator.md +3 -3
  47. package/agents/swift-executor.md +4 -4
  48. package/agents/ticket-sync-agent.md +6 -6
  49. package/agents/user-research-synthesizer.md +2 -2
  50. package/connections/connections.md +44 -45
  51. package/connections/cursor.md +72 -0
  52. package/connections/preview.md +3 -3
  53. package/hooks/first-run-nudge.cjs +171 -0
  54. package/hooks/gdd-intel-trigger.js +243 -0
  55. package/hooks/gdd-mcp-circuit-breaker.js +62 -7
  56. package/hooks/gdd-precompact-snapshot.js +50 -29
  57. package/hooks/gdd-protected-paths.js +150 -18
  58. package/hooks/gdd-risk-gate.js +93 -1
  59. package/hooks/gdd-sessionstart-recap.js +59 -24
  60. package/hooks/hooks.json +13 -4
  61. package/hooks/inject-using-gdd.cjs +188 -0
  62. package/hooks/update-check.cjs +511 -0
  63. package/package.json +9 -3
  64. package/reference/STATE-TEMPLATE.md +10 -13
  65. package/reference/audit-scoring.md +1 -1
  66. package/reference/cache-tier-doctrine.md +46 -0
  67. package/reference/config-schema.md +9 -9
  68. package/reference/i18n.md +1 -1
  69. package/reference/intel-schema.md +37 -2
  70. package/reference/meta-rules.md +4 -4
  71. package/reference/model-tiers.md +2 -2
  72. package/reference/registry.json +101 -94
  73. package/reference/runtime-models.md +11 -1
  74. package/reference/shared-preamble.md +13 -14
  75. package/reference/skill-graph.md +22 -3
  76. package/scripts/bootstrap.cjs +373 -0
  77. package/scripts/injection-patterns.cjs +58 -0
  78. package/scripts/lib/apply-reflections/incubator-proposals.cjs +57 -26
  79. package/scripts/lib/install/converters/codex-plugin.cjs +5 -2
  80. package/scripts/lib/install/converters/cursor.cjs +20 -0
  81. package/scripts/lib/issue-reporter/report-flow.cjs +1 -1
  82. package/scripts/lib/manifest/skills.json +75 -28
  83. package/scripts/lib/state/query-surface.cjs +67 -9
  84. package/scripts/lib/state/state-store.cjs +68 -26
  85. package/scripts/lib/worktree-resolve.cjs +4 -16
  86. package/sdk/cli/commands/stage.ts +17 -0
  87. package/sdk/cli/index.js +14 -0
  88. package/skills/README.md +46 -0
  89. package/skills/bootstrap-ds/SKILL.md +1 -1
  90. package/skills/cache-manager/SKILL.md +3 -3
  91. package/skills/cache-manager/cache-policy.md +1 -1
  92. package/skills/compare/SKILL.md +1 -1
  93. package/skills/design/SKILL.md +19 -0
  94. package/skills/explore/SKILL.md +11 -0
  95. package/skills/figma-write/SKILL.md +13 -2
  96. package/skills/new-cycle/SKILL.md +1 -1
  97. package/skills/paper-write/SKILL.md +54 -0
  98. package/skills/peer-cli-customize/SKILL.md +0 -1
  99. package/skills/peers/SKILL.md +1 -1
  100. package/skills/pencil-write/SKILL.md +54 -0
  101. package/skills/reflect/procedures/capability-gap-scan.md +0 -1
  102. package/skills/report-issue/SKILL.md +2 -2
  103. package/skills/report-issue/report-issue-procedure.md +0 -1
  104. package/skills/router/SKILL.md +2 -2
  105. package/skills/synthesize/SKILL.md +1 -1
  106. package/skills/turn-closeout/SKILL.md +1 -1
  107. package/skills/verify/verify-procedure.md +10 -11
  108. package/skills/warm-cache/SKILL.md +1 -1
  109. package/dist/claude-code/.claude/skills/add-backlog/SKILL.md +0 -48
  110. package/dist/claude-code/.claude/skills/analyze-dependencies/SKILL.md +0 -95
  111. package/dist/claude-code/.claude/skills/apply-reflections/SKILL.md +0 -109
  112. package/dist/claude-code/.claude/skills/apply-reflections/apply-reflections-procedure.md +0 -170
  113. package/dist/claude-code/.claude/skills/audit/SKILL.md +0 -79
  114. package/dist/claude-code/.claude/skills/bandit-status/SKILL.md +0 -94
  115. package/dist/claude-code/.claude/skills/benchmark/SKILL.md +0 -65
  116. package/dist/claude-code/.claude/skills/bootstrap-ds/SKILL.md +0 -43
  117. package/dist/claude-code/.claude/skills/brief/SKILL.md +0 -145
  118. package/dist/claude-code/.claude/skills/budget/SKILL.md +0 -45
  119. package/dist/claude-code/.claude/skills/cache-manager/SKILL.md +0 -66
  120. package/dist/claude-code/.claude/skills/cache-manager/cache-policy.md +0 -126
  121. package/dist/claude-code/.claude/skills/check-update/SKILL.md +0 -98
  122. package/dist/claude-code/.claude/skills/compare/SKILL.md +0 -82
  123. package/dist/claude-code/.claude/skills/compare/compare-rubric.md +0 -171
  124. package/dist/claude-code/.claude/skills/complete-cycle/SKILL.md +0 -81
  125. package/dist/claude-code/.claude/skills/connections/SKILL.md +0 -71
  126. package/dist/claude-code/.claude/skills/connections/connections-onboarding.md +0 -608
  127. package/dist/claude-code/.claude/skills/context/SKILL.md +0 -137
  128. package/dist/claude-code/.claude/skills/continue/SKILL.md +0 -24
  129. package/dist/claude-code/.claude/skills/darkmode/SKILL.md +0 -76
  130. package/dist/claude-code/.claude/skills/darkmode/darkmode-audit-procedure.md +0 -258
  131. package/dist/claude-code/.claude/skills/debug/SKILL.md +0 -41
  132. package/dist/claude-code/.claude/skills/debug/debug-feedback-loops.md +0 -119
  133. package/dist/claude-code/.claude/skills/design/SKILL.md +0 -99
  134. package/dist/claude-code/.claude/skills/design/design-procedure.md +0 -304
  135. package/dist/claude-code/.claude/skills/discover/SKILL.md +0 -78
  136. package/dist/claude-code/.claude/skills/discover/discover-procedure.md +0 -222
  137. package/dist/claude-code/.claude/skills/discuss/SKILL.md +0 -96
  138. package/dist/claude-code/.claude/skills/do/SKILL.md +0 -45
  139. package/dist/claude-code/.claude/skills/explore/SKILL.md +0 -107
  140. package/dist/claude-code/.claude/skills/explore/explore-procedure.md +0 -267
  141. package/dist/claude-code/.claude/skills/export/SKILL.md +0 -30
  142. package/dist/claude-code/.claude/skills/extract-learnings/SKILL.md +0 -114
  143. package/dist/claude-code/.claude/skills/fast/SKILL.md +0 -91
  144. package/dist/claude-code/.claude/skills/figma-extract/SKILL.md +0 -64
  145. package/dist/claude-code/.claude/skills/figma-write/SKILL.md +0 -39
  146. package/dist/claude-code/.claude/skills/graphify/SKILL.md +0 -49
  147. package/dist/claude-code/.claude/skills/health/SKILL.md +0 -99
  148. package/dist/claude-code/.claude/skills/health/health-mcp-detection.md +0 -44
  149. package/dist/claude-code/.claude/skills/health/health-skill-length-report.md +0 -69
  150. package/dist/claude-code/.claude/skills/help/SKILL.md +0 -87
  151. package/dist/claude-code/.claude/skills/instinct/SKILL.md +0 -111
  152. package/dist/claude-code/.claude/skills/list-assumptions/SKILL.md +0 -61
  153. package/dist/claude-code/.claude/skills/list-pins/SKILL.md +0 -27
  154. package/dist/claude-code/.claude/skills/live/SKILL.md +0 -98
  155. package/dist/claude-code/.claude/skills/locale/SKILL.md +0 -51
  156. package/dist/claude-code/.claude/skills/map/SKILL.md +0 -89
  157. package/dist/claude-code/.claude/skills/migrate/SKILL.md +0 -70
  158. package/dist/claude-code/.claude/skills/migrate-context/SKILL.md +0 -123
  159. package/dist/claude-code/.claude/skills/new-addendum/SKILL.md +0 -81
  160. package/dist/claude-code/.claude/skills/new-cycle/SKILL.md +0 -37
  161. package/dist/claude-code/.claude/skills/new-cycle/milestone-completeness-rubric.md +0 -87
  162. package/dist/claude-code/.claude/skills/new-project/SKILL.md +0 -53
  163. package/dist/claude-code/.claude/skills/new-skill/SKILL.md +0 -90
  164. package/dist/claude-code/.claude/skills/next/SKILL.md +0 -68
  165. package/dist/claude-code/.claude/skills/note/SKILL.md +0 -48
  166. package/dist/claude-code/.claude/skills/openrouter-status/SKILL.md +0 -86
  167. package/dist/claude-code/.claude/skills/optimize/SKILL.md +0 -97
  168. package/dist/claude-code/.claude/skills/override/SKILL.md +0 -86
  169. package/dist/claude-code/.claude/skills/pause/SKILL.md +0 -77
  170. package/dist/claude-code/.claude/skills/peer-cli-add/SKILL.md +0 -88
  171. package/dist/claude-code/.claude/skills/peer-cli-add/peer-cli-protocol.md +0 -161
  172. package/dist/claude-code/.claude/skills/peer-cli-customize/SKILL.md +0 -90
  173. package/dist/claude-code/.claude/skills/peers/SKILL.md +0 -96
  174. package/dist/claude-code/.claude/skills/pin/SKILL.md +0 -37
  175. package/dist/claude-code/.claude/skills/plan/SKILL.md +0 -105
  176. package/dist/claude-code/.claude/skills/plan/plan-procedure.md +0 -278
  177. package/dist/claude-code/.claude/skills/plant-seed/SKILL.md +0 -48
  178. package/dist/claude-code/.claude/skills/pr-branch/SKILL.md +0 -32
  179. package/dist/claude-code/.claude/skills/progress/SKILL.md +0 -107
  180. package/dist/claude-code/.claude/skills/quality-gate/SKILL.md +0 -90
  181. package/dist/claude-code/.claude/skills/quality-gate/threat-modeling.md +0 -101
  182. package/dist/claude-code/.claude/skills/quick/SKILL.md +0 -44
  183. package/dist/claude-code/.claude/skills/reapply-patches/SKILL.md +0 -32
  184. package/dist/claude-code/.claude/skills/recall/SKILL.md +0 -75
  185. package/dist/claude-code/.claude/skills/reflect/SKILL.md +0 -85
  186. package/dist/claude-code/.claude/skills/reflect/procedures/capability-gap-scan.md +0 -120
  187. package/dist/claude-code/.claude/skills/report-issue/SKILL.md +0 -53
  188. package/dist/claude-code/.claude/skills/report-issue/report-issue-procedure.md +0 -120
  189. package/dist/claude-code/.claude/skills/resume/SKILL.md +0 -93
  190. package/dist/claude-code/.claude/skills/review-backlog/SKILL.md +0 -46
  191. package/dist/claude-code/.claude/skills/review-decisions/SKILL.md +0 -42
  192. package/dist/claude-code/.claude/skills/roi/SKILL.md +0 -54
  193. package/dist/claude-code/.claude/skills/rollout-status/SKILL.md +0 -35
  194. package/dist/claude-code/.claude/skills/router/SKILL.md +0 -89
  195. package/dist/claude-code/.claude/skills/router/capability-gap-emitter.md +0 -65
  196. package/dist/claude-code/.claude/skills/router/router-pick-emitter.md +0 -78
  197. package/dist/claude-code/.claude/skills/router/router-rules.md +0 -84
  198. package/dist/claude-code/.claude/skills/scan/SKILL.md +0 -92
  199. package/dist/claude-code/.claude/skills/scan/scan-procedure.md +0 -732
  200. package/dist/claude-code/.claude/skills/settings/SKILL.md +0 -87
  201. package/dist/claude-code/.claude/skills/ship/SKILL.md +0 -48
  202. package/dist/claude-code/.claude/skills/sketch/SKILL.md +0 -78
  203. package/dist/claude-code/.claude/skills/sketch-wrap-up/SKILL.md +0 -92
  204. package/dist/claude-code/.claude/skills/skill-manifest/SKILL.md +0 -79
  205. package/dist/claude-code/.claude/skills/spike/SKILL.md +0 -67
  206. package/dist/claude-code/.claude/skills/spike-wrap-up/SKILL.md +0 -86
  207. package/dist/claude-code/.claude/skills/start/SKILL.md +0 -67
  208. package/dist/claude-code/.claude/skills/start/start-procedure.md +0 -115
  209. package/dist/claude-code/.claude/skills/state/SKILL.md +0 -106
  210. package/dist/claude-code/.claude/skills/stats/SKILL.md +0 -51
  211. package/dist/claude-code/.claude/skills/style/SKILL.md +0 -71
  212. package/dist/claude-code/.claude/skills/style/style-doc-procedure.md +0 -150
  213. package/dist/claude-code/.claude/skills/synthesize/SKILL.md +0 -94
  214. package/dist/claude-code/.claude/skills/timeline/SKILL.md +0 -66
  215. package/dist/claude-code/.claude/skills/todo/SKILL.md +0 -64
  216. package/dist/claude-code/.claude/skills/turn-closeout/SKILL.md +0 -95
  217. package/dist/claude-code/.claude/skills/undo/SKILL.md +0 -31
  218. package/dist/claude-code/.claude/skills/unlock-decision/SKILL.md +0 -54
  219. package/dist/claude-code/.claude/skills/unpin/SKILL.md +0 -31
  220. package/dist/claude-code/.claude/skills/update/SKILL.md +0 -56
  221. package/dist/claude-code/.claude/skills/using-gdd/SKILL.md +0 -78
  222. package/dist/claude-code/.claude/skills/verify/SKILL.md +0 -113
  223. package/dist/claude-code/.claude/skills/verify/verify-procedure.md +0 -512
  224. package/dist/claude-code/.claude/skills/warm-cache/SKILL.md +0 -81
  225. package/dist/claude-code/.claude/skills/watch-authorities/SKILL.md +0 -82
  226. package/dist/claude-code/.claude/skills/zoom-out/SKILL.md +0 -26
  227. package/hooks/first-run-nudge.sh +0 -82
  228. package/hooks/inject-using-gdd.sh +0 -72
  229. package/hooks/run-hook.cmd +0 -35
  230. package/hooks/update-check.sh +0 -251
  231. package/scripts/lib/audit-aggregator/index.cjs +0 -219
  232. package/scripts/lib/hedge-ensemble.cjs +0 -217
  233. package/skills/discover/SKILL.md +0 -78
  234. package/skills/discover/discover-procedure.md +0 -222
  235. package/skills/new-cycle/milestone-completeness-rubric.md +0 -87
  236. package/skills/scan/SKILL.md +0 -92
  237. package/skills/scan/scan-procedure.md +0 -732
@@ -1,222 +0,0 @@
1
- ---
2
- name: discover-procedure
3
- type: meta-rules
4
- version: 1.0.0
5
- phase: 28.5
6
- tags: [discover, procedure, extracted, pipeline-stage, connection-probe, design-context-builder]
7
- last_updated: 2026-05-18
8
- ---
9
-
10
- Source: extracted from `skills/discover/SKILL.md` (Phase 28.5 rework - D-10 extract-then-link).
11
- The skill's essential workflow stays in `../skills/discover/SKILL.md`; this file holds the
12
- detail the agent reaches for when executing a specific step (state integration, three
13
- connection probes, design-context-builder + design-context-checker agent prompts, lazy gate
14
- prompt, auto-mode CSS detection).
15
-
16
- # Discover Procedure
17
-
18
- Detailed procedure for the get-design-done `discover` Stage 1.5 orchestrator. Companion to
19
- `../skills/discover/SKILL.md`. Read this file when executing a specific discover step.
20
-
21
- ---
22
-
23
- ## State Integration
24
-
25
- 1. Read `.design/STATE.md`.
26
- - If missing: create minimal skeleton from `reference/STATE-TEMPLATE.md` with stage=discover, status=in_progress, task_progress=0/1, and log warning: "STATE.md not found - created fresh. If this is a resumed session, run /get-design-done:scan first."
27
- - If present and stage==discover and status==in_progress: RESUME - continue existing interview; do not reset.
28
- - Otherwise: normal transition - set frontmatter stage=discover, <position> stage=discover, status=in_progress, task_progress=0/1.
29
- 2. **Probe connection availability** - ToolSearch runs FIRST because MCP tools may be in the deferred tool set. This is the canonical probe pattern (spec lives in `connections/connections.md`; copied inline because SKILL.md has no include mechanism - if the probe pattern changes, update all stages that copied it). See §Connection Probes below.
30
- 3. Update last_checkpoint. Write STATE.md.
31
-
32
- ---
33
-
34
- ## Connection Probes
35
-
36
- ### A - Figma probe (variant-agnostic)
37
-
38
- ```
39
- A1. ToolSearch({ query: "figma get_metadata use_figma", max_results: 10 })
40
- A2. Parse tool names matching /^mcp__([^_]*figma[^_]*)__(get_metadata|use_figma)$/i
41
- into read-capable and write-capable prefix sets.
42
- A3. Empty read set -> figma: not_configured (skip all Figma paths)
43
- One or more matches -> pick prefix via tiebreaker:
44
- (1) both-sets > reads-only,
45
- (2) `figma` > others,
46
- (3) non-`figma-desktop` > desktop,
47
- (4) alphabetical.
48
- A4. Call {prefix}get_metadata:
49
- Success -> figma: available (prefix=mcp__<prefix>__, writes=<true|false>)
50
- Error -> figma: unavailable
51
- ```
52
-
53
- ### B - Refero probe (ToolSearch presence is sufficient - no tool call needed)
54
-
55
- ```
56
- B1. ToolSearch({ query: "refero", max_results: 5 })
57
- B2. Empty result -> refero: not_configured
58
- Non-empty -> refero: available
59
- ```
60
-
61
- ### C - Pinterest probe (ToolSearch-only, same pattern as Refero)
62
-
63
- ```
64
- C1. ToolSearch({ query: "mcp-pinterest", max_results: 5 })
65
- C2. Empty result -> pinterest: not_configured
66
- Non-empty -> pinterest: available
67
- ```
68
-
69
- No live `pinterest_search` call at probe time - ToolSearch presence is sufficient. The synthesizer makes the actual search calls.
70
-
71
- ### D - Lazyweb probe (ToolSearch-only - free, discover Tier 1 per D-01)
72
-
73
- ```
74
- D1. ToolSearch({ query: "lazyweb", max_results: 5 })
75
- D2. Empty result -> lazyweb: not_configured
76
- Non-empty -> lazyweb: available
77
- ```
78
-
79
- ### E - Mobbin probe (ToolSearch-only - paid, discover Tier 2 per D-01)
80
-
81
- ```
82
- E1. ToolSearch({ query: "mobbin", max_results: 5 })
83
- E2. Empty result -> mobbin: not_configured
84
- Non-empty -> mobbin: available
85
- ```
86
-
87
- **Reference-source tier order (cost-aware, D-01):** Lazyweb (free, tried first) → Mobbin / Refero (paid, whichever is bound + subscribed) → Pinterest → awesome-design-md → WebFetch.
88
-
89
- After all probes (A, B, C, D, E), update `.design/STATE.md` `<connections>` with the results and continue. Downstream stages (design-context-builder) read `<connections>` from STATE.md rather than re-probing.
90
-
91
- ---
92
-
93
- ## Auto Mode
94
-
95
- Auto Mode CSS detection (when `auto_mode: true` is passed to the builder):
96
-
97
- 1. If tailwind.config.{js,cjs,mjs,ts} exists -> Tailwind-only project
98
- - Skip CSS file grep
99
- - Parse tailwind.config for color palette, spacing scale, font families
100
- - Use tailwind.config values as the baseline style signal
101
- 2. Else -> fall through to existing CSS file grep logic
102
-
103
- ---
104
-
105
- ## Step 1 - Spawn design-context-builder
106
-
107
- ```
108
- Task("design-context-builder", """
109
- <required_reading>
110
- @.design/STATE.md
111
- @reference/audit-scoring.md
112
- @reference/anti-patterns.md
113
- </required_reading>
114
-
115
- You are the design-context-builder agent. Auto-detect existing design system
116
- state via grep/glob before asking questions. Interview the user ONLY for areas
117
- where auto-detect returned no confident answer. Write .design/DESIGN-CONTEXT.md.
118
-
119
- Baseline audit directory detection (ordered fallback chain):
120
- 1. If src/ exists -> use src/
121
- 2. Elif app/ exists -> use app/ (Next.js App Router)
122
- 3. Elif pages/ exists -> use pages/ (Next.js Pages Router)
123
- 4. Elif lib/ exists -> use lib/ (library-only projects)
124
- 5. Else -> flag "layout unknown", skip baseline, note in DESIGN-CONTEXT.md
125
-
126
- Common gray areas to probe during discovery (Area 7):
127
- 1. font-change risk — switching type families when existing UI has body copy in a specific family. Ask: "Is the current body font intentional or inherited? OK to change?"
128
- 2. token-layer introduction risk — adding CSS custom properties to a codebase that uses direct values. Ask: "Do you want design tokens (--primary, --surface) or inline values (hex, rgb)?"
129
- 3. Component rebuild vs restyle — when to keep existing component, when to rebuild from scratch. Ask: "For <component>, restyle in place or rebuild?"
130
-
131
- Context:
132
- auto_mode: <true|false>
133
-
134
- Output file: .design/DESIGN-CONTEXT.md
135
- Emit `## CONTEXT COMPLETE` when done.
136
- """)
137
- ```
138
-
139
- Wait for `## CONTEXT COMPLETE`. Update STATE.md task_progress = 0.5.
140
-
141
- ---
142
-
143
- ## Step 1.75 - Lazy gate: should design-context-checker run? (Plan 10.1-04, D-21)
144
-
145
- Spawn the cheap Haiku gate before the full context-checker:
146
-
147
- Task("design-context-checker-gate", """
148
- <required_reading>
149
- @.design/STATE.md
150
- </required_reading>
151
-
152
- You are the design-context-checker-gate.
153
-
154
- Context:
155
- diff_files: <git diff `--name-only` HEAD~1..HEAD>
156
- diff_body: (not needed - single-file heuristic)
157
- baseline_sha: <HEAD~1>
158
-
159
- Apply the heuristic (DESIGN-CONTEXT.md in diff_files?). Emit JSON + `## GATE COMPLETE`.
160
- """)
161
-
162
- Wait for `## GATE COMPLETE`. Parse JSON:
163
-
164
- - `spawn: false` -> append `lazy_skipped: true` telemetry row for `design-context-checker`, skip Step 2, set STATE.md `<position>` as if checker passed (rationale: DESIGN-CONTEXT.md didn't change, last validation still holds), emit `design-context-checker skipped — <rationale>`.
165
- - `spawn: true` -> proceed to Step 2 as currently written.
166
-
167
- **Note:** On first-run discover, the builder just wrote DESIGN-CONTEXT.md so the gate returns `spawn: true`. The gate meaningfully short-circuits only on re-runs where the builder made no changes.
168
-
169
- **Parallel synthesizer note:** discover does not spawn parallel researchers in v1, so `skills/synthesize/` is not wired here. If future variants spawn N parallel interviewers/auto-detectors, wire synthesize between dispatch and collate as in `skills/map/` Step 3.5.
170
-
171
- ---
172
-
173
- ## Step 2 - Spawn design-context-checker
174
-
175
- ```
176
- Task("design-context-checker", """
177
- <required_reading>
178
- @.design/STATE.md
179
- @.design/DESIGN-CONTEXT.md
180
- </required_reading>
181
-
182
- You are the design-context-checker agent. Validate DESIGN-CONTEXT.md across
183
- 6 dimensions. Return APPROVED or BLOCKED with per-dimension verdicts.
184
-
185
- Emit `## CONTEXT CHECK COMPLETE` when done.
186
- """)
187
- ```
188
-
189
- Wait for `## CONTEXT CHECK COMPLETE`.
190
-
191
- ---
192
-
193
- ## Step 3 - Handle checker verdict
194
-
195
- If APPROVED: proceed to state update.
196
- If BLOCKED: present dimensions that BLOCKED to user, offer fix-and-retry loop (re-spawn builder with specific fix instructions). Do not proceed to planning.
197
-
198
- ---
199
-
200
- ## State Update (exit)
201
-
202
- 1. Set <position> status=completed, task_progress=1/1.
203
- 2. Set <timestamps> discover_completed_at=<ISO 8601 now>.
204
- 3. Update last_checkpoint. Write STATE.md.
205
-
206
- ---
207
-
208
- ## After Writing
209
-
210
- ```
211
- === Discovery complete ===
212
- Saved: .design/DESIGN-CONTEXT.md
213
-
214
- Baseline score: [N]/100 ([grade])
215
- Key issues: [top issue 1], [top issue 2], [top issue 3]
216
-
217
- Next: /get-design-done:plan
218
- -> Decomposes your context into executable design tasks.
219
- ==========================
220
- ```
221
-
222
- Do not proceed to planning automatically unless `--auto` was passed.
@@ -1,87 +0,0 @@
1
- ---
2
- name: milestone-completeness-rubric
3
- type: heuristic
4
- version: 1.0.0
5
- phase: 28.5
6
- tags: [milestone, closeout, rubric, completion, turn-closeout, new-cycle, complete-cycle]
7
- last_updated: 2026-05-18
8
- ---
9
-
10
- # Milestone Completeness Rubric
11
-
12
- What "complete" means at each layer of the gdd lifecycle. Used by `skills/turn-closeout/`,
13
- `skills/new-cycle/`, `skills/complete-cycle/`, the phase closeout discipline (Plan -12 of
14
- every phase), and the cycle wrap-up flow. Centralized here so the rubric stays consistent
15
- across consumers and updates land in one place rather than fanning out across N skills.
16
-
17
- ## Layers
18
-
19
- The lifecycle has four nested layers. A layer is complete only when EVERY criterion at
20
- that layer is satisfied. Layers above can only flip complete when every layer below has
21
- flipped complete first - closeout walks bottom-up.
22
-
23
- ### Task level
24
-
25
- The smallest unit of work - one row in a PLAN.md `<tasks>` list.
26
-
27
- - Verify command runs with exit 0 (the `<verify>` block's command).
28
- - The `<done>` criterion is observable (the file exists, the test passes, the output
29
- matches the contract).
30
- - If the task is `tdd="true"`: tests pass after the GREEN step; tests fail before it.
31
- - File diff is scoped to the declared `files_modified` only - no collateral damage.
32
- - A single commit per task in conventional form `{type}({phase}-{plan}): {description}`.
33
- - Deviations (Rules 1, 2, 3) tracked for the SUMMARY.md "Deviations" section.
34
-
35
- ### Plan level
36
-
37
- A self-contained chunk of work - one `XX-YY-PLAN.md`.
38
-
39
- - All tasks complete (per task level above).
40
- - Plan-level validator passes (e.g. `validate-skill-length.cjs` for Phase 28.5 buckets;
41
- `validate-frontmatter.ts` for agent-frontmatter plans).
42
- - SUMMARY.md written at `.planning/phases/XX-name/XX-YY-SUMMARY.md` with the canonical
43
- shape: deviations, files-modified table, commits, verification result, decisions.
44
- - No collateral damage outside the plan's declared `files_modified` list - out-of-scope
45
- edits are forbidden (executor Rule 5 boundary).
46
- - A final docs commit aggregates `SUMMARY.md`, `STATE.md`, `ROADMAP.md`, and
47
- `REQUIREMENTS.md` updates.
48
-
49
- ### Phase level
50
-
51
- A coherent batch of plans - one `XX-name/` directory under `.planning/phases/`.
52
-
53
- - All plans complete (per plan level above).
54
- - Phase-level verification ALL pass (`<verification>` block in each PLAN.md).
55
- - ROADMAP.md flipped `[ ]` → `[x]` for all plans in this phase (rule #14: scoped flip
56
- only - never flip plans outside this phase).
57
- - Phase SUMMARY ladder coherent - each `XX-YY-SUMMARY.md` exists and reads top-to-bottom
58
- as a single story.
59
- - All decisions surfaced through the SUMMARY frontmatter and rolled up into STATE.md's
60
- `<decisions>` block.
61
-
62
- ### Cycle level
63
-
64
- A shipping milestone - typically one minor version bump in the gdd project.
65
-
66
- - All phases for the cycle's target version complete (per phase level above).
67
- - 4 manifests version-aligned: `plugin.json`, `marketplace.json`, `package.json`, and
68
- the phase-20 manifests-version baseline (`test-fixture/baselines/phase-XX/manifests-version.txt`).
69
- - CHANGELOG.md entry written for the new version with one block per phase.
70
- - Off-cadence registration if applicable - `tests/semver-compare.test.cjs` adds
71
- `OFF_CADENCE_VERSIONS.add('<version>')` for `.5`/`.6`/`.7` insertion-style versions.
72
- - Regression baseline at `test-fixture/baselines/phase-XX/` exists and the
73
- `tests/phase-XX-baseline.test.cjs` suite passes (version-agnostic - reads
74
- `package.json#version`).
75
- - NOTICE attribution updated if any third-party content was adopted in this cycle.
76
- - Closeout plan's scoped ROADMAP flip touches only this cycle's checkboxes (precedent:
77
- Phase 28 closeout flipped exactly 7 inline + 1 overview entry).
78
-
79
- ## Cross-references
80
-
81
- - `./STATE-TEMPLATE.md` - STATE.md schema; closeout updates the `<position>` block's
82
- `last_checkpoint` field.
83
- - `../skills/turn-closeout/SKILL.md` - consumer at the turn boundary (within a stage).
84
- - `../skills/new-cycle/SKILL.md` - consumer at cycle ingress.
85
- - `../skills/complete-cycle/SKILL.md` - consumer at cycle egress.
86
- - `../skills/quality-gate/SKILL.md` - Stage 4.5 gate that gates the plan-level "verify
87
- command runs with exit 0" criterion when project tooling exists.
@@ -1,92 +0,0 @@
1
- ---
2
- name: scan
3
- description: "Pre-pipeline initializer that maps an existing repo's design system (colors, typography, spacing, components, tokens), runs the anti-pattern audit, scores the 7 weighted categories, and writes DESIGN.md + .design/DESIGN-DEBT.md. Use when starting work in any new or existing repo before /gdd:discover. Activates for requests involving a fast read-only anti-pattern sweep, a quick design lint, or spotting slop without a full audit."
4
- argument-hint: "[--quick] [--full]"
5
- user-invocable: true
6
- ---
7
-
8
- # Get Design Done - Scan
9
-
10
- **Pre-pipeline initializer.** Run once in any new or existing repo before starting the Discover -> Plan -> Design -> Verify pipeline.
11
-
12
- Full procedure detail: `./scan-procedure.md`.
13
-
14
- Produces:
15
- - `DESIGN.md` - snapshot of the existing design system as it actually is
16
- - `.design/DESIGN-DEBT.md` - prioritized debt roadmap
17
-
18
- `--quick`: Skip component inventory, focus on tokens + anti-patterns only (~2 min)
19
- `--full`: Include component-by-component analysis (slower, more thorough)
20
-
21
- Default: full scan of tokens, patterns, and anti-patterns. Component inventory is a summary count, not per-file.
22
-
23
- ---
24
-
25
- ## State Integration
26
-
27
- At scan entry, before running any step:
28
-
29
- 1. Read or create `.design/STATE.md` from `reference/STATE-TEMPLATE.md` (set `stage=scan`, `status=in_progress`, `task_progress=0/8`; preserve `started_at` on resume). See `./scan-procedure.md` §State Integration for the full read/create/resume decision tree.
30
- 2. Probe Figma + Refero connections (variant-agnostic ToolSearch + tiebreaker resolution). Detail: `./scan-procedure.md` §Probe connection availability.
31
- 3. Run the four Phase 8 probes (preview, storybook, chromatic, graphify) and batch-write results to STATE.md `<connections>`. Detail: `./scan-procedure.md` §Phase 8 Connection Probes.
32
- 4. Emit the first-run connection nudge if every probe returned `not_configured` AND `.design/config.json > connections_onboarding` is absent.
33
- 5. Update `last_checkpoint`; persist STATE.md before proceeding to Step 1.
34
-
35
- ---
36
-
37
- ## Workflow
38
-
39
- The scan executes eight steps in order. Each step's full grep commands, analysis prompts, and decision rules live in `./scan-procedure.md` - keep that file open while executing.
40
-
41
- ### Step 1 - Orient
42
-
43
- Detect framework, CSS approach, component count, style file count, token system. Detect source root by ordered fallback (`src/` -> `app/` -> `pages/` -> `lib/`) and substitute into subsequent grep commands. Log the detected source root in DESIGN.md frontmatter. Detail: `./scan-procedure.md` §Step 1.
44
-
45
- ### Step 2 - Extract Color System
46
-
47
- Grep hex / `oklch()` / `hsl()` / `rgb()` colors, CSS custom properties, and Tailwind color config. Analyze palette size, token discipline, AI-slop colors (#6366f1, #8b5cf6, #06b6d4), semantic naming, dark-mode purity. Produce a color inventory table. Detail: `./scan-procedure.md` §Step 2.
48
-
49
- ### Step 2A - Figma Token Augmentation
50
-
51
- If `figma: available` in STATE.md `<connections>`: call `{prefix}get_variable_defs`, translate variables by type/name pattern, merge with grep-derived tokens (never replace). Skip silently if `figma` is `not_configured` or `unavailable`. Detail: `./scan-procedure.md` §Step 2A.
52
-
53
- ### Step 3 - Extract Typography System
54
-
55
- Grep font families, sizes, weights, line-heights. Analyze family count, scale compliance, weight hierarchy, line-height on body, reflex-font signals. Read `${CLAUDE_PLUGIN_ROOT}/reference/typography.md` for comparison criteria. Detail: `./scan-procedure.md` §Step 3.
56
-
57
- ### Step 4 - Extract Spacing System
58
-
59
- Grep CSS spacing values, Tailwind spacing overrides, space tokens. Score grid compliance against the 4/8/12/16/24/32/48/64 series. Detail: `./scan-procedure.md` §Step 4.
60
-
61
- ### Step 5 - Anti-Pattern Audit
62
-
63
- Read `${CLAUDE_PLUGIN_ROOT}/reference/anti-patterns.md`. Run all BAN-XX and SLOP-XX grep commands, plus a11y checks (focus rings, reduced-motion, div onClick, small fonts). Detail: `./scan-procedure.md` §Step 5.
64
-
65
- ### Step 6 - Component Inventory
66
-
67
- If `--quick`, skip. Otherwise run the three-pass multi-signal filter (JSX-return + className + framework-import) to produce an authoritative component list, then enumerate primitives. In `--full` mode, emit one row per file. Detail: `./scan-procedure.md` §Step 6.
68
-
69
- ### Step 7 - Score All 7 Categories
70
-
71
- Read `${CLAUDE_PLUGIN_ROOT}/reference/audit-scoring.md`. Score each category 0–10 and apply the weighted formula `(A11Y * 0.25) + (Visual Hierarchy * 0.20) + (Typography * 0.15) + (Color * 0.15) + (Layout * 0.10) + (Anti-Patterns * 0.10) + (Motion * 0.05)`. Grade A=90+, B=75+, C=60+, D=45+, F<45.
72
-
73
- ### Step 8 - Generate Design Debt Roadmap
74
-
75
- Classify each finding P0/P1/P2/P3, estimate effort XS/S/M/L/XL, group by debt theme, compute `priority_score = (severity_weight * effort_weight) + (dependency_depth * 2)`. Mark P1+XS/S items as quick wins. Detail: `./scan-procedure.md` §Step 8.
76
-
77
- ---
78
-
79
- ## Outputs
80
-
81
- Write both artifacts using the templates in `./scan-procedure.md`:
82
-
83
- - **`DESIGN.md`** (project root) - design-system snapshot with score table, color/typography/spacing/component inventories, anti-pattern status, motion summary. Frontmatter records `score`, `framework`, `css_approach`, `token_layer`, and (if Figma ran) `figma_variables_used` + `figma_source`. Template: `./scan-procedure.md` §Output 1.
84
- - **`.design/DESIGN-DEBT.md`** - prioritized debt roadmap grouped P0/P1/P2/P3, with priority_score ordering, recommended fix order, and pipeline recommendation. Template: `./scan-procedure.md` §Output 2.
85
-
86
- ---
87
-
88
- ## After Writing
89
-
90
- Print the user-facing summary block from `./scan-procedure.md` §After Writing - project name, score, P0/P1 counts, quick-win count, artifact paths, and next-step options (start pipeline, fix quick wins first, or just reference the debt).
91
-
92
- ## SCAN COMPLETE