@hegemonart/get-design-done 1.19.0 → 1.19.5

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 (54) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +24 -0
  4. package/SKILL.md +10 -4
  5. package/agents/README.md +53 -0
  6. package/agents/a11y-mapper.md +10 -0
  7. package/agents/component-benchmark-harvester.md +11 -0
  8. package/agents/component-benchmark-synthesizer.md +11 -0
  9. package/agents/component-taxonomy-mapper.md +10 -0
  10. package/agents/design-advisor.md +10 -0
  11. package/agents/design-assumptions-analyzer.md +10 -0
  12. package/agents/design-auditor.md +10 -0
  13. package/agents/design-authority-watcher.md +10 -0
  14. package/agents/design-component-generator.md +10 -0
  15. package/agents/design-context-checker-gate.md +10 -0
  16. package/agents/design-context-checker.md +10 -0
  17. package/agents/design-discussant.md +10 -0
  18. package/agents/design-doc-writer.md +12 -0
  19. package/agents/design-executor.md +10 -0
  20. package/agents/design-figma-writer.md +10 -0
  21. package/agents/design-fixer.md +10 -0
  22. package/agents/design-integration-checker-gate.md +10 -0
  23. package/agents/design-integration-checker.md +10 -0
  24. package/agents/design-paper-writer.md +10 -0
  25. package/agents/design-pattern-mapper.md +10 -0
  26. package/agents/design-pencil-writer.md +10 -0
  27. package/agents/design-phase-researcher.md +10 -0
  28. package/agents/design-plan-checker.md +10 -0
  29. package/agents/design-planner.md +10 -0
  30. package/agents/design-reflector.md +10 -0
  31. package/agents/design-research-synthesizer.md +10 -0
  32. package/agents/design-start-writer.md +10 -0
  33. package/agents/design-update-checker.md +10 -0
  34. package/agents/design-verifier-gate.md +10 -0
  35. package/agents/design-verifier.md +11 -0
  36. package/agents/gdd-graphify-sync.md +10 -0
  37. package/agents/gdd-intel-updater.md +10 -0
  38. package/agents/gdd-learnings-extractor.md +10 -0
  39. package/agents/motion-mapper.md +10 -0
  40. package/agents/token-mapper.md +10 -0
  41. package/agents/visual-hierarchy-mapper.md +10 -0
  42. package/hooks/gdd-decision-injector.js +30 -8
  43. package/package.json +9 -2
  44. package/reference/registry.json +7 -0
  45. package/reference/schemas/insight-line.schema.json +37 -0
  46. package/scripts/lib/design-search.cjs +206 -0
  47. package/scripts/lib/probe-optional.cjs +29 -0
  48. package/scripts/lib/relevance-counter.cjs +121 -0
  49. package/skills/complete-cycle/SKILL.md +40 -2
  50. package/skills/continue/SKILL.md +23 -0
  51. package/skills/pause/SKILL.md +40 -14
  52. package/skills/recall/SKILL.md +74 -0
  53. package/skills/resume/SKILL.md +34 -16
  54. package/skills/timeline/SKILL.md +65 -0
@@ -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.19.0"
8
+ "version": "1.19.5"
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. Ships 35-component benchmark corpus with pipeline integration (auditor conformance, executor pre-flight, doc-writer scaffold, pattern-mapper convergence). Embeds NNG heuristics, WCAG thresholds, typographic systems, motion framework, variable-font loading, image optimization, CSS Grid + container queries, advanced motion vocabulary, platform design patterns (iOS/Android/web/visionOS), RTL/CJK/cultural adaptations, IA catalog, form UX patterns, data-visualization matrix, and user-research methodology, 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.19.0",
15
+ "version": "1.19.5",
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.19.0",
4
+ "version": "1.19.5",
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. Ships 35-component benchmark corpus (Waves 1–5) with pipeline integration: auditor conformance scoring, executor spec pre-flight, doc-writer scaffold, pattern-mapper convergence detector. Embeds NNG heuristics, WCAG thresholds, typographic systems, motion framework, variable-font loading, image optimization, CSS Grid + container queries, advanced motion vocabulary (RN MIT easings/spring/interpolate + hyperframes transition taxonomy), platform design patterns (iOS/Android/web/visionOS), RTL/CJK/cultural adaptations, information architecture catalog, form UX patterns (Wroblewski label research), data-visualization matrix (25 chart types, Okabe-Ito palette), and user-research methodology, 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,30 @@ All notable changes to get-design-done are documented here. Versions follow [sem
4
4
 
5
5
  ---
6
6
 
7
+ ## [1.19.5] — 2026-04-24
8
+
9
+ ### Added — Cross-Cycle Memory: Recall, Checkpoints, Experience Archive
10
+
11
+ Turns write-only learnings and reflections into a queryable, ranked, self-pruning memory layer.
12
+
13
+ **Search backend (`scripts/lib/design-search.cjs`):** Priority chain — FTS5 via `better-sqlite3` (optional dep, runtime-probed) → ripgrep → Node fs scan. `/gdd:recall --reindex` rebuilds the index. `scripts/lib/probe-optional.cjs` wraps optional native deps for future reuse.
14
+
15
+ **Cross-cycle recall (`/gdd:recall <query>`):** `skills/recall/SKILL.md` — searches `.design/archive/`, `.design/learnings/LEARNINGS.md`, `.design/CYCLES.md`, and STATE.md decision blocks; signals `surfaced` for matched L-NN IDs via `relevance-counter.cjs`.
16
+
17
+ **Numbered checkpoints (pause/resume rewrite):** `skills/pause/SKILL.md` atomic-appends to `.design/checkpoints/NN-<stage>-<ISO-date>.md` instead of clobbering `HANDOFF.md`; `HANDOFF.md` becomes a pointer to the latest checkpoint. `skills/resume/SKILL.md` gains listing mode with `AskUserQuestion` picker when no arg; `/gdd:resume N` restores checkpoint N. `skills/continue/SKILL.md` — alias for `/gdd:resume` (discoverability).
18
+
19
+ **Per-cycle EXPERIENCE.md:** `skills/complete-cycle/SKILL.md` extended — Haiku-tier writer reads cycle STATE + DESIGN-VERIFICATION + reflections, emits `.design/archive/cycle-N/EXPERIENCE.md` (~100–200 lines, declarative-fact framing: Goal / Decisions made / Learnings graduated / What died / Surprises / Handoff to next cycle). Highest-priority source for decision-injector.
20
+
21
+ **Timeline retrospective (`/gdd:timeline`):** `skills/timeline/SKILL.md` — narrative view across EXPERIENCE.md files + git log; sections Opened with / Key decisions / Surprises / What we'd do differently.
22
+
23
+ **Relevance counter (`scripts/lib/relevance-counter.cjs`):** `record(id, signal, designDir)` under atomic-write + `.lock`; signals: `cited`, `surfaced`, `dismissed`. `shouldPromote` at 8+ cites; `shouldPrune` at 0 cites + 4 cycles.
24
+
25
+ **Decision-injector FTS5 upgrade:** `hooks/gdd-decision-injector.js` backend-swaps to FTS5 transparently when `design-search.cjs` is available — zero surface-level output change, backend label shown in footer.
26
+
27
+ **Record contract (mandatory for all agents):** `agents/README.md` authoring template gains mandatory `## Record` step — every agent appends one JSONL line to `.design/intel/insights.jsonl`. `reference/schemas/insight-line.schema.json` — schema with 6 required fields (`ts`, `agent`, `cycle`, `stage`, `one_line_insight`, `artifacts_written`). `tests/record-contract.test.cjs` enforces presence of `## Record` section in every `agents/*.md`. All 36 existing agents updated with stub Record sections.
28
+
29
+ ---
30
+
7
31
  ## [1.19.0] — 2026-04-24
8
32
 
9
33
  ### Added — Platform, Inclusive Design & UX Research References (knowledge-layer complete)
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|watch-authorities|check-update|benchmark]"
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|benchmark|recall|timeline|continue]"
6
6
  user-invocable: true
7
7
  ---
8
8
 
@@ -42,8 +42,11 @@ Each stage produces artifacts in `.design/` inside the current project.
42
42
  | `audit [--retroactive] [--quick] [--no-reflect]` | `get-design-done:gdd-audit` | Wraps design-verifier + design-auditor + design-reflector; `--retroactive` audits full cycle scope |
43
43
  | `reflect [--dry-run] [--cycle <slug>]` | `get-design-done:gdd-reflect` | On-demand reflection — reads cycle data, produces improvement proposals → `.design/reflections/<slug>.md` |
44
44
  | `apply-reflections [--filter <type>] [--dry-run]` | `get-design-done:gdd-apply-reflections` | Review + selectively apply reflection proposals (FRONTMATTER/REFERENCE/BUDGET/QUESTION/GLOBAL-SKILL) |
45
- | `pause [context]` | `get-design-done:gdd-pause` | Write session handoff to `.design/HANDOFF.md` |
46
- | `resume` | `get-design-done:gdd-resume` | Restore session context from `.design/HANDOFF.md` and route to next step |
45
+ | `pause [context]` | `get-design-done:gdd-pause` | Write numbered checkpoint to `.design/checkpoints/NN-*.md` |
46
+ | `resume [N]` | `get-design-done:gdd-resume` | Restore session from checkpoint N (or list checkpoints if no arg) |
47
+ | `continue [N]` | `get-design-done:gdd-continue` | Alias for `/gdd:resume` |
48
+ | `recall <query>` | `get-design-done:gdd-recall` | Search cross-cycle memory (decisions, learnings, experience archives) |
49
+ | `timeline [N\|N-M\|all]` | `get-design-done:gdd-timeline` | Narrative retrospective across completed cycles |
47
50
  | **Lifecycle** | | |
48
51
  | `start [--budget <t>] [--skip-interview] [--dismiss-nudge]` | `get-design-done:start` | First-Run Proof Path — scans UI code, returns one concrete first fix. No STATE.md writes. |
49
52
  | `new-project [--name <n>]` | `get-design-done:gdd-new-project` | Initialize project — PROJECT.md + STATE.md + cycle-1 |
@@ -207,7 +210,10 @@ If `$ARGUMENTS` is a stage or command name — invoke it directly, no state chec
207
210
  /gdd:watch-authorities → Skill("get-design-done:gdd-watch-authorities")
208
211
  /gdd:benchmark → Skill("get-design-done:gdd-benchmark")
209
212
  /gdd:pause → Skill("get-design-done:gdd-pause")
210
- /gdd:resume → Skill("get-design-done:gdd-resume")
213
+ /gdd:resume → Skill("get-design-done:gdd-resume")
214
+ /gdd:continue → Skill("get-design-done:gdd-continue")
215
+ /gdd:recall → Skill("get-design-done:gdd-recall")
216
+ /gdd:timeline → Skill("get-design-done:gdd-timeline")
211
217
  # --- Lifecycle ---
212
218
  /gdd:start → Skill("get-design-done:start") # leaf command, no STATE.md
213
219
  /gdd:new-project → Skill("get-design-done:gdd-new-project")
package/agents/README.md CHANGED
@@ -188,6 +188,59 @@ Constraints: do not modify any file other than .design/example-output.md.
188
188
 
189
189
  ---
190
190
 
191
+ ## Mandatory Record Step (Phase 19.5)
192
+
193
+ Every agent **must** end its run by appending one JSONL line to `.design/intel/insights.jsonl`. This feeds `/gdd:reflect`, `/gdd:extract-learnings`, and the decision-injector relevance counter.
194
+
195
+ ### Format
196
+
197
+ ```json
198
+ {"ts":"2026-01-15T14:23:00.000Z","agent":"design-planner","cycle":"cycle-1","stage":"plan","one_line_insight":"Produced 7-task DESIGN-PLAN.md targeting typography and spacing","artifacts_written":[".design/DESIGN-PLAN.md"]}
199
+ ```
200
+
201
+ ### Schema
202
+
203
+ `reference/schemas/insight-line.schema.json` — all six fields are required.
204
+
205
+ | Field | Type | Notes |
206
+ |-------|------|-------|
207
+ | `ts` | ISO 8601 string | Current UTC time |
208
+ | `agent` | string | Must match frontmatter `name` field |
209
+ | `cycle` | string | From `STATE.md cycle:` — empty string if no active cycle |
210
+ | `stage` | string | From `STATE.md stage:` |
211
+ | `one_line_insight` | string ≤200 chars | Declarative fact: what was produced or learned |
212
+ | `artifacts_written` | string[] | Relative paths written; `[]` for read-only agents |
213
+
214
+ ### Implementation pattern
215
+
216
+ At the very end of your run (after all writes, before emitting the COMPLETE marker):
217
+
218
+ ```bash
219
+ echo '{"ts":"...","agent":"...","cycle":"...","stage":"...","one_line_insight":"...","artifacts_written":[...]}' >> .design/intel/insights.jsonl
220
+ ```
221
+
222
+ Or via Bash + `node -e` when quoting is complex. Always append (>>), never overwrite. Create `.design/intel/` with `mkdir -p` first.
223
+
224
+ ### Authoring template
225
+
226
+ Every new agent body must include a `## Record` section before the `## <NAME> COMPLETE` footer:
227
+
228
+ ```markdown
229
+ ## Record
230
+
231
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
232
+
233
+ \`\`\`json
234
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle>","stage":"<stage>","one_line_insight":"<what was produced>","artifacts_written":["<files>"]}
235
+ \`\`\`
236
+
237
+ Schema: `reference/schemas/insight-line.schema.json`.
238
+ ```
239
+
240
+ `tests/record-contract.test.cjs` enforces this section is present in every `agents/*.md` file.
241
+
242
+ ---
243
+
191
244
  ## Size Budgets
192
245
 
193
246
  Agents should be kept small — long instruction bodies burn context at every spawn and drift from their single-responsibility role. Per-tier soft limits:
@@ -141,3 +141,13 @@ Total: N findings. (0 = clean)
141
141
  No modifications outside `.design/map/`. No live browser. No git. No agent spawning.
142
142
 
143
143
  ## A11Y MAP COMPLETE
144
+
145
+ ## Record
146
+
147
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
148
+
149
+ ```json
150
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
151
+ ```
152
+
153
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -105,6 +105,17 @@ This pre-analysis seeds the synthesizer's convergence analysis.
105
105
  End your response with:
106
106
 
107
107
  ```
108
+
109
+ ## Record
110
+
111
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
112
+
113
+ ```json
114
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
115
+ ```
116
+
117
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
118
+
108
119
  ## HARVEST COMPLETE
109
120
  Component: <name>
110
121
  Sources harvested: <N>
@@ -80,6 +80,17 @@ Update `reference/components/README.md`:
80
80
  End your response with:
81
81
 
82
82
  ```
83
+
84
+ ## Record
85
+
86
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
87
+
88
+ ```json
89
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
90
+ ```
91
+
92
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
93
+
83
94
  ## SYNTHESIS COMPLETE
84
95
  Component: <name>
85
96
  Spec: reference/components/<name>.md
@@ -85,4 +85,14 @@ dominant_styling: [CSS Modules | Tailwind | styled-components | mixed]
85
85
 
86
86
  Do not modify anything outside `.design/map/`. No git. No agent spawning.
87
87
 
88
+ ## Record
89
+
90
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
91
+
92
+ ```json
93
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
94
+ ```
95
+
96
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
97
+
88
98
  ## COMPONENT MAP COMPLETE
@@ -136,4 +136,14 @@ You MUST NOT:
136
136
 
137
137
  ---
138
138
 
139
+ ## Record
140
+
141
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
142
+
143
+ ```json
144
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
145
+ ```
146
+
147
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
148
+
139
149
  ## ADVICE COMPLETE
@@ -168,4 +168,14 @@ You MUST NOT:
168
168
 
169
169
  ---
170
170
 
171
+ ## Record
172
+
173
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
174
+
175
+ ```json
176
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
177
+ ```
178
+
179
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
180
+
171
181
  ## ANALYSIS COMPLETE
@@ -528,4 +528,14 @@ If `reference/components/` does not exist or contains no specs, skip this sectio
528
528
 
529
529
  ---
530
530
 
531
+ ## Record
532
+
533
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
534
+
535
+ ```json
536
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
537
+ ```
538
+
539
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
540
+
531
541
  ## AUDIT COMPLETE
@@ -205,4 +205,14 @@ On contract violation (schema mismatch, hash format violation, over-200 entries)
205
205
 
206
206
  Terminate every response with:
207
207
 
208
+ ## Record
209
+
210
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
211
+
212
+ ```json
213
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
214
+ ```
215
+
216
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
217
+
208
218
  ## WATCH COMPLETE
@@ -219,3 +219,13 @@ Written: src/components/<ComponentName>.tsx
219
219
  DS: <design_system>
220
220
  [Preview: <preview_url>]
221
221
  ```
222
+
223
+ ## Record
224
+
225
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
226
+
227
+ ```json
228
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
229
+ ```
230
+
231
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -87,4 +87,14 @@ You MAY:
87
87
 
88
88
  Per 10.1-CONTEXT decision **D-21** (Lazy Checker Spawning): "Cheap Haiku gate agents at `agents/*-gate.md` decide whether to spawn full checker. If false, skip full checker, log as `lazy_skipped: true` in telemetry." This gate is the context-checker-specific instance of that pattern — the full `design-context-checker` runs a 6-dimension rubric against `.design/DESIGN-CONTEXT.md`. If the builder made no changes to that file in this phase (a no-op re-run of discover, for example), the prior verdict still holds and the spawn is wasted cost.
89
89
 
90
+ ## Record
91
+
92
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
93
+
94
+ ```json
95
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
96
+ ```
97
+
98
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
99
+
90
100
  ## GATE COMPLETE
@@ -257,4 +257,14 @@ You MUST NOT:
257
257
 
258
258
  ---
259
259
 
260
+ ## Record
261
+
262
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
263
+
264
+ ```json
265
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
266
+ ```
267
+
268
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
269
+
260
270
  ## CONTEXT CHECK COMPLETE
@@ -95,4 +95,14 @@ Write quality log after every exchange. This data feeds `design-reflector`'s que
95
95
  - Never grep or glob the codebase — you are a discussant, not a detector.
96
96
  - Never spawn other agents.
97
97
 
98
+ ## Record
99
+
100
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
101
+
102
+ ```json
103
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
104
+ ```
105
+
106
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
107
+
98
108
  ## DISCUSS COMPLETE
@@ -6,6 +6,8 @@ color: yellow
6
6
  model: sonnet
7
7
  default-tier: sonnet
8
8
  tier-rationale: "Produces polished prose documentation; Sonnet's style quality is sufficient"
9
+ size_budget: XL
10
+ size_budget_rationale: "Phase 19.5 Record contract added ~11 lines; base doc-writer body is 250-line tier"
9
11
  parallel-safe: always
10
12
  typical-duration-seconds: 45
11
13
  reads-only: false
@@ -247,4 +249,14 @@ This agent MUST NOT:
247
249
 
248
250
  ---
249
251
 
252
+ ## Record
253
+
254
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
255
+
256
+ ```json
257
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
258
+ ```
259
+
260
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
261
+
250
262
  ## DOC COMPLETE
@@ -511,4 +511,14 @@ This agent MUST NOT:
511
511
  @.design/intel/tokens.json (if present)
512
512
  @.design/intel/decisions.json (if present)
513
513
 
514
+ ## Record
515
+
516
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
517
+
518
+ ```json
519
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
520
+ ```
521
+
522
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
523
+
514
524
  ## EXECUTION COMPLETE
@@ -361,3 +361,13 @@ Annotations applied: N/N_total
361
361
  Code Connect mappings registered: M/M_total
362
362
  Failed: <list any failed operations>
363
363
  ```
364
+
365
+ ## Record
366
+
367
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
368
+
369
+ ```json
370
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
371
+ ```
372
+
373
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -177,4 +177,14 @@ The stage reads the inline summary to determine how many gaps were fixed before
177
177
 
178
178
  ---
179
179
 
180
+ ## Record
181
+
182
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
183
+
184
+ ```json
185
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
186
+ ```
187
+
188
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
189
+
180
190
  ## FIX COMPLETE
@@ -90,4 +90,14 @@ You MAY:
90
90
 
91
91
  Per 10.1-CONTEXT decision **D-21** (Lazy Checker Spawning): "Cheap Haiku gate agents at `agents/*-gate.md` decide whether to spawn full checker. If false, skip full checker, log as `lazy_skipped: true` in telemetry." This gate is the integration-checker-specific instance of that pattern — the full `design-integration-checker` is a LARGE-size post-verification spawn that grep-walks the codebase for D-XX decision application. If no decision or anchor doc moved in the diff, the wiring result is unchanged from the last verify and the spawn is wasted cost.
92
92
 
93
+ ## Record
94
+
95
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
96
+
97
+ ```json
98
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
99
+ ```
100
+
101
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
102
+
93
103
  ## GATE COMPLETE
@@ -323,4 +323,14 @@ Document any ambiguous cases in the per-decision "Notes" field.
323
323
 
324
324
  ---
325
325
 
326
+ ## Record
327
+
328
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
329
+
330
+ ```json
331
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
332
+ ```
333
+
334
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
335
+
326
336
  ## INTEGRATION CHECK COMPLETE
@@ -129,3 +129,13 @@ Applied: N/M operations succeeded
129
129
  Budget used: N/100 (this session)
130
130
  Failed: <list failed operations or "none">
131
131
  ```
132
+
133
+ ## Record
134
+
135
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
136
+
137
+ ```json
138
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
139
+ ```
140
+
141
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -267,4 +267,14 @@ You MUST NOT:
267
267
 
268
268
  ---
269
269
 
270
+ ## Record
271
+
272
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
273
+
274
+ ```json
275
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
276
+ ```
277
+
278
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
279
+
270
280
  ## MAPPING COMPLETE
@@ -97,3 +97,13 @@ Mode: <mode>
97
97
  Applied: N/M operations (N committed, M failed)
98
98
  Failed: <list or "none">
99
99
  ```
100
+
101
+ ## Record
102
+
103
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
104
+
105
+ ```json
106
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
107
+ ```
108
+
109
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -226,4 +226,14 @@ flowchart TD
226
226
  @.design/intel/dependencies.json (if present)
227
227
  @.design/intel/graph.json (if present)
228
228
 
229
+ ## Record
230
+
231
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
232
+
233
+ ```json
234
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
235
+ ```
236
+
237
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
238
+
229
239
  ## RESEARCH COMPLETE
@@ -161,4 +161,14 @@ You MUST NOT:
161
161
 
162
162
  ---
163
163
 
164
+ ## Record
165
+
166
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
167
+
168
+ ```json
169
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
170
+ ```
171
+
172
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
173
+
164
174
  ## PLAN CHECK COMPLETE
@@ -349,4 +349,14 @@ You MUST NOT:
349
349
  @.design/intel/dependencies.json (if present)
350
350
  @.design/intel/graph.json (if present)
351
351
 
352
+ ## Record
353
+
354
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
355
+
356
+ ```json
357
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
358
+ ```
359
+
360
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
361
+
352
362
  ## PLANNING COMPLETE
@@ -172,4 +172,14 @@ Aggregate per agent across cycles:
172
172
  - Proposals are additive — propose additions, not deletions of existing content, unless the evidence is clear (e.g., wrong frontmatter value).
173
173
  - Maximum 20 proposals per reflection file. If more are warranted, batch the lowest-priority ones into a single summary note at the end.
174
174
 
175
+ ## Record
176
+
177
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
178
+
179
+ ```json
180
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
181
+ ```
182
+
183
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
184
+
175
185
  ## REFLECTION COMPLETE
@@ -163,4 +163,14 @@ Read .design/STATE.md
163
163
 
164
164
  Single file: `.design/DESIGN-CONTEXT.md`.
165
165
 
166
+ ## Record
167
+
168
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
169
+
170
+ ```json
171
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
172
+ ```
173
+
174
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
175
+
166
176
  ## SYNTHESIZE COMPLETE
@@ -219,3 +219,13 @@ The JSON block at the bottom is the contract future `/gdd:fast` / `/gdd:do` invo
219
219
  - Do not omit any of the seven H2 sections — even empty, they must exist for downstream regression fixtures.
220
220
 
221
221
  ## START-WRITER COMPLETE
222
+
223
+ ## Record
224
+
225
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
226
+
227
+ ```json
228
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
229
+ ```
230
+
231
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.
@@ -115,3 +115,13 @@ Last line of your response MUST be:
115
115
  ```
116
116
 
117
117
  The spawning skill greps for this marker to confirm you finished successfully. Emit it even on the "no cache" fallback path.
118
+
119
+ ## Record
120
+
121
+ At run-end, append one JSONL line to `.design/intel/insights.jsonl`:
122
+
123
+ ```json
124
+ {"ts":"<ISO-8601>","agent":"<name>","cycle":"<cycle from STATE.md>","stage":"<stage from STATE.md>","one_line_insight":"<what was produced or learned>","artifacts_written":["<files written>"]}
125
+ ```
126
+
127
+ Schema: `reference/schemas/insight-line.schema.json`. Use an empty `artifacts_written` array for read-only agents.