@hegemonart/get-design-done 1.50.1 → 1.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +93 -0
  4. package/README.md +4 -0
  5. package/SKILL.md +4 -1
  6. package/agents/a11y-mapper.md +30 -1
  7. package/agents/component-taxonomy-mapper.md +30 -1
  8. package/agents/design-debt-crawler.md +60 -60
  9. package/agents/design-reflector.md +33 -0
  10. package/agents/design-research-synthesizer.md +27 -1
  11. package/agents/motion-mapper.md +35 -13
  12. package/agents/token-mapper.md +30 -1
  13. package/agents/visual-hierarchy-mapper.md +30 -1
  14. package/dist/claude-code/.claude/skills/apply-reflections/SKILL.md +17 -0
  15. package/dist/claude-code/.claude/skills/context/SKILL.md +137 -0
  16. package/dist/claude-code/.claude/skills/extract-learnings/SKILL.md +16 -0
  17. package/dist/claude-code/.claude/skills/instinct/SKILL.md +111 -0
  18. package/dist/claude-code/.claude/skills/migrate-context/SKILL.md +123 -0
  19. package/dist/claude-code/.claude/skills/progress/SKILL.md +4 -0
  20. package/hooks/gdd-decision-injector.js +115 -6
  21. package/package.json +3 -2
  22. package/reference/design-context-schema.md +159 -0
  23. package/reference/design-context-tag-vocab.md +82 -0
  24. package/reference/instinct-format.md +120 -0
  25. package/reference/registry.json +21 -0
  26. package/reference/schemas/design-context.schema.json +130 -0
  27. package/reference/schemas/events.schema.json +1 -1
  28. package/reference/schemas/instinct.schema.json +91 -0
  29. package/reference/schemas/mcp-gdd-tools.schema.json +34 -1
  30. package/reference/skill-graph.md +4 -1
  31. package/scripts/lib/design-context/extract-a11y.mjs +188 -0
  32. package/scripts/lib/design-context/extract-components.mjs +243 -0
  33. package/scripts/lib/design-context/extract-motion.mjs +248 -0
  34. package/scripts/lib/design-context/extract-tokens.mjs +234 -0
  35. package/scripts/lib/design-context/extract-visual-hierarchy.mjs +178 -0
  36. package/scripts/lib/design-context/integration-map.mjs +251 -0
  37. package/scripts/lib/design-context/merge-fragments.mjs +227 -0
  38. package/scripts/lib/design-context-query.cjs +0 -0
  39. package/scripts/lib/instinct-store.cjs +677 -0
  40. package/scripts/lib/manifest/skills.json +24 -0
  41. package/scripts/lib/mcp-tools-lint/index.cjs +3 -1
  42. package/sdk/mcp/gdd-mcp/schemas/gdd_context_query.schema.json +60 -0
  43. package/sdk/mcp/gdd-mcp/server.js +474 -158
  44. package/sdk/mcp/gdd-mcp/server.ts +9 -5
  45. package/sdk/mcp/gdd-mcp/tools/gdd_context_query.ts +35 -0
  46. package/sdk/mcp/gdd-mcp/tools/index.ts +18 -13
  47. package/skills/apply-reflections/SKILL.md +17 -0
  48. package/skills/context/SKILL.md +137 -0
  49. package/skills/extract-learnings/SKILL.md +16 -0
  50. package/skills/instinct/SKILL.md +111 -0
  51. package/skills/migrate-context/SKILL.md +123 -0
  52. package/skills/progress/SKILL.md +4 -0
@@ -93,6 +93,14 @@
93
93
  "user_invocable": true,
94
94
  "tools": "Read, Write, Bash, Glob, Grep, AskUserQuestion, ToolSearch"
95
95
  },
96
+ {
97
+ "name": "context",
98
+ "description": "Queries the typed DesignContext graph at .design/context-graph.json - the design-semantic map of tokens, components, variants, states, motion, a11y patterns, screens, layers, and design patterns plus the edges between them. Lists and filters nodes and edges, traces a path between two nodes, finds the consumers of a node, and reports unreachable nodes, dependency cycles, and coverage. Use when the user wants to inspect the design graph, find what depends on a token or component, trace how one node reaches another, or check graph health. Activates for requests involving the design context graph, design dependencies, token consumers, component composition, unreachable design nodes, design cycles, or design coverage.",
99
+ "argument_hint": "[nodes --type X | edges --type Z | path <a> <b> | consumers-of <id> | unreachable | cycles | coverage]",
100
+ "tools": "Read, Bash",
101
+ "user_invocable": true,
102
+ "registered_in_phase": "52"
103
+ },
96
104
  {
97
105
  "name": "continue",
98
106
  "description": "Alias for {{command_prefix}}resume - restore session context from the most recent checkpoint.",
@@ -194,6 +202,14 @@
194
202
  "tools": "Read",
195
203
  "disable_model_invocation": true
196
204
  },
205
+ {
206
+ "name": "instinct",
207
+ "description": "Inspects and manages atomic instinct learning units - small, scoped, confidence-weighted patterns the pipeline accumulates across cycles. Lists the project and global instinct stores, searches them by keyword, and promotes a vetted project instinct to the global store once it has cleared the cross-project gate. Use when the user wants to see what instincts exist, find an instinct by topic, or promote one to global scope. Activates for requests involving instincts, learned patterns, instinct promotion, instinct search, or the instinct store.",
208
+ "argument_hint": "[list | query <keyword> | promote <id>] [--scope project|global] [--domain <d>]",
209
+ "tools": "Read, Bash",
210
+ "user_invocable": true,
211
+ "registered_in_phase": "51"
212
+ },
197
213
  {
198
214
  "name": "list-assumptions",
199
215
  "description": "Surfaces hidden design assumptions baked into the codebase before planning - pattern-based detection plus user-surfaced items.",
@@ -236,6 +252,14 @@
236
252
  "user_invocable": true,
237
253
  "tools": "Read, Write, Bash, Grep, Glob"
238
254
  },
255
+ {
256
+ "name": "migrate-context",
257
+ "description": "Migrates a pre-Phase-52 project from the flat .design/map/*.md mapper notes to the typed DesignContext graph at .design/context-graph.json. Reads the old map notes, runs the deterministic extract-*.mjs passes to build mapper fragments, merges them with merge-fragments.mjs, validates the result with validate-design-context.cjs, and flags every low-confidence transform for human review before anything is trusted. Read-first and reversible; --dry-run previews the plan without writing. Use when upgrading a project to the DesignContext graph and .design/map/*.md still holds the only structured design notes. Activates for requests involving migrating design maps, building the context graph from old notes, or DesignContext graph migration.",
258
+ "argument_hint": "[--dry-run]",
259
+ "tools": "Read, Write, Bash",
260
+ "user_invocable": true,
261
+ "registered_in_phase": "52"
262
+ },
239
263
  {
240
264
  "name": "new-cycle",
241
265
  "description": "Start a new design cycle. Creates cycle scope in STATE.md, initializes .design/CYCLES.md entry. Each cycle has its own goal and tracks its own decisions/tasks/pipeline runs.",
@@ -37,7 +37,9 @@ const path = require('node:path');
37
37
 
38
38
  const DEFAULT_EXEMPTIONS = new Set(['index.ts', 'shared.ts']);
39
39
  const DEFAULT_MAX_LOC = 30;
40
- const DEFAULT_TOOL_CAP = 12;
40
+ // Raised 12 -> 13 in Phase 52 (DesignContext keystone, D5) for the read-only
41
+ // `gdd_context_query` tool. Mirrors the cap in sdk/mcp/gdd-mcp/tools/index.ts.
42
+ const DEFAULT_TOOL_CAP = 13;
41
43
  const TOOL_FILE_GLOB = /^gdd_[a-z0-9_]+\.ts$/;
42
44
 
43
45
  const FORBIDDEN_IMPORT_PATTERNS = Object.freeze([
@@ -0,0 +1,60 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "gdd_context_query",
4
+ "type": "object",
5
+ "properties": {
6
+ "input": {
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "required": ["op"],
10
+ "properties": {
11
+ "op": {
12
+ "type": "string",
13
+ "enum": [
14
+ "nodes",
15
+ "edges",
16
+ "path",
17
+ "consumers-of",
18
+ "unreachable",
19
+ "cycles",
20
+ "coverage"
21
+ ],
22
+ "description": "Which read-only query to run over the DesignContext graph."
23
+ },
24
+ "type": {
25
+ "type": "string",
26
+ "description": "Node type (op=nodes) or edge type (op=edges) filter."
27
+ },
28
+ "tag": {
29
+ "type": "string",
30
+ "description": "Tag filter for op=nodes."
31
+ },
32
+ "from": {
33
+ "type": "string",
34
+ "description": "Source node id for op=path."
35
+ },
36
+ "to": {
37
+ "type": "string",
38
+ "description": "Target node id for op=path."
39
+ },
40
+ "id": {
41
+ "type": "string",
42
+ "description": "Node id for op=consumers-of."
43
+ }
44
+ }
45
+ },
46
+ "output": {
47
+ "type": "object",
48
+ "required": ["op", "graph_present", "result"],
49
+ "properties": {
50
+ "op": { "type": "string" },
51
+ "graph_present": { "type": "boolean" },
52
+ "path": { "type": "string" },
53
+ "result": {
54
+ "type": ["array", "object", "null"],
55
+ "description": "Query result; array for nodes/edges/consumers-of/unreachable/cycles, object for path/coverage, null when the graph is absent."
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }