@hegemonart/get-design-done 1.42.0 → 1.44.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 (430) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +1126 -1038
  4. package/README.md +159 -155
  5. package/SKILL.md +42 -42
  6. package/agents/README.md +53 -53
  7. package/agents/a11y-mapper.md +3 -3
  8. package/agents/component-benchmark-harvester.md +8 -8
  9. package/agents/component-benchmark-synthesizer.md +11 -11
  10. package/agents/component-taxonomy-mapper.md +5 -5
  11. package/agents/compose-executor.md +25 -25
  12. package/agents/conflict-resolver.md +8 -8
  13. package/agents/cost-forecaster.md +12 -12
  14. package/agents/decision-journal-exporter.md +5 -5
  15. package/agents/design-advisor.md +19 -19
  16. package/agents/design-assumptions-analyzer.md +16 -16
  17. package/agents/design-auditor.md +39 -39
  18. package/agents/design-authority-watcher.md +28 -28
  19. package/agents/design-component-generator.md +27 -27
  20. package/agents/design-context-builder.md +66 -66
  21. package/agents/design-context-checker-gate.md +5 -5
  22. package/agents/design-context-checker.md +20 -20
  23. package/agents/design-discussant.md +23 -23
  24. package/agents/design-doc-writer.md +12 -12
  25. package/agents/design-executor.md +38 -38
  26. package/agents/design-figma-writer.md +31 -31
  27. package/agents/design-fixer.md +27 -27
  28. package/agents/design-integration-checker-gate.md +5 -5
  29. package/agents/design-integration-checker.md +29 -29
  30. package/agents/design-paper-writer.md +14 -14
  31. package/agents/design-pattern-mapper.md +9 -9
  32. package/agents/design-pencil-writer.md +12 -12
  33. package/agents/design-phase-researcher.md +14 -14
  34. package/agents/design-plan-checker.md +13 -13
  35. package/agents/design-planner.md +24 -24
  36. package/agents/design-reflector.md +48 -48
  37. package/agents/design-research-synthesizer.md +21 -21
  38. package/agents/design-start-writer.md +7 -7
  39. package/agents/design-update-checker.md +8 -8
  40. package/agents/design-verifier-gate.md +5 -5
  41. package/agents/design-verifier.md +80 -80
  42. package/agents/ds-generator.md +14 -14
  43. package/agents/ds-migration-planner.md +12 -12
  44. package/agents/email-executor.md +26 -26
  45. package/agents/experiment-result-ingester.md +10 -10
  46. package/agents/flutter-executor.md +28 -28
  47. package/agents/gdd-graph-refresh.md +10 -10
  48. package/agents/gdd-intel-updater.md +11 -11
  49. package/agents/gdd-learnings-extractor.md +2 -2
  50. package/agents/motion-mapper.md +8 -8
  51. package/agents/motion-verifier.md +16 -16
  52. package/agents/pdf-executor.md +27 -27
  53. package/agents/perf-analyzer.md +20 -20
  54. package/agents/pr-commenter.md +24 -24
  55. package/agents/prototype-gate.md +29 -29
  56. package/agents/quality-gate-runner.md +21 -21
  57. package/agents/rollout-coordinator.md +8 -8
  58. package/agents/swift-executor.md +41 -41
  59. package/agents/ticket-sync-agent.md +19 -19
  60. package/agents/token-mapper.md +6 -6
  61. package/agents/user-research-synthesizer.md +13 -13
  62. package/agents/visual-hierarchy-mapper.md +2 -2
  63. package/dist/claude-code/.claude/skills/add-backlog/SKILL.md +3 -3
  64. package/dist/claude-code/.claude/skills/analyze-dependencies/SKILL.md +10 -10
  65. package/dist/claude-code/.claude/skills/apply-reflections/SKILL.md +13 -13
  66. package/dist/claude-code/.claude/skills/apply-reflections/apply-reflections-procedure.md +20 -20
  67. package/dist/claude-code/.claude/skills/audit/SKILL.md +7 -7
  68. package/dist/claude-code/.claude/skills/bandit-status/SKILL.md +7 -7
  69. package/dist/claude-code/.claude/skills/benchmark/SKILL.md +7 -7
  70. package/dist/claude-code/.claude/skills/bootstrap-ds/SKILL.md +10 -10
  71. package/dist/claude-code/.claude/skills/brief/SKILL.md +20 -20
  72. package/dist/claude-code/.claude/skills/budget/SKILL.md +4 -4
  73. package/dist/claude-code/.claude/skills/cache-manager/SKILL.md +6 -6
  74. package/dist/claude-code/.claude/skills/cache-manager/cache-policy.md +5 -5
  75. package/dist/claude-code/.claude/skills/check-update/SKILL.md +5 -5
  76. package/dist/claude-code/.claude/skills/compare/SKILL.md +15 -15
  77. package/dist/claude-code/.claude/skills/compare/compare-rubric.md +17 -17
  78. package/dist/claude-code/.claude/skills/complete-cycle/SKILL.md +5 -5
  79. package/dist/claude-code/.claude/skills/connections/SKILL.md +11 -11
  80. package/dist/claude-code/.claude/skills/connections/connections-onboarding.md +76 -76
  81. package/dist/claude-code/.claude/skills/continue/SKILL.md +2 -2
  82. package/dist/claude-code/.claude/skills/darkmode/SKILL.md +17 -17
  83. package/dist/claude-code/.claude/skills/darkmode/darkmode-audit-procedure.md +7 -7
  84. package/dist/claude-code/.claude/skills/debug/SKILL.md +3 -3
  85. package/dist/claude-code/.claude/skills/debug/debug-feedback-loops.md +12 -12
  86. package/dist/claude-code/.claude/skills/design/SKILL.md +12 -12
  87. package/dist/claude-code/.claude/skills/design/design-procedure.md +23 -23
  88. package/dist/claude-code/.claude/skills/discover/SKILL.md +7 -7
  89. package/dist/claude-code/.claude/skills/discover/discover-procedure.md +18 -18
  90. package/dist/claude-code/.claude/skills/discuss/SKILL.md +12 -12
  91. package/dist/claude-code/.claude/skills/do/SKILL.md +1 -1
  92. package/dist/claude-code/.claude/skills/explore/SKILL.md +21 -21
  93. package/dist/claude-code/.claude/skills/explore/explore-procedure.md +48 -48
  94. package/dist/claude-code/.claude/skills/export/SKILL.md +9 -9
  95. package/dist/claude-code/.claude/skills/extract-learnings/SKILL.md +5 -5
  96. package/dist/claude-code/.claude/skills/fast/SKILL.md +7 -7
  97. package/dist/claude-code/.claude/skills/figma-extract/SKILL.md +11 -11
  98. package/dist/claude-code/.claude/skills/figma-write/SKILL.md +6 -6
  99. package/dist/claude-code/.claude/skills/graphify/SKILL.md +4 -4
  100. package/dist/claude-code/.claude/skills/health/SKILL.md +16 -16
  101. package/dist/claude-code/.claude/skills/health/health-mcp-detection.md +3 -3
  102. package/dist/claude-code/.claude/skills/health/health-skill-length-report.md +6 -6
  103. package/dist/claude-code/.claude/skills/help/SKILL.md +1 -1
  104. package/dist/claude-code/.claude/skills/list-assumptions/SKILL.md +4 -4
  105. package/dist/claude-code/.claude/skills/map/SKILL.md +12 -12
  106. package/dist/claude-code/.claude/skills/migrate/SKILL.md +5 -5
  107. package/dist/claude-code/.claude/skills/new-cycle/SKILL.md +2 -2
  108. package/dist/claude-code/.claude/skills/new-cycle/milestone-completeness-rubric.md +16 -16
  109. package/dist/claude-code/.claude/skills/new-project/SKILL.md +1 -1
  110. package/dist/claude-code/.claude/skills/next/SKILL.md +5 -5
  111. package/dist/claude-code/.claude/skills/note/SKILL.md +1 -1
  112. package/dist/claude-code/.claude/skills/openrouter-status/SKILL.md +4 -4
  113. package/dist/claude-code/.claude/skills/optimize/SKILL.md +15 -15
  114. package/dist/claude-code/.claude/skills/pause/SKILL.md +5 -5
  115. package/dist/claude-code/.claude/skills/peer-cli-add/SKILL.md +11 -11
  116. package/dist/claude-code/.claude/skills/peer-cli-add/peer-cli-protocol.md +39 -39
  117. package/dist/claude-code/.claude/skills/peer-cli-customize/SKILL.md +14 -14
  118. package/dist/claude-code/.claude/skills/peers/SKILL.md +4 -4
  119. package/dist/claude-code/.claude/skills/plan/SKILL.md +13 -13
  120. package/dist/claude-code/.claude/skills/plan/plan-procedure.md +24 -24
  121. package/dist/claude-code/.claude/skills/plant-seed/SKILL.md +4 -4
  122. package/dist/claude-code/.claude/skills/pr-branch/SKILL.md +2 -2
  123. package/dist/claude-code/.claude/skills/progress/SKILL.md +15 -15
  124. package/dist/claude-code/.claude/skills/quality-gate/SKILL.md +22 -22
  125. package/dist/claude-code/.claude/skills/quality-gate/threat-modeling.md +19 -19
  126. package/dist/claude-code/.claude/skills/quick/SKILL.md +5 -5
  127. package/dist/claude-code/.claude/skills/reapply-patches/SKILL.md +7 -7
  128. package/dist/claude-code/.claude/skills/reflect/SKILL.md +3 -3
  129. package/dist/claude-code/.claude/skills/reflect/procedures/capability-gap-scan.md +11 -11
  130. package/dist/claude-code/.claude/skills/report-issue/SKILL.md +5 -5
  131. package/dist/claude-code/.claude/skills/report-issue/report-issue-procedure.md +27 -27
  132. package/dist/claude-code/.claude/skills/resume/SKILL.md +9 -9
  133. package/dist/claude-code/.claude/skills/review-backlog/SKILL.md +3 -3
  134. package/dist/claude-code/.claude/skills/review-decisions/SKILL.md +3 -3
  135. package/dist/claude-code/.claude/skills/roi/SKILL.md +5 -5
  136. package/dist/claude-code/.claude/skills/rollout-status/SKILL.md +4 -4
  137. package/dist/claude-code/.claude/skills/router/SKILL.md +11 -11
  138. package/dist/claude-code/.claude/skills/router/capability-gap-emitter.md +6 -6
  139. package/dist/claude-code/.claude/skills/router/router-pick-emitter.md +9 -9
  140. package/dist/claude-code/.claude/skills/router/router-rules.md +7 -7
  141. package/dist/claude-code/.claude/skills/scan/SKILL.md +16 -16
  142. package/dist/claude-code/.claude/skills/scan/scan-procedure.md +42 -42
  143. package/dist/claude-code/.claude/skills/settings/SKILL.md +2 -2
  144. package/dist/claude-code/.claude/skills/ship/SKILL.md +7 -7
  145. package/dist/claude-code/.claude/skills/sketch/SKILL.md +10 -10
  146. package/dist/claude-code/.claude/skills/sketch-wrap-up/SKILL.md +12 -12
  147. package/dist/claude-code/.claude/skills/skill-manifest/SKILL.md +5 -5
  148. package/dist/claude-code/.claude/skills/spike/SKILL.md +7 -7
  149. package/dist/claude-code/.claude/skills/spike-wrap-up/SKILL.md +13 -13
  150. package/dist/claude-code/.claude/skills/start/SKILL.md +8 -8
  151. package/dist/claude-code/.claude/skills/start/start-procedure.md +9 -9
  152. package/dist/claude-code/.claude/skills/stats/SKILL.md +5 -5
  153. package/dist/claude-code/.claude/skills/style/SKILL.md +12 -12
  154. package/dist/claude-code/.claude/skills/style/style-doc-procedure.md +12 -12
  155. package/dist/claude-code/.claude/skills/synthesize/SKILL.md +10 -10
  156. package/dist/claude-code/.claude/skills/timeline/SKILL.md +4 -4
  157. package/dist/claude-code/.claude/skills/todo/SKILL.md +3 -3
  158. package/dist/claude-code/.claude/skills/turn-closeout/SKILL.md +10 -10
  159. package/dist/claude-code/.claude/skills/unlock-decision/SKILL.md +3 -3
  160. package/dist/claude-code/.claude/skills/update/SKILL.md +9 -9
  161. package/dist/claude-code/.claude/skills/using-gdd/SKILL.md +17 -17
  162. package/dist/claude-code/.claude/skills/verify/SKILL.md +13 -13
  163. package/dist/claude-code/.claude/skills/verify/verify-procedure.md +34 -34
  164. package/dist/claude-code/.claude/skills/warm-cache/SKILL.md +8 -8
  165. package/dist/claude-code/.claude/skills/watch-authorities/SKILL.md +9 -9
  166. package/dist/claude-code/.claude/skills/zoom-out/SKILL.md +4 -4
  167. package/package.json +9 -2
  168. package/reference/DEPRECATIONS.md +10 -10
  169. package/reference/STATE-TEMPLATE.md +26 -26
  170. package/reference/accessibility.md +13 -13
  171. package/reference/adr-format.md +13 -13
  172. package/reference/ai-native-tool-interface.md +5 -5
  173. package/reference/anti-patterns.md +9 -9
  174. package/reference/architecture-vocabulary.md +31 -31
  175. package/reference/audit-scoring.md +13 -13
  176. package/reference/authority-feeds.md +36 -36
  177. package/reference/bandit-integration.md +25 -25
  178. package/reference/brand-voice.md +36 -36
  179. package/reference/capability-gap-stage-gate.md +20 -20
  180. package/reference/checklists.md +26 -26
  181. package/reference/cli-localization.md +13 -13
  182. package/reference/codex-tools.md +2 -2
  183. package/reference/color-theory.md +28 -28
  184. package/reference/component-authoring.md +4 -4
  185. package/reference/components/README.md +13 -13
  186. package/reference/components/TEMPLATE.md +13 -13
  187. package/reference/components/accordion.md +15 -15
  188. package/reference/components/alert.md +25 -25
  189. package/reference/components/badge.md +18 -18
  190. package/reference/components/breadcrumbs.md +24 -24
  191. package/reference/components/button.md +21 -21
  192. package/reference/components/card.md +13 -13
  193. package/reference/components/checkbox.md +20 -20
  194. package/reference/components/chip.md +20 -20
  195. package/reference/components/command-palette.md +15 -15
  196. package/reference/components/date-picker.md +22 -22
  197. package/reference/components/drawer.md +13 -13
  198. package/reference/components/file-upload.md +22 -22
  199. package/reference/components/input.md +18 -18
  200. package/reference/components/label.md +25 -25
  201. package/reference/components/link.md +19 -19
  202. package/reference/components/list.md +17 -17
  203. package/reference/components/menu.md +19 -19
  204. package/reference/components/modal-dialog.md +16 -16
  205. package/reference/components/navbar.md +19 -19
  206. package/reference/components/pagination.md +18 -18
  207. package/reference/components/popover.md +12 -12
  208. package/reference/components/progress.md +18 -18
  209. package/reference/components/radio.md +17 -17
  210. package/reference/components/rich-text-editor.md +24 -24
  211. package/reference/components/select-combobox.md +16 -16
  212. package/reference/components/sidebar.md +15 -15
  213. package/reference/components/skeleton.md +20 -20
  214. package/reference/components/slider.md +20 -20
  215. package/reference/components/stepper.md +24 -24
  216. package/reference/components/switch.md +19 -19
  217. package/reference/components/table.md +21 -21
  218. package/reference/components/tabs.md +11 -11
  219. package/reference/components/toast.md +19 -19
  220. package/reference/components/tooltip.md +19 -19
  221. package/reference/components/tree.md +17 -17
  222. package/reference/composition.md +38 -38
  223. package/reference/config-schema.md +37 -37
  224. package/reference/context-md-format.md +9 -9
  225. package/reference/contrast-advanced.md +29 -29
  226. package/reference/conversational-ui.md +17 -17
  227. package/reference/cost-governance.md +14 -14
  228. package/reference/css-grid-layout.md +8 -8
  229. package/reference/cycle-handoff-preamble.md +3 -3
  230. package/reference/data-visualization.md +67 -67
  231. package/reference/debugger-philosophy.md +5 -5
  232. package/reference/design-system-guidance.md +21 -21
  233. package/reference/design-systems-catalog.md +20 -20
  234. package/reference/design-variants.md +11 -11
  235. package/reference/domains/civic-patterns.md +10 -10
  236. package/reference/domains/finance-patterns.md +9 -9
  237. package/reference/domains/gaming-patterns.md +9 -9
  238. package/reference/domains/healthcare-patterns.md +11 -11
  239. package/reference/ds-bootstrap-rubric.md +13 -13
  240. package/reference/email-design.md +22 -22
  241. package/reference/emotional-design.md +10 -10
  242. package/reference/error-recovery.md +11 -11
  243. package/reference/export-formats.md +7 -7
  244. package/reference/figma-sandbox.md +6 -6
  245. package/reference/first-principles.md +10 -10
  246. package/reference/form-patterns.md +26 -26
  247. package/reference/framer-motion-patterns.md +49 -49
  248. package/reference/gdd-runtime-audit.md +17 -17
  249. package/reference/gdd-threat-model.md +44 -44
  250. package/reference/gemini-tools.md +3 -3
  251. package/reference/gestalt.md +24 -24
  252. package/reference/heuristics.md +32 -32
  253. package/reference/i18n.md +44 -44
  254. package/reference/iconography.md +24 -24
  255. package/reference/image-optimization.md +14 -14
  256. package/reference/information-architecture.md +47 -47
  257. package/reference/intel-schema.md +1 -1
  258. package/reference/known-failure-modes.md +37 -37
  259. package/reference/meta-rules.md +5 -5
  260. package/reference/migrations/material-3-to-4.md +17 -17
  261. package/reference/migrations/mui-v6.md +16 -16
  262. package/reference/migrations/shadcn-v2.md +25 -25
  263. package/reference/migrations/tailwind-v4.md +21 -21
  264. package/reference/model-prices.md +3 -3
  265. package/reference/model-tiers.md +40 -40
  266. package/reference/motion-advanced.md +21 -21
  267. package/reference/motion-easings.md +29 -29
  268. package/reference/motion-interpolate.md +1 -1
  269. package/reference/motion-spring.md +13 -13
  270. package/reference/motion-transition-taxonomy.md +34 -34
  271. package/reference/motion.md +31 -31
  272. package/reference/multi-author-model.md +13 -13
  273. package/reference/native-platforms.md +28 -28
  274. package/reference/notification-routing.md +6 -6
  275. package/reference/onboarding-progressive-disclosure.md +32 -32
  276. package/reference/openrouter-tier-mapping.md +8 -8
  277. package/reference/palette-catalog.md +37 -37
  278. package/reference/parallelism-rules.md +20 -20
  279. package/reference/peer-cli-capabilities.md +14 -14
  280. package/reference/peer-protocols.md +21 -21
  281. package/reference/perf-budget.md +21 -21
  282. package/reference/performance.md +22 -22
  283. package/reference/platforms.md +51 -51
  284. package/reference/pr-review-integration.md +7 -7
  285. package/reference/prices/antigravity.md +3 -3
  286. package/reference/prices/augment.md +3 -3
  287. package/reference/prices/claude.md +2 -2
  288. package/reference/prices/cline.md +4 -4
  289. package/reference/prices/codebuddy.md +3 -3
  290. package/reference/prices/codex.md +2 -2
  291. package/reference/prices/copilot.md +3 -3
  292. package/reference/prices/cursor.md +3 -3
  293. package/reference/prices/gemini.md +2 -2
  294. package/reference/prices/kilo.md +3 -3
  295. package/reference/prices/opencode.md +4 -4
  296. package/reference/prices/qwen.md +2 -2
  297. package/reference/prices/trae.md +3 -3
  298. package/reference/prices/windsurf.md +3 -3
  299. package/reference/prices.openrouter.md +5 -5
  300. package/reference/print-design.md +36 -36
  301. package/reference/priority-matrix.md +2 -2
  302. package/reference/project-skills-guide.md +3 -3
  303. package/reference/proportion-systems.md +23 -23
  304. package/reference/pseudonymization-rules.md +30 -30
  305. package/reference/retrieval-contract.md +14 -14
  306. package/reference/review-format.md +7 -7
  307. package/reference/rollout-coordination.md +10 -10
  308. package/reference/rtl-cjk-cultural.md +39 -39
  309. package/reference/runtime-models.md +28 -28
  310. package/reference/shared-preamble.md +26 -26
  311. package/reference/skill-authoring-contract.md +16 -16
  312. package/reference/skill-placeholders.md +3 -3
  313. package/reference/start-interview.md +10 -10
  314. package/reference/style-vocabulary.md +25 -25
  315. package/reference/surfaces.md +4 -4
  316. package/reference/ticket-sync.md +9 -9
  317. package/reference/typography.md +64 -64
  318. package/reference/user-research.md +54 -54
  319. package/reference/variable-fonts-loading.md +15 -15
  320. package/reference/visual-hierarchy-layout.md +41 -41
  321. package/scripts/lib/harness-freshness.cjs +59 -0
  322. package/scripts/lib/health-mirror/index.cjs +27 -0
  323. package/scripts/lib/manifest/harnesses.json +280 -14
  324. package/scripts/lib/manifest/prose-denylist.json +1 -1
  325. package/scripts/lib/manifest/schemas/harnesses.schema.json +32 -0
  326. package/sdk/mcp/gdd-mcp/server.js +125 -0
  327. package/skills/add-backlog/SKILL.md +3 -3
  328. package/skills/analyze-dependencies/SKILL.md +10 -10
  329. package/skills/apply-reflections/SKILL.md +13 -13
  330. package/skills/apply-reflections/apply-reflections-procedure.md +20 -20
  331. package/skills/audit/SKILL.md +7 -7
  332. package/skills/bandit-status/SKILL.md +7 -7
  333. package/skills/benchmark/SKILL.md +7 -7
  334. package/skills/bootstrap-ds/SKILL.md +10 -10
  335. package/skills/brief/SKILL.md +20 -20
  336. package/skills/budget/SKILL.md +4 -4
  337. package/skills/cache-manager/SKILL.md +6 -6
  338. package/skills/cache-manager/cache-policy.md +5 -5
  339. package/skills/check-update/SKILL.md +5 -5
  340. package/skills/compare/SKILL.md +15 -15
  341. package/skills/compare/compare-rubric.md +17 -17
  342. package/skills/complete-cycle/SKILL.md +5 -5
  343. package/skills/connections/SKILL.md +11 -11
  344. package/skills/connections/connections-onboarding.md +76 -76
  345. package/skills/continue/SKILL.md +2 -2
  346. package/skills/darkmode/SKILL.md +17 -17
  347. package/skills/darkmode/darkmode-audit-procedure.md +7 -7
  348. package/skills/debug/SKILL.md +3 -3
  349. package/skills/debug/debug-feedback-loops.md +12 -12
  350. package/skills/design/SKILL.md +12 -12
  351. package/skills/design/design-procedure.md +23 -23
  352. package/skills/discover/SKILL.md +7 -7
  353. package/skills/discover/discover-procedure.md +18 -18
  354. package/skills/discuss/SKILL.md +12 -12
  355. package/skills/do/SKILL.md +1 -1
  356. package/skills/explore/SKILL.md +21 -21
  357. package/skills/explore/explore-procedure.md +48 -48
  358. package/skills/export/SKILL.md +9 -9
  359. package/skills/extract-learnings/SKILL.md +5 -5
  360. package/skills/fast/SKILL.md +7 -7
  361. package/skills/figma-extract/SKILL.md +11 -11
  362. package/skills/figma-write/SKILL.md +6 -6
  363. package/skills/graphify/SKILL.md +4 -4
  364. package/skills/health/SKILL.md +16 -16
  365. package/skills/health/health-mcp-detection.md +3 -3
  366. package/skills/health/health-skill-length-report.md +6 -6
  367. package/skills/help/SKILL.md +1 -1
  368. package/skills/list-assumptions/SKILL.md +4 -4
  369. package/skills/map/SKILL.md +12 -12
  370. package/skills/migrate/SKILL.md +5 -5
  371. package/skills/new-cycle/SKILL.md +2 -2
  372. package/skills/new-cycle/milestone-completeness-rubric.md +16 -16
  373. package/skills/new-project/SKILL.md +1 -1
  374. package/skills/next/SKILL.md +5 -5
  375. package/skills/note/SKILL.md +1 -1
  376. package/skills/openrouter-status/SKILL.md +4 -4
  377. package/skills/optimize/SKILL.md +15 -15
  378. package/skills/pause/SKILL.md +5 -5
  379. package/skills/peer-cli-add/SKILL.md +11 -11
  380. package/skills/peer-cli-add/peer-cli-protocol.md +39 -39
  381. package/skills/peer-cli-customize/SKILL.md +14 -14
  382. package/skills/peers/SKILL.md +4 -4
  383. package/skills/plan/SKILL.md +13 -13
  384. package/skills/plan/plan-procedure.md +24 -24
  385. package/skills/plant-seed/SKILL.md +4 -4
  386. package/skills/pr-branch/SKILL.md +2 -2
  387. package/skills/progress/SKILL.md +15 -15
  388. package/skills/quality-gate/SKILL.md +22 -22
  389. package/skills/quality-gate/threat-modeling.md +19 -19
  390. package/skills/quick/SKILL.md +5 -5
  391. package/skills/reapply-patches/SKILL.md +7 -7
  392. package/skills/reflect/SKILL.md +3 -3
  393. package/skills/reflect/procedures/capability-gap-scan.md +11 -11
  394. package/skills/report-issue/SKILL.md +5 -5
  395. package/skills/report-issue/report-issue-procedure.md +27 -27
  396. package/skills/resume/SKILL.md +9 -9
  397. package/skills/review-backlog/SKILL.md +3 -3
  398. package/skills/review-decisions/SKILL.md +3 -3
  399. package/skills/roi/SKILL.md +5 -5
  400. package/skills/rollout-status/SKILL.md +4 -4
  401. package/skills/router/SKILL.md +11 -11
  402. package/skills/router/capability-gap-emitter.md +6 -6
  403. package/skills/router/router-pick-emitter.md +9 -9
  404. package/skills/router/router-rules.md +7 -7
  405. package/skills/scan/SKILL.md +16 -16
  406. package/skills/scan/scan-procedure.md +42 -42
  407. package/skills/settings/SKILL.md +2 -2
  408. package/skills/ship/SKILL.md +7 -7
  409. package/skills/sketch/SKILL.md +10 -10
  410. package/skills/sketch-wrap-up/SKILL.md +12 -12
  411. package/skills/skill-manifest/SKILL.md +5 -5
  412. package/skills/spike/SKILL.md +7 -7
  413. package/skills/spike-wrap-up/SKILL.md +13 -13
  414. package/skills/start/SKILL.md +8 -8
  415. package/skills/start/start-procedure.md +9 -9
  416. package/skills/stats/SKILL.md +5 -5
  417. package/skills/style/SKILL.md +12 -12
  418. package/skills/style/style-doc-procedure.md +12 -12
  419. package/skills/synthesize/SKILL.md +10 -10
  420. package/skills/timeline/SKILL.md +4 -4
  421. package/skills/todo/SKILL.md +3 -3
  422. package/skills/turn-closeout/SKILL.md +10 -10
  423. package/skills/unlock-decision/SKILL.md +3 -3
  424. package/skills/update/SKILL.md +9 -9
  425. package/skills/using-gdd/SKILL.md +17 -17
  426. package/skills/verify/SKILL.md +13 -13
  427. package/skills/verify/verify-procedure.md +34 -34
  428. package/skills/warm-cache/SKILL.md +8 -8
  429. package/skills/watch-authorities/SKILL.md +9 -9
  430. package/skills/zoom-out/SKILL.md +4 -4
@@ -7,85 +7,351 @@
7
7
  "id": "claude",
8
8
  "name": "Claude Code",
9
9
  "config_dir": ".claude",
10
- "runtime_models_ref": "reference/runtime-models.md#claude"
10
+ "runtime_models_ref": "reference/runtime-models.md#claude",
11
+ "capability_matrix": {
12
+ "skill_discovery": true,
13
+ "frontmatter_fields_supported": [
14
+ "name",
15
+ "description",
16
+ "argument-hint",
17
+ "tools",
18
+ "disable-model-invocation"
19
+ ],
20
+ "command_syntax": "/gdd:<skill>",
21
+ "mcp_support": true,
22
+ "placeholder_substitution": true,
23
+ "install_path": "dist/claude-code/.claude/skills/",
24
+ "status": "tested"
25
+ },
26
+ "last_verified": "2026-06-02",
27
+ "capability_notes": "Host runtime. Marketplace-registered, end-to-end documented, Phase 42 golden baseline.",
28
+ "fragment_links": [
29
+ "reference/runtime-models.md#claude---claude-code"
30
+ ]
11
31
  },
12
32
  {
13
33
  "id": "codex",
14
34
  "name": "OpenAI Codex CLI",
15
35
  "config_dir": ".codex",
16
- "runtime_models_ref": "reference/runtime-models.md#codex"
36
+ "runtime_models_ref": "reference/runtime-models.md#codex",
37
+ "capability_matrix": {
38
+ "skill_discovery": true,
39
+ "frontmatter_fields_supported": [
40
+ "name",
41
+ "description",
42
+ "tools"
43
+ ],
44
+ "command_syntax": "/gdd-<skill>",
45
+ "mcp_support": true,
46
+ "placeholder_substitution": true,
47
+ "install_path": "dist/codex/.codex/skills/",
48
+ "status": "experimental"
49
+ },
50
+ "last_verified": null,
51
+ "capability_notes": "Peer-CLI delegation target (ASP). Flat /gdd- command namespace. MCP auto-registered.",
52
+ "fragment_links": [
53
+ "reference/runtime-models.md#codex---openai-codex-cli",
54
+ "reference/codex-tools.md#tool-name-mapping",
55
+ "reference/peer-cli-capabilities.md#codex-asp",
56
+ "reference/peer-protocols.md#asp---app-server-protocol-codex"
57
+ ]
17
58
  },
18
59
  {
19
60
  "id": "gemini",
20
61
  "name": "Gemini CLI",
21
62
  "config_dir": ".gemini",
22
- "runtime_models_ref": "reference/runtime-models.md#gemini"
63
+ "runtime_models_ref": "reference/runtime-models.md#gemini",
64
+ "capability_matrix": {
65
+ "skill_discovery": true,
66
+ "frontmatter_fields_supported": [
67
+ "name",
68
+ "description",
69
+ "tools"
70
+ ],
71
+ "command_syntax": "/gdd:<skill>",
72
+ "mcp_support": true,
73
+ "placeholder_substitution": true,
74
+ "install_path": "dist/gemini/.gemini/skills/",
75
+ "status": "experimental"
76
+ },
77
+ "last_verified": null,
78
+ "capability_notes": "",
79
+ "fragment_links": [
80
+ "reference/runtime-models.md#gemini---gemini-cli",
81
+ "reference/gemini-tools.md#tool-name-mapping",
82
+ "reference/peer-cli-capabilities.md#gemini-acp",
83
+ "reference/peer-protocols.md#acp---agent-client-protocol"
84
+ ]
23
85
  },
24
86
  {
25
87
  "id": "qwen",
26
88
  "name": "Qwen Code",
27
89
  "config_dir": ".qwen",
28
- "runtime_models_ref": "reference/runtime-models.md#qwen"
90
+ "runtime_models_ref": "reference/runtime-models.md#qwen",
91
+ "capability_matrix": {
92
+ "skill_discovery": true,
93
+ "frontmatter_fields_supported": [
94
+ "name",
95
+ "description",
96
+ "tools"
97
+ ],
98
+ "command_syntax": "/gdd:<skill>",
99
+ "mcp_support": false,
100
+ "placeholder_substitution": true,
101
+ "install_path": "dist/qwen/.qwen/skills/",
102
+ "status": "experimental"
103
+ },
104
+ "last_verified": null,
105
+ "capability_notes": "",
106
+ "fragment_links": [
107
+ "reference/runtime-models.md#qwen---qwen-code",
108
+ "reference/peer-cli-capabilities.md#qwen-acp",
109
+ "reference/peer-protocols.md#acp---agent-client-protocol"
110
+ ]
29
111
  },
30
112
  {
31
113
  "id": "kilo",
32
114
  "name": "Kilo Code",
33
115
  "config_dir": ".kilo",
34
- "runtime_models_ref": "reference/runtime-models.md#kilo"
116
+ "runtime_models_ref": "reference/runtime-models.md#kilo",
117
+ "capability_matrix": {
118
+ "skill_discovery": true,
119
+ "frontmatter_fields_supported": [
120
+ "name",
121
+ "description",
122
+ "tools"
123
+ ],
124
+ "command_syntax": "/gdd:<skill>",
125
+ "mcp_support": false,
126
+ "placeholder_substitution": true,
127
+ "install_path": "dist/kilo/.kilo/skills/",
128
+ "status": "untested"
129
+ },
130
+ "last_verified": null,
131
+ "capability_notes": "",
132
+ "fragment_links": [
133
+ "reference/runtime-models.md#kilo---kilo-code"
134
+ ]
35
135
  },
36
136
  {
37
137
  "id": "copilot",
38
138
  "name": "GitHub Copilot CLI",
39
139
  "config_dir": ".copilot",
40
- "runtime_models_ref": "reference/runtime-models.md#copilot"
140
+ "runtime_models_ref": "reference/runtime-models.md#copilot",
141
+ "capability_matrix": {
142
+ "skill_discovery": true,
143
+ "frontmatter_fields_supported": [
144
+ "name",
145
+ "description",
146
+ "tools"
147
+ ],
148
+ "command_syntax": "/gdd:<skill>",
149
+ "mcp_support": false,
150
+ "placeholder_substitution": true,
151
+ "install_path": "dist/copilot/.copilot/skills/",
152
+ "status": "experimental"
153
+ },
154
+ "last_verified": null,
155
+ "capability_notes": "",
156
+ "fragment_links": [
157
+ "reference/runtime-models.md#copilot---github-copilot-cli",
158
+ "reference/peer-cli-capabilities.md#copilot-acp",
159
+ "reference/peer-protocols.md#acp---agent-client-protocol"
160
+ ]
41
161
  },
42
162
  {
43
163
  "id": "cursor",
44
164
  "name": "Cursor",
45
165
  "config_dir": ".cursor",
46
- "runtime_models_ref": "reference/runtime-models.md#cursor"
166
+ "runtime_models_ref": "reference/runtime-models.md#cursor",
167
+ "capability_matrix": {
168
+ "skill_discovery": true,
169
+ "frontmatter_fields_supported": [
170
+ "name",
171
+ "description",
172
+ "tools"
173
+ ],
174
+ "command_syntax": "/gdd:<skill>",
175
+ "mcp_support": false,
176
+ "placeholder_substitution": true,
177
+ "install_path": "dist/cursor/.cursor/skills/",
178
+ "status": "experimental"
179
+ },
180
+ "last_verified": null,
181
+ "capability_notes": "",
182
+ "fragment_links": [
183
+ "reference/runtime-models.md#cursor---cursor",
184
+ "reference/peer-cli-capabilities.md#cursor-acp",
185
+ "reference/peer-protocols.md#acp---agent-client-protocol"
186
+ ]
47
187
  },
48
188
  {
49
189
  "id": "windsurf",
50
190
  "name": "Windsurf (Cascade)",
51
191
  "config_dir": ".windsurf",
52
- "runtime_models_ref": "reference/runtime-models.md#windsurf"
192
+ "runtime_models_ref": "reference/runtime-models.md#windsurf",
193
+ "capability_matrix": {
194
+ "skill_discovery": true,
195
+ "frontmatter_fields_supported": [
196
+ "name",
197
+ "description",
198
+ "tools"
199
+ ],
200
+ "command_syntax": "/gdd:<skill>",
201
+ "mcp_support": false,
202
+ "placeholder_substitution": true,
203
+ "install_path": "dist/windsurf/.windsurf/skills/",
204
+ "status": "untested"
205
+ },
206
+ "last_verified": null,
207
+ "capability_notes": "",
208
+ "fragment_links": [
209
+ "reference/runtime-models.md#windsurf---windsurf"
210
+ ]
53
211
  },
54
212
  {
55
213
  "id": "antigravity",
56
214
  "name": "Antigravity",
57
215
  "config_dir": ".antigravity",
58
- "runtime_models_ref": "reference/runtime-models.md#antigravity"
216
+ "runtime_models_ref": "reference/runtime-models.md#antigravity",
217
+ "capability_matrix": {
218
+ "skill_discovery": true,
219
+ "frontmatter_fields_supported": [
220
+ "name",
221
+ "description",
222
+ "tools"
223
+ ],
224
+ "command_syntax": "/gdd:<skill>",
225
+ "mcp_support": false,
226
+ "placeholder_substitution": true,
227
+ "install_path": "dist/antigravity/.antigravity/skills/",
228
+ "status": "untested"
229
+ },
230
+ "last_verified": null,
231
+ "capability_notes": "",
232
+ "fragment_links": [
233
+ "reference/runtime-models.md#antigravity---antigravity"
234
+ ]
59
235
  },
60
236
  {
61
237
  "id": "augment",
62
238
  "name": "Augment",
63
239
  "config_dir": ".augment",
64
- "runtime_models_ref": "reference/runtime-models.md#augment"
240
+ "runtime_models_ref": "reference/runtime-models.md#augment",
241
+ "capability_matrix": {
242
+ "skill_discovery": true,
243
+ "frontmatter_fields_supported": [
244
+ "name",
245
+ "description",
246
+ "tools"
247
+ ],
248
+ "command_syntax": "/gdd:<skill>",
249
+ "mcp_support": false,
250
+ "placeholder_substitution": true,
251
+ "install_path": "dist/augment/.augment/skills/",
252
+ "status": "untested"
253
+ },
254
+ "last_verified": null,
255
+ "capability_notes": "",
256
+ "fragment_links": [
257
+ "reference/runtime-models.md#augment---augment"
258
+ ]
65
259
  },
66
260
  {
67
261
  "id": "trae",
68
262
  "name": "Trae",
69
263
  "config_dir": ".trae",
70
- "runtime_models_ref": "reference/runtime-models.md#trae"
264
+ "runtime_models_ref": "reference/runtime-models.md#trae",
265
+ "capability_matrix": {
266
+ "skill_discovery": true,
267
+ "frontmatter_fields_supported": [
268
+ "name",
269
+ "description",
270
+ "tools"
271
+ ],
272
+ "command_syntax": "/gdd:<skill>",
273
+ "mcp_support": false,
274
+ "placeholder_substitution": true,
275
+ "install_path": "dist/trae/.trae/skills/",
276
+ "status": "untested"
277
+ },
278
+ "last_verified": null,
279
+ "capability_notes": "",
280
+ "fragment_links": [
281
+ "reference/runtime-models.md#trae---trae"
282
+ ]
71
283
  },
72
284
  {
73
285
  "id": "codebuddy",
74
286
  "name": "CodeBuddy",
75
287
  "config_dir": ".codebuddy",
76
- "runtime_models_ref": "reference/runtime-models.md#codebuddy"
288
+ "runtime_models_ref": "reference/runtime-models.md#codebuddy",
289
+ "capability_matrix": {
290
+ "skill_discovery": true,
291
+ "frontmatter_fields_supported": [
292
+ "name",
293
+ "description",
294
+ "tools"
295
+ ],
296
+ "command_syntax": "/gdd:<skill>",
297
+ "mcp_support": false,
298
+ "placeholder_substitution": true,
299
+ "install_path": "dist/codebuddy/.codebuddy/skills/",
300
+ "status": "untested"
301
+ },
302
+ "last_verified": null,
303
+ "capability_notes": "",
304
+ "fragment_links": [
305
+ "reference/runtime-models.md#codebuddy---codebuddy"
306
+ ]
77
307
  },
78
308
  {
79
309
  "id": "cline",
80
310
  "name": "Cline",
81
311
  "config_dir": ".cline",
82
- "runtime_models_ref": "reference/runtime-models.md#cline"
312
+ "runtime_models_ref": "reference/runtime-models.md#cline",
313
+ "capability_matrix": {
314
+ "skill_discovery": true,
315
+ "frontmatter_fields_supported": [
316
+ "name",
317
+ "description",
318
+ "tools"
319
+ ],
320
+ "command_syntax": "/gdd:<skill>",
321
+ "mcp_support": false,
322
+ "placeholder_substitution": true,
323
+ "install_path": "dist/cline/.cline/skills/",
324
+ "status": "untested"
325
+ },
326
+ "last_verified": null,
327
+ "capability_notes": "Installs into .clinerules at install time (clinerules-embed special case); dist/cline/ is the compile artifact only.",
328
+ "fragment_links": [
329
+ "reference/runtime-models.md#cline---cline"
330
+ ]
83
331
  },
84
332
  {
85
333
  "id": "opencode",
86
334
  "name": "OpenCode",
87
335
  "config_dir": ".opencode",
88
- "runtime_models_ref": "reference/runtime-models.md#opencode"
336
+ "runtime_models_ref": "reference/runtime-models.md#opencode",
337
+ "capability_matrix": {
338
+ "skill_discovery": true,
339
+ "frontmatter_fields_supported": [
340
+ "name",
341
+ "description",
342
+ "tools"
343
+ ],
344
+ "command_syntax": "/gdd:<skill>",
345
+ "mcp_support": false,
346
+ "placeholder_substitution": true,
347
+ "install_path": "dist/opencode/.opencode/skills/",
348
+ "status": "untested"
349
+ },
350
+ "last_verified": null,
351
+ "capability_notes": "",
352
+ "fragment_links": [
353
+ "reference/runtime-models.md#opencode---opencode"
354
+ ]
89
355
  }
90
356
  ]
91
357
  }
@@ -115,7 +115,7 @@
115
115
  {
116
116
  "pattern": "\\u2014",
117
117
  "kind": "token",
118
- "note": "Em dash banned in the project's own user-facing prose (Phase 43)."
118
+ "note": "Em dash - banned in the project's own user-facing prose (Phase 43)."
119
119
  },
120
120
  {
121
121
  "pattern": "--",
@@ -30,6 +30,38 @@
30
30
  "name": {
31
31
  "type": "string",
32
32
  "minLength": 1
33
+ },
34
+ "last_verified": {
35
+ "type": ["string", "null"],
36
+ "description": "YYYY-MM-DD of the last verify-harness run; null if never verified (Phase 44)."
37
+ },
38
+ "capability_notes": {
39
+ "type": "string"
40
+ },
41
+ "fragment_links": {
42
+ "type": "array",
43
+ "items": { "type": "string" }
44
+ },
45
+ "capability_matrix": {
46
+ "type": "object",
47
+ "description": "Phase 44 harness capability matrix (a view of this SoT; HARNESSES.md is generated from it).",
48
+ "additionalProperties": true,
49
+ "required": ["status", "command_syntax", "install_path"],
50
+ "properties": {
51
+ "skill_discovery": { "type": "boolean" },
52
+ "frontmatter_fields_supported": {
53
+ "type": "array",
54
+ "items": { "type": "string" }
55
+ },
56
+ "command_syntax": { "type": "string", "minLength": 1 },
57
+ "mcp_support": { "type": "boolean" },
58
+ "placeholder_substitution": { "type": "boolean" },
59
+ "install_path": { "type": "string", "minLength": 1 },
60
+ "status": {
61
+ "type": "string",
62
+ "enum": ["tested", "experimental", "untested", "known-broken"]
63
+ }
64
+ }
33
65
  }
34
66
  }
35
67
  }
@@ -136,6 +136,107 @@ var require_kill_switch = __commonJS({
136
136
  }
137
137
  });
138
138
 
139
+ // scripts/lib/manifest/loader.cjs
140
+ var require_loader = __commonJS({
141
+ "scripts/lib/manifest/loader.cjs"(exports2, module2) {
142
+ "use strict";
143
+ var fs = require("node:fs");
144
+ var path = require("node:path");
145
+ var MANIFEST_DIR = __dirname;
146
+ var _cache = /* @__PURE__ */ new Map();
147
+ function reset() {
148
+ _cache.clear();
149
+ }
150
+ function load(name13, opts) {
151
+ const o = opts || {};
152
+ const dir = o.dir || MANIFEST_DIR;
153
+ const fallback = Object.prototype.hasOwnProperty.call(o, "fallback") ? o.fallback : {};
154
+ const abs = path.join(dir, `${name13}.json`);
155
+ let stat;
156
+ try {
157
+ stat = fs.statSync(abs);
158
+ } catch {
159
+ if (!o.quiet) process.stderr.write(`manifest: ${name13}.json not found \u2014 using empty fallback (a consumer phase may not have shipped its data yet)
160
+ `);
161
+ return fallback;
162
+ }
163
+ const cached = _cache.get(abs);
164
+ if (cached && cached.mtimeMs === stat.mtimeMs) return cached.data;
165
+ try {
166
+ const data = JSON.parse(fs.readFileSync(abs, "utf8"));
167
+ _cache.set(abs, { mtimeMs: stat.mtimeMs, data });
168
+ return data;
169
+ } catch (e) {
170
+ if (!o.quiet) process.stderr.write(`manifest: ${name13}.json parse error (${e.message}) \u2014 using empty fallback
171
+ `);
172
+ return fallback;
173
+ }
174
+ }
175
+ module2.exports = { load, reset, MANIFEST_DIR };
176
+ }
177
+ });
178
+
179
+ // scripts/lib/manifest/index.cjs
180
+ var require_manifest = __commonJS({
181
+ "scripts/lib/manifest/index.cjs"(exports2, module2) {
182
+ "use strict";
183
+ var loader = require_loader();
184
+ function readHarnesses(opts) {
185
+ return loader.load("harnesses", { ...opts, fallback: { schema_version: 1, generated_at: null, harnesses: [] } });
186
+ }
187
+ function readSkills(opts) {
188
+ return loader.load("skills", { ...opts, fallback: { schema_version: 1, skills: [] } });
189
+ }
190
+ function readProseDenylist(opts) {
191
+ return loader.load("prose-denylist", { ...opts, fallback: { schema_version: 1, tells: [] } });
192
+ }
193
+ module2.exports = {
194
+ readHarnesses,
195
+ readSkills,
196
+ readProseDenylist,
197
+ reset: loader.reset,
198
+ MANIFEST_DIR: loader.MANIFEST_DIR
199
+ };
200
+ }
201
+ });
202
+
203
+ // scripts/lib/harness-freshness.cjs
204
+ var require_harness_freshness = __commonJS({
205
+ "scripts/lib/harness-freshness.cjs"(exports2, module2) {
206
+ "use strict";
207
+ var { readHarnesses } = require_manifest();
208
+ var WARN_DAYS = 60;
209
+ var FAIL_DAYS = 180;
210
+ var MS_PER_DAY = 864e5;
211
+ function ageInDays(last_verified, nowMs) {
212
+ if (!last_verified) return Infinity;
213
+ const t = Date.parse(last_verified);
214
+ if (!Number.isFinite(t)) return Infinity;
215
+ return (nowMs - t) / MS_PER_DAY;
216
+ }
217
+ function checkFreshness({ nowMs, harnesses } = {}) {
218
+ const list = harnesses || readHarnesses().harnesses || [];
219
+ const now = typeof nowMs === "number" ? nowMs : Date.now();
220
+ return list.map((h) => {
221
+ const status = h.capability_matrix && h.capability_matrix.status || "untested";
222
+ const age = ageInDays(h.last_verified, now);
223
+ let freshness = "n/a";
224
+ if (status === "tested") {
225
+ freshness = age >= FAIL_DAYS ? "fail" : age >= WARN_DAYS ? "warn" : "ok";
226
+ }
227
+ return {
228
+ id: h.id,
229
+ status,
230
+ last_verified: h.last_verified || null,
231
+ age_days: Number.isFinite(age) ? Math.floor(age) : null,
232
+ freshness
233
+ };
234
+ });
235
+ }
236
+ module2.exports = { checkFreshness, ageInDays, WARN_DAYS, FAIL_DAYS };
237
+ }
238
+ });
239
+
139
240
  // scripts/lib/health-mirror/index.cjs
140
241
  var require_health_mirror = __commonJS({
141
242
  "scripts/lib/health-mirror/index.cjs"(exports2, module2) {
@@ -143,6 +244,7 @@ var require_health_mirror = __commonJS({
143
244
  var fs = require("node:fs");
144
245
  var path = require("node:path");
145
246
  var { getDisableReason } = require_kill_switch();
247
+ var { checkFreshness, WARN_DAYS, FAIL_DAYS } = require_harness_freshness();
146
248
  function fileExists(p) {
147
249
  try {
148
250
  return fs.statSync(p).isFile();
@@ -270,6 +372,29 @@ var require_health_mirror = __commonJS({
270
372
  }
271
373
  checks.push({ name: "skill_discipline", status, detail });
272
374
  }
375
+ {
376
+ let status = "ok";
377
+ let detail;
378
+ try {
379
+ const results = checkFreshness();
380
+ const failing = results.filter((r) => r.freshness === "fail");
381
+ const warning = results.filter((r) => r.freshness === "warn");
382
+ const tested = results.filter((r) => r.status === "tested");
383
+ if (failing.length) {
384
+ status = "fail";
385
+ detail = `harness freshness: ${failing.length} stale (>${FAIL_DAYS}d): ${failing.map((r) => r.id).join(", ")}`;
386
+ } else if (warning.length) {
387
+ status = "warn";
388
+ detail = `harness freshness: ${warning.length} aging (>${WARN_DAYS}d): ${warning.map((r) => r.id).join(", ")}`;
389
+ } else {
390
+ detail = `harness freshness: ${tested.length} tested harness(es) current`;
391
+ }
392
+ } catch {
393
+ status = "warn";
394
+ detail = "harness freshness: unavailable";
395
+ }
396
+ checks.push({ name: "harness_freshness", status, detail });
397
+ }
273
398
  return { checks };
274
399
  }
275
400
  function sessionStartWiresInject(rootDir) {
@@ -10,11 +10,11 @@ disable-model-invocation: true
10
10
 
11
11
  **Role:** Long-term parking lot for design ideas. Backing store: `.design/backlog/BACKLOG.md`.
12
12
 
13
- ## Step 1 Get text
13
+ ## Step 1 - Get text
14
14
 
15
15
  If `$ARGUMENTS` is empty, ask the user: "What should be added to the backlog?"
16
16
 
17
- ## Step 2 Append
17
+ ## Step 2 - Append
18
18
 
19
19
  Create `.design/backlog/` directory and `BACKLOG.md` with `# Design Backlog` header if missing.
20
20
 
@@ -43,6 +43,6 @@ Promote later via: /gdd:review-backlog
43
43
  ## Constraints
44
44
 
45
45
  - Do not modify files outside `.design/backlog/`.
46
- - Do not set status to anything other than `parked` here `/gdd:review-backlog` owns status transitions.
46
+ - Do not set status to anything other than `parked` here - `/gdd:review-backlog` owns status transitions.
47
47
 
48
48
  ## ADD-BACKLOG COMPLETE
@@ -6,7 +6,7 @@ tools: Bash, Read, Glob, Grep
6
6
 
7
7
  # /gdd:analyze-dependencies
8
8
 
9
- **Role:** Surface dependency relationships, token usage spread, component graphs, and decision traceability using `.design/intel/`. All queries are O(1) reads against pre-built JSON slices no file greps. See `./reference/heuristics.md` for the underlying dependency-analysis heuristics (fan-out thresholds, orphan-token criteria, cycle-detection bias).
9
+ **Role:** Surface dependency relationships, token usage spread, component graphs, and decision traceability using `.design/intel/`. All queries are O(1) reads against pre-built JSON slices - no file greps. See `./reference/heuristics.md` for the underlying dependency-analysis heuristics (fan-out thresholds, orphan-token criteria, cycle-detection bias).
10
10
 
11
11
  ## Pre-flight
12
12
 
@@ -26,13 +26,13 @@ Then re-run /gdd:analyze-dependencies.
26
26
 
27
27
  ## Usage modes
28
28
 
29
- - `/gdd:analyze-dependencies` run all four analyses and print a combined report
30
- - `/gdd:analyze-dependencies tokens` token fan-out only
31
- - `/gdd:analyze-dependencies components` component call-graph only
32
- - `/gdd:analyze-dependencies decisions` decision traceability only
33
- - `/gdd:analyze-dependencies circular` circular dependency detection only
29
+ - `/gdd:analyze-dependencies` - run all four analyses and print a combined report
30
+ - `/gdd:analyze-dependencies tokens` - token fan-out only
31
+ - `/gdd:analyze-dependencies components` - component call-graph only
32
+ - `/gdd:analyze-dependencies decisions` - decision traceability only
33
+ - `/gdd:analyze-dependencies circular` - circular dependency detection only
34
34
 
35
- ## Analysis 1 Token fan-out
35
+ ## Analysis 1 - Token fan-out
36
36
 
37
37
  Surfaces tokens referenced in many files + orphans (referenced exactly once).
38
38
 
@@ -42,7 +42,7 @@ Surfaces tokens referenced in many files + orphans (referenced exactly once).
42
42
 
43
43
  Header: `━━━ Token fan-out ━━━` … `(top 20 shown)` … `Orphaned tokens (referenced in exactly 1 file):` … footer rule.
44
44
 
45
- ## Analysis 2 Component call-graph
45
+ ## Analysis 2 - Component call-graph
46
46
 
47
47
  Surfaces widely-referenced components and the files referencing each.
48
48
 
@@ -52,7 +52,7 @@ Surfaces widely-referenced components and the files referencing each.
52
52
 
53
53
  Header: `━━━ Component call-graph ━━━` … footer rule.
54
54
 
55
- ## Analysis 3 Decision traceability
55
+ ## Analysis 3 - Decision traceability
56
56
 
57
57
  Maps decisions to skill/agent files that cite them.
58
58
 
@@ -64,7 +64,7 @@ Maps decisions to skill/agent files that cite them.
64
64
 
65
65
  Empty-state: `No decisions indexed. Run node scripts/build-intel.cjs after creating .design/DESIGN-CONTEXT.md.`
66
66
 
67
- ## Analysis 4 Circular dependency detection
67
+ ## Analysis 4 - Circular dependency detection
68
68
 
69
69
  Detects cycles in the `@`-reference graph (File A → File B → File A). DFS with path-tracking detects back-edges; algorithm + adjacency-map shape detailed in `./reference/heuristics.md` §"Dependency-cycle detection".
70
70