oh-my-opencode 4.13.0 → 4.14.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 (445) hide show
  1. package/.agents/skills/codex-qa/SKILL.md +15 -0
  2. package/.agents/skills/codex-qa/references/logging-debug.md +12 -0
  3. package/.agents/skills/opencode-qa/SKILL.md +17 -0
  4. package/.agents/skills/opencode-qa/references/tui-tmux.md +17 -0
  5. package/.agents/skills/work-with-pr/SKILL.md +18 -10
  6. package/.opencode/skills/work-with-pr/SKILL.md +18 -10
  7. package/README.md +2 -2
  8. package/dist/cli/doctor/checks/telemetry.d.ts +2 -0
  9. package/dist/cli/doctor/framework/constants.d.ts +1 -0
  10. package/dist/cli/doctor/framework/doctor-target.d.ts +1 -1
  11. package/dist/cli/index.js +24651 -16452
  12. package/dist/cli-node/index.js +24651 -16452
  13. package/dist/config/schema/oh-my-opencode-config.d.ts +1 -0
  14. package/dist/features/team-mode/test-support/async-test-helpers.d.ts +19 -0
  15. package/dist/hooks/atlas/final-wave-approval-gate.d.ts +1 -0
  16. package/dist/hooks/atlas/subagent-completion-reminder.d.ts +30 -0
  17. package/dist/hooks/atlas/types.d.ts +2 -0
  18. package/dist/hooks/atlas/verification-reminders.d.ts +3 -0
  19. package/dist/hooks/team-session-events/team-idle-wake-hint.d.ts +1 -0
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.js +33232 -19559
  22. package/dist/mcp/context7.d.ts +9 -8
  23. package/dist/oh-my-opencode.schema.json +4 -0
  24. package/dist/shared/posthog.d.ts +17 -10
  25. package/dist/shared/telemetry-product-identity.d.ts +2 -0
  26. package/dist/skills/coding-agent-sessions/SKILL.md +128 -0
  27. package/dist/skills/coding-agent-sessions/agents/openai.yaml +4 -0
  28. package/dist/skills/coding-agent-sessions/references/all-platforms.md +71 -0
  29. package/dist/skills/coding-agent-sessions/references/claude.md +32 -0
  30. package/dist/skills/coding-agent-sessions/references/codex.md +30 -0
  31. package/dist/skills/coding-agent-sessions/references/opencode.md +43 -0
  32. package/dist/skills/coding-agent-sessions/references/senpi.md +17 -0
  33. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/__init__.py +1 -0
  34. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/claude.py +66 -0
  35. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +283 -0
  36. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/codex.py +105 -0
  37. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/file_scanners.py +275 -0
  38. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/jsonio.py +55 -0
  39. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/kiro_scanner.py +91 -0
  40. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/opencode.py +289 -0
  41. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/scanners.py +92 -0
  42. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_optional_scanners.py +203 -0
  43. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_scanners.py +177 -0
  44. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/timeparse.py +51 -0
  45. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/transcript.py +149 -0
  46. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/types.py +57 -0
  47. package/dist/skills/coding-agent-sessions/scripts/find-agent-sessions.py +19 -0
  48. package/dist/skills/frontend/ATTRIBUTION.md +52 -8
  49. package/dist/skills/frontend/SKILL.md +29 -8
  50. package/dist/skills/frontend/references/design/README.md +29 -12
  51. package/dist/skills/frontend/references/design/_INDEX.md +3 -3
  52. package/dist/skills/frontend/references/design/design-system-architecture.md +22 -19
  53. package/dist/skills/frontend/references/designpowers/EVIDENCE.md +89 -0
  54. package/dist/skills/frontend/references/designpowers/README.md +48 -0
  55. package/dist/skills/frontend/references/designpowers/UPSTREAM.md +80 -0
  56. package/dist/skills/frontend/references/designpowers/lane-a-direction.md +64 -0
  57. package/dist/skills/frontend/references/designpowers/lane-b-execution.md +65 -0
  58. package/dist/skills/frontend/references/designpowers/lane-c-review.md +65 -0
  59. package/dist/skills/frontend/references/designpowers/lane-d-memory.md +83 -0
  60. package/dist/skills/frontend/references/designpowers/orchestration.md +80 -0
  61. package/dist/skills/frontend/references/designpowers/routing.md +79 -0
  62. package/dist/skills/frontend/references/designpowers/vendor/LICENSE +21 -0
  63. package/dist/skills/frontend/references/designpowers/vendor/agents/accessibility-reviewer.md +83 -0
  64. package/dist/skills/frontend/references/designpowers/vendor/agents/content-writer.md +132 -0
  65. package/dist/skills/frontend/references/designpowers/vendor/agents/design-builder.md +109 -0
  66. package/dist/skills/frontend/references/designpowers/vendor/agents/design-critic.md +89 -0
  67. package/dist/skills/frontend/references/designpowers/vendor/agents/design-lead.md +113 -0
  68. package/dist/skills/frontend/references/designpowers/vendor/agents/design-scout.md +78 -0
  69. package/dist/skills/frontend/references/designpowers/vendor/agents/design-strategist.md +121 -0
  70. package/dist/skills/frontend/references/designpowers/vendor/agents/heuristic-evaluator.md +268 -0
  71. package/dist/skills/frontend/references/designpowers/vendor/agents/inspiration-scout.md +107 -0
  72. package/dist/skills/frontend/references/designpowers/vendor/agents/motion-designer.md +120 -0
  73. package/dist/skills/frontend/references/designpowers/vendor/skills/accessible-content/SKILL.md +101 -0
  74. package/dist/skills/frontend/references/designpowers/vendor/skills/adaptive-interfaces/SKILL.md +109 -0
  75. package/dist/skills/frontend/references/designpowers/vendor/skills/cognitive-accessibility/SKILL.md +107 -0
  76. package/dist/skills/frontend/references/designpowers/vendor/skills/design-debate/SKILL.md +199 -0
  77. package/dist/skills/frontend/references/designpowers/vendor/skills/design-debt-tracker/SKILL.md +174 -0
  78. package/dist/skills/frontend/references/designpowers/vendor/skills/design-handoff/SKILL.md +125 -0
  79. package/dist/skills/frontend/references/designpowers/vendor/skills/design-md/SKILL.md +106 -0
  80. package/dist/skills/frontend/references/designpowers/vendor/skills/design-retrospective/SKILL.md +266 -0
  81. package/dist/skills/frontend/references/designpowers/vendor/skills/design-review/SKILL.md +123 -0
  82. package/dist/skills/frontend/references/designpowers/vendor/skills/design-system-alignment/SKILL.md +120 -0
  83. package/dist/skills/frontend/references/designpowers/vendor/skills/designpowers-critique/SKILL.md +164 -0
  84. package/dist/skills/frontend/references/designpowers/vendor/skills/heuristic-evaluation/SKILL.md +85 -0
  85. package/dist/skills/frontend/references/designpowers/vendor/skills/inclusive-personas/SKILL.md +98 -0
  86. package/dist/skills/frontend/references/designpowers/vendor/skills/inspiration-scouting/SKILL.md +165 -0
  87. package/dist/skills/frontend/references/designpowers/vendor/skills/interaction-design/SKILL.md +122 -0
  88. package/dist/skills/frontend/references/designpowers/vendor/skills/motion-choreography/SKILL.md +81 -0
  89. package/dist/skills/frontend/references/designpowers/vendor/skills/research-planning/SKILL.md +96 -0
  90. package/dist/skills/frontend/references/designpowers/vendor/skills/responsive-patterns/SKILL.md +77 -0
  91. package/dist/skills/frontend/references/designpowers/vendor/skills/synthetic-user-testing/SKILL.md +192 -0
  92. package/dist/skills/frontend/references/designpowers/vendor/skills/taste-feedback/SKILL.md +165 -0
  93. package/dist/skills/frontend/references/designpowers/vendor/skills/taste-report/SKILL.md +78 -0
  94. package/dist/skills/frontend/references/designpowers/vendor/skills/token-architecture/SKILL.md +75 -0
  95. package/dist/skills/frontend/references/designpowers/vendor/skills/ui-composition/SKILL.md +117 -0
  96. package/dist/skills/frontend/references/designpowers/vendor/skills/usability-testing/SKILL.md +78 -0
  97. package/dist/skills/frontend/references/designpowers/vendor/skills/verification-before-shipping/SKILL.md +125 -0
  98. package/dist/skills/frontend/references/designpowers/vendor/skills/voice-and-tone/SKILL.md +79 -0
  99. package/dist/skills/frontend/references/designpowers/vendor/skills/writing-design-plans/SKILL.md +119 -0
  100. package/dist/skills/frontend/references/ui-ux-db/scripts/core.py +0 -0
  101. package/dist/skills/git-master/SKILL.md +4 -0
  102. package/dist/skills/review-work/SKILL.md +3 -3
  103. package/dist/skills/start-work/SKILL.md +7 -5
  104. package/dist/skills/ultraresearch/SKILL.md +4 -252
  105. package/dist/skills/ulw-plan/SKILL.md +8 -6
  106. package/dist/skills/ulw-plan/references/full-workflow.md +11 -6
  107. package/dist/skills/ulw-plan/references/intent-clear.md +3 -3
  108. package/dist/skills/ulw-plan/references/intent-unclear.md +1 -1
  109. package/dist/skills/{ultraresearch → ulw-research}/ATTRIBUTION.md +1 -1
  110. package/dist/skills/ulw-research/SKILL.md +260 -0
  111. package/dist/skills/visual-qa/SKILL.md +105 -14
  112. package/dist/skills/visual-qa/scripts/skill-prompt-contract.test.ts +120 -1
  113. package/dist/testing/create-plugin-module.d.ts +2 -0
  114. package/dist/tui.js +23917 -16117
  115. package/docs/reference/github-attachment-upload.md +51 -0
  116. package/docs/reference/web-terminal-visual-qa.md +81 -0
  117. package/package.json +20 -14
  118. package/packages/lsp-core/src/lsp/process.ts +4 -1
  119. package/packages/lsp-core/src/mcp.ts +1 -0
  120. package/packages/lsp-daemon/dist/cli.js +5 -1
  121. package/packages/lsp-daemon/dist/index.js +5 -1
  122. package/packages/lsp-daemon/dist/proxy.js +1 -0
  123. package/packages/lsp-tools-mcp/dist/cli.js +5 -1
  124. package/packages/lsp-tools-mcp/dist/lsp/manager.js +4 -1
  125. package/packages/lsp-tools-mcp/dist/mcp.js +5 -1
  126. package/packages/lsp-tools-mcp/dist/tools.js +4 -1
  127. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  128. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +323 -62
  129. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  130. package/packages/omo-codex/plugin/components/bootstrap/scripts/bootstrap.ps1 +37 -68
  131. package/packages/omo-codex/plugin/components/bootstrap/scripts/node-dispatch.ps1 +75 -0
  132. package/packages/omo-codex/plugin/components/bootstrap/src/cli.ts +1 -1
  133. package/packages/omo-codex/plugin/components/bootstrap/src/setup.ts +2 -18
  134. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +575 -334
  135. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +204 -39
  136. package/packages/omo-codex/plugin/components/codegraph/package.json +2 -2
  137. package/packages/omo-codex/plugin/components/codegraph/src/hook-types.ts +7 -1
  138. package/packages/omo-codex/plugin/components/codegraph/src/hook.ts +103 -3
  139. package/packages/omo-codex/plugin/components/codegraph/src/mcp-bridge.ts +114 -0
  140. package/packages/omo-codex/plugin/components/codegraph/src/serve-invocation.ts +29 -0
  141. package/packages/omo-codex/plugin/components/codegraph/src/serve.ts +31 -57
  142. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker.ts +7 -4
  143. package/packages/omo-codex/plugin/components/codegraph/test/hook.test.ts +43 -9
  144. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge.test.ts +146 -0
  145. package/packages/omo-codex/plugin/components/codegraph/test/serve.test.ts +12 -7
  146. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-flow.test.ts +71 -1
  147. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  148. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  149. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  150. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +4 -1
  151. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  152. package/packages/omo-codex/plugin/components/rules/dist/cli.js +2 -2
  153. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  154. package/packages/omo-codex/plugin/components/rules/src/sparkshell-awareness.ts +2 -2
  155. package/packages/omo-codex/plugin/components/rules/test/sparkshell-awareness.test.ts +11 -2
  156. package/packages/omo-codex/plugin/components/start-work-continuation/directive.md +6 -6
  157. package/packages/omo-codex/plugin/components/start-work-continuation/package.json +1 -1
  158. package/packages/omo-codex/plugin/components/start-work-continuation/test/codex-hook.test.ts +23 -0
  159. package/packages/omo-codex/plugin/components/teammode/dist/cli.js +22 -4
  160. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  161. package/packages/omo-codex/plugin/components/teammode/skills/teammode/SKILL.md +40 -2
  162. package/packages/omo-codex/plugin/components/teammode/skills/teammode/scripts/team-guide.mjs +32 -5
  163. package/packages/omo-codex/plugin/components/teammode/skills/teammode/scripts/team.mjs +7 -3
  164. package/packages/omo-codex/plugin/components/teammode/src/codex-hook.ts +19 -4
  165. package/packages/omo-codex/plugin/components/teammode/test/thread-title-hook.test.ts +32 -2
  166. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  167. package/packages/omo-codex/plugin/components/ultrawork/README.md +1 -1
  168. package/packages/omo-codex/plugin/components/ultrawork/agents/explorer.toml +1 -1
  169. package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +2 -2
  170. package/packages/omo-codex/plugin/components/ultrawork/directive.md +23 -7
  171. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +1 -1
  172. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  173. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +6 -4
  174. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +11 -6
  175. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-clear.md +3 -3
  176. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +1 -1
  177. package/packages/omo-codex/plugin/components/ultrawork/src/codex-hook.ts +1 -1
  178. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-trigger-policy.test.ts +24 -0
  179. package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +6 -1
  180. package/packages/omo-codex/plugin/components/ulw-loop/AGENTS.md +1 -1
  181. package/packages/omo-codex/plugin/components/ulw-loop/README.md +25 -21
  182. package/packages/omo-codex/plugin/components/ulw-loop/biome.json +1 -1
  183. package/packages/omo-codex/plugin/components/ulw-loop/directive.md +381 -0
  184. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-steering.js +14 -1
  185. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +145 -14
  186. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-hook.d.ts +6 -3
  187. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-hook.js +16 -6
  188. package/packages/omo-codex/plugin/components/ulw-loop/dist/ultrawork-directive.d.ts +5 -0
  189. package/packages/omo-codex/plugin/components/ulw-loop/dist/ultrawork-directive.js +104 -0
  190. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +1 -1
  191. package/packages/omo-codex/plugin/components/ulw-loop/package.json +2 -1
  192. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +19 -11
  193. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-steering.ts +14 -1
  194. package/packages/omo-codex/plugin/components/ulw-loop/src/cli.ts +4 -2
  195. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-hook.ts +28 -6
  196. package/packages/omo-codex/plugin/components/ulw-loop/src/ultrawork-directive.ts +113 -0
  197. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-entrypoint.test.ts +33 -2
  198. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-steering-kind-guidance.test.ts +31 -0
  199. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-hook.test.ts +13 -0
  200. package/packages/omo-codex/plugin/components/ulw-loop/test/package-smoke.test.ts +36 -0
  201. package/packages/omo-codex/plugin/components/ulw-loop/test/skill-contract.test.ts +12 -0
  202. package/packages/omo-codex/plugin/components/ulw-loop/test/ultrawork-directive.test.ts +64 -0
  203. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +2 -1
  204. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +2 -1
  205. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +2 -1
  206. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +2 -1
  207. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +2 -1
  208. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +2 -1
  209. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +2 -1
  210. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +2 -1
  211. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +2 -1
  212. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +2 -1
  213. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +2 -1
  214. package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +2 -1
  215. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +2 -1
  216. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +2 -1
  217. package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +2 -1
  218. package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +2 -1
  219. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +2 -1
  220. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +2 -1
  221. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +2 -1
  222. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +2 -1
  223. package/packages/omo-codex/plugin/package-lock.json +13 -13
  224. package/packages/omo-codex/plugin/package.json +1 -1
  225. package/packages/omo-codex/plugin/scripts/auto-update.mjs +9 -5
  226. package/packages/omo-codex/plugin/scripts/materialize-shared-upstreams.mjs +1 -0
  227. package/packages/omo-codex/plugin/scripts/migrate-codex-config/context7-placeholder-guard.mjs +131 -0
  228. package/packages/omo-codex/plugin/scripts/migrate-codex-config/multi-agent-mode-guard.mjs +60 -0
  229. package/packages/omo-codex/plugin/scripts/migrate-codex-config/multi-agent-v2-guard.mjs +3 -10
  230. package/packages/omo-codex/plugin/scripts/migrate-codex-config/root-settings.mjs +31 -1
  231. package/packages/omo-codex/plugin/scripts/migrate-codex-config/subagent-limit-guard.mjs +73 -0
  232. package/packages/omo-codex/plugin/scripts/migrate-codex-config.mjs +20 -3
  233. package/packages/omo-codex/plugin/scripts/sync-skills.mjs +30 -8
  234. package/packages/omo-codex/plugin/skills/coding-agent-sessions/SKILL.md +128 -0
  235. package/packages/omo-codex/plugin/skills/coding-agent-sessions/agents/openai.yaml +4 -0
  236. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/all-platforms.md +71 -0
  237. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/claude.md +32 -0
  238. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/codex.md +30 -0
  239. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/opencode.md +43 -0
  240. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/senpi.md +17 -0
  241. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/__init__.py +1 -0
  242. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/claude.py +66 -0
  243. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +283 -0
  244. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/codex.py +105 -0
  245. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/file_scanners.py +275 -0
  246. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/jsonio.py +55 -0
  247. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/kiro_scanner.py +91 -0
  248. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/opencode.py +289 -0
  249. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/scanners.py +92 -0
  250. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_optional_scanners.py +203 -0
  251. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_scanners.py +177 -0
  252. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/timeparse.py +51 -0
  253. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/transcript.py +149 -0
  254. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/types.py +57 -0
  255. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/find-agent-sessions.py +19 -0
  256. package/packages/omo-codex/plugin/skills/frontend/ATTRIBUTION.md +52 -8
  257. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +29 -8
  258. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +29 -12
  259. package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +3 -3
  260. package/packages/omo-codex/plugin/skills/frontend/references/design/design-system-architecture.md +22 -19
  261. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/EVIDENCE.md +89 -0
  262. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/README.md +48 -0
  263. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/UPSTREAM.md +80 -0
  264. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-a-direction.md +64 -0
  265. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-b-execution.md +65 -0
  266. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-c-review.md +65 -0
  267. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-d-memory.md +83 -0
  268. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/orchestration.md +80 -0
  269. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/routing.md +79 -0
  270. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/LICENSE +21 -0
  271. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/accessibility-reviewer.md +83 -0
  272. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/content-writer.md +132 -0
  273. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/design-builder.md +109 -0
  274. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/design-critic.md +89 -0
  275. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/design-lead.md +113 -0
  276. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/design-scout.md +78 -0
  277. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/design-strategist.md +121 -0
  278. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/heuristic-evaluator.md +268 -0
  279. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/inspiration-scout.md +107 -0
  280. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/agents/motion-designer.md +120 -0
  281. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/accessible-content/SKILL.md +101 -0
  282. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/adaptive-interfaces/SKILL.md +109 -0
  283. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/cognitive-accessibility/SKILL.md +107 -0
  284. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-debate/SKILL.md +199 -0
  285. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-debt-tracker/SKILL.md +174 -0
  286. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-handoff/SKILL.md +125 -0
  287. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-md/SKILL.md +106 -0
  288. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-retrospective/SKILL.md +266 -0
  289. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-review/SKILL.md +123 -0
  290. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/design-system-alignment/SKILL.md +120 -0
  291. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/designpowers-critique/SKILL.md +164 -0
  292. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/heuristic-evaluation/SKILL.md +85 -0
  293. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/inclusive-personas/SKILL.md +98 -0
  294. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/inspiration-scouting/SKILL.md +165 -0
  295. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/interaction-design/SKILL.md +122 -0
  296. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/motion-choreography/SKILL.md +81 -0
  297. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/research-planning/SKILL.md +96 -0
  298. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/responsive-patterns/SKILL.md +77 -0
  299. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/synthetic-user-testing/SKILL.md +192 -0
  300. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/taste-feedback/SKILL.md +165 -0
  301. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/taste-report/SKILL.md +78 -0
  302. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/token-architecture/SKILL.md +75 -0
  303. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/ui-composition/SKILL.md +117 -0
  304. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/usability-testing/SKILL.md +78 -0
  305. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/verification-before-shipping/SKILL.md +125 -0
  306. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/voice-and-tone/SKILL.md +79 -0
  307. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/vendor/skills/writing-design-plans/SKILL.md +119 -0
  308. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/core.py +0 -0
  309. package/packages/omo-codex/plugin/skills/git-master/SKILL.md +4 -0
  310. package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +4 -0
  311. package/packages/omo-codex/plugin/skills/refactor/SKILL.md +4 -0
  312. package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +4 -0
  313. package/packages/omo-codex/plugin/skills/review-work/SKILL.md +12 -4
  314. package/packages/omo-codex/plugin/skills/start-work/SKILL.md +14 -8
  315. package/packages/omo-codex/plugin/skills/teammode/SKILL.md +40 -2
  316. package/packages/omo-codex/plugin/skills/teammode/scripts/team-guide.mjs +32 -5
  317. package/packages/omo-codex/plugin/skills/teammode/scripts/team.mjs +7 -3
  318. package/packages/omo-codex/plugin/skills/ultraresearch/SKILL.md +4 -250
  319. package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +19 -11
  320. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +6 -4
  321. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +11 -6
  322. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-clear.md +3 -3
  323. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +1 -1
  324. package/packages/{shared-skills/skills/ultraresearch → omo-codex/plugin/skills/ulw-research}/ATTRIBUTION.md +1 -1
  325. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +262 -0
  326. package/packages/omo-codex/plugin/skills/ulw-research/agents/openai.yaml +2 -0
  327. package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +109 -14
  328. package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +23 -0
  329. package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +1 -0
  330. package/packages/omo-codex/plugin/test/auto-update-release-notes.test.mjs +1 -0
  331. package/packages/omo-codex/plugin/test/auto-update-restart-notice.test.mjs +24 -1
  332. package/packages/omo-codex/plugin/test/bootstrap-binlinks.test.mjs +23 -5
  333. package/packages/omo-codex/plugin/test/bootstrap-hooks.test.mjs +38 -0
  334. package/packages/omo-codex/plugin/test/bootstrap-ps-guard.test.mjs +25 -0
  335. package/packages/omo-codex/plugin/test/bootstrap-setup.test.mjs +1 -7
  336. package/packages/omo-codex/plugin/test/migrate-codex-config.test.mjs +206 -6
  337. package/packages/omo-codex/plugin/test/subagent-limit-migration.test.mjs +44 -0
  338. package/packages/omo-codex/plugin/test/sync-skills-orchestration.test.mjs +50 -1
  339. package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +10 -7
  340. package/packages/omo-codex/plugin/test/sync-skills.test.mjs +28 -2
  341. package/packages/omo-codex/plugin/test/teammode-communication.test.mjs +20 -0
  342. package/packages/omo-codex/plugin/test/teammode-thread-links.test.mjs +117 -0
  343. package/packages/omo-codex/plugin/test/teammode-worktree.test.mjs +5 -2
  344. package/packages/omo-codex/plugin/test/ulw-research-skill-contract.test.mjs +285 -0
  345. package/packages/omo-codex/scripts/install-bin-links.test.mjs +6 -1
  346. package/packages/omo-codex/scripts/install-cache-copy.test.mjs +51 -0
  347. package/packages/omo-codex/scripts/install-config.test.mjs +198 -17
  348. package/packages/omo-codex/scripts/install-dist/install-local.mjs +701 -282
  349. package/packages/omo-codex/scripts/install-local-git-bash-preflight.test.mjs +24 -15
  350. package/packages/omo-codex/scripts/install-local.test.mjs +5 -1
  351. package/packages/omo-codex/scripts/install-mcp-context7-runtime.test.mjs +84 -0
  352. package/packages/shared-skills/skills/coding-agent-sessions/SKILL.md +128 -0
  353. package/packages/shared-skills/skills/coding-agent-sessions/agents/openai.yaml +4 -0
  354. package/packages/shared-skills/skills/coding-agent-sessions/references/all-platforms.md +71 -0
  355. package/packages/shared-skills/skills/coding-agent-sessions/references/claude.md +32 -0
  356. package/packages/shared-skills/skills/coding-agent-sessions/references/codex.md +30 -0
  357. package/packages/shared-skills/skills/coding-agent-sessions/references/opencode.md +43 -0
  358. package/packages/shared-skills/skills/coding-agent-sessions/references/senpi.md +17 -0
  359. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/__init__.py +1 -0
  360. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/claude.py +66 -0
  361. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +283 -0
  362. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/codex.py +105 -0
  363. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/file_scanners.py +275 -0
  364. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/jsonio.py +55 -0
  365. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/kiro_scanner.py +91 -0
  366. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/opencode.py +289 -0
  367. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/scanners.py +92 -0
  368. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_optional_scanners.py +203 -0
  369. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/sqlite_scanners.py +177 -0
  370. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/timeparse.py +51 -0
  371. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/transcript.py +149 -0
  372. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/types.py +57 -0
  373. package/packages/shared-skills/skills/coding-agent-sessions/scripts/find-agent-sessions.py +19 -0
  374. package/packages/shared-skills/skills/frontend/ATTRIBUTION.md +52 -8
  375. package/packages/shared-skills/skills/frontend/SKILL.md +29 -8
  376. package/packages/shared-skills/skills/frontend/references/design/README.md +29 -12
  377. package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +3 -3
  378. package/packages/shared-skills/skills/frontend/references/design/design-system-architecture.md +22 -19
  379. package/packages/shared-skills/skills/frontend/references/designpowers/EVIDENCE.md +89 -0
  380. package/packages/shared-skills/skills/frontend/references/designpowers/README.md +48 -0
  381. package/packages/shared-skills/skills/frontend/references/designpowers/UPSTREAM.md +80 -0
  382. package/packages/shared-skills/skills/frontend/references/designpowers/lane-a-direction.md +64 -0
  383. package/packages/shared-skills/skills/frontend/references/designpowers/lane-b-execution.md +65 -0
  384. package/packages/shared-skills/skills/frontend/references/designpowers/lane-c-review.md +65 -0
  385. package/packages/shared-skills/skills/frontend/references/designpowers/lane-d-memory.md +83 -0
  386. package/packages/shared-skills/skills/frontend/references/designpowers/orchestration.md +80 -0
  387. package/packages/shared-skills/skills/frontend/references/designpowers/routing.md +79 -0
  388. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/LICENSE +21 -0
  389. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/accessibility-reviewer.md +83 -0
  390. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/content-writer.md +132 -0
  391. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/design-builder.md +109 -0
  392. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/design-critic.md +89 -0
  393. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/design-lead.md +113 -0
  394. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/design-scout.md +78 -0
  395. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/design-strategist.md +121 -0
  396. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/heuristic-evaluator.md +268 -0
  397. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/inspiration-scout.md +107 -0
  398. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/agents/motion-designer.md +120 -0
  399. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/accessible-content/SKILL.md +101 -0
  400. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/adaptive-interfaces/SKILL.md +109 -0
  401. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/cognitive-accessibility/SKILL.md +107 -0
  402. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-debate/SKILL.md +199 -0
  403. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-debt-tracker/SKILL.md +174 -0
  404. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-handoff/SKILL.md +125 -0
  405. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-md/SKILL.md +106 -0
  406. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-retrospective/SKILL.md +266 -0
  407. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-review/SKILL.md +123 -0
  408. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/design-system-alignment/SKILL.md +120 -0
  409. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/designpowers-critique/SKILL.md +164 -0
  410. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/heuristic-evaluation/SKILL.md +85 -0
  411. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/inclusive-personas/SKILL.md +98 -0
  412. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/inspiration-scouting/SKILL.md +165 -0
  413. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/interaction-design/SKILL.md +122 -0
  414. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/motion-choreography/SKILL.md +81 -0
  415. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/research-planning/SKILL.md +96 -0
  416. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/responsive-patterns/SKILL.md +77 -0
  417. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/synthetic-user-testing/SKILL.md +192 -0
  418. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/taste-feedback/SKILL.md +165 -0
  419. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/taste-report/SKILL.md +78 -0
  420. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/token-architecture/SKILL.md +75 -0
  421. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/ui-composition/SKILL.md +117 -0
  422. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/usability-testing/SKILL.md +78 -0
  423. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/verification-before-shipping/SKILL.md +125 -0
  424. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/voice-and-tone/SKILL.md +79 -0
  425. package/packages/shared-skills/skills/frontend/references/designpowers/vendor/skills/writing-design-plans/SKILL.md +119 -0
  426. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/core.py +0 -0
  427. package/packages/shared-skills/skills/git-master/SKILL.md +4 -0
  428. package/packages/shared-skills/skills/review-work/SKILL.md +3 -3
  429. package/packages/shared-skills/skills/start-work/SKILL.md +7 -5
  430. package/packages/shared-skills/skills/ultraresearch/SKILL.md +4 -252
  431. package/packages/shared-skills/skills/ulw-plan/SKILL.md +8 -6
  432. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +11 -6
  433. package/packages/shared-skills/skills/ulw-plan/references/intent-clear.md +3 -3
  434. package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +1 -1
  435. package/packages/{omo-codex/plugin/skills/ultraresearch → shared-skills/skills/ulw-research}/ATTRIBUTION.md +1 -1
  436. package/packages/shared-skills/skills/ulw-research/SKILL.md +260 -0
  437. package/packages/shared-skills/skills/visual-qa/SKILL.md +105 -14
  438. package/packages/shared-skills/skills/visual-qa/scripts/skill-prompt-contract.test.ts +120 -1
  439. package/script/qa/web-terminal-redaction.d.mts +13 -0
  440. package/script/qa/web-terminal-redaction.mjs +43 -0
  441. package/script/qa/web-terminal-renderer.mjs +218 -0
  442. package/script/qa/web-terminal-visual-qa.mjs +264 -0
  443. package/packages/omo-codex/plugin/skills/ultimate-browsing/scripts/tests/test_cookie_domain_filter.py +0 -110
  444. package/packages/omo-codex/plugin/skills/ultimate-browsing/scripts/tests/test_extract_cookies.py +0 -245
  445. package/packages/omo-codex/plugin/test/ultraresearch-skill-contract.test.mjs +0 -204
@@ -0,0 +1,109 @@
1
+ ---
2
+ name: adaptive-interfaces
3
+ description: "Use when designing for user preferences — motion sensitivity, contrast needs, colour schemes, text sizing, information density, or any interface behaviour that should adapt to individual needs"
4
+ ---
5
+
6
+ # Adaptive Interfaces
7
+
8
+ Good design does not force everyone through the same experience. It adapts. This skill ensures interfaces respect user preferences, system settings, and individual needs — not as optional extras, but as fundamental design requirements.
9
+
10
+ ## When to Use
11
+
12
+ - Designing themes (dark mode, high contrast, custom colour schemes)
13
+ - Implementing motion or animation
14
+ - Building flexible typography or layout systems
15
+ - Designing for varying information density needs
16
+ - Any time the interface could benefit from adapting to the user
17
+
18
+ ## Process
19
+
20
+ ### Step 1: Identify Adaptable Properties
21
+
22
+ Review the design and map what should adapt:
23
+
24
+ | Property | User Preference | CSS/System Signal |
25
+ |----------|----------------|------------------|
26
+ | Colour scheme | Light/dark/custom | `prefers-color-scheme` |
27
+ | Contrast | Standard/high | `prefers-contrast` |
28
+ | Motion | Full/reduced/none | `prefers-reduced-motion` |
29
+ | Text size | System font size settings | `rem`/`em` units, viewport scaling |
30
+ | Information density | Compact/comfortable/spacious | User setting or breakpoint |
31
+ | Transparency | Standard/reduced | `prefers-reduced-transparency` |
32
+
33
+ ### Step 2: Motion Sensitivity
34
+
35
+ Motion is the most commonly harmful interface property. Handle it rigorously:
36
+
37
+ **Default behaviour:**
38
+ - All animations and transitions are wrapped in a motion preference check
39
+ - `prefers-reduced-motion: reduce` disables non-essential animation
40
+ - Essential motion (e.g., a progress bar filling) uses reduced, simpler alternatives
41
+
42
+ **Implementation pattern:**
43
+ ```css
44
+ /* Full motion (default) */
45
+ .element { transition: transform 300ms ease-out; }
46
+
47
+ /* Reduced motion */
48
+ @media (prefers-reduced-motion: reduce) {
49
+ .element { transition: none; }
50
+ }
51
+ ```
52
+
53
+ **Never autoplay:**
54
+ - Video, carousel, or animated content must not play automatically
55
+ - If autoplay is a business requirement, provide immediate pause/stop controls AND respect prefers-reduced-motion
56
+
57
+ ### Step 3: Colour Scheme Adaptation
58
+
59
+ Dark mode is not "invert the colours." It is a separate design exercise:
60
+
61
+ - **Backgrounds:** dark grey (not pure black) reduces eye strain
62
+ - **Text:** off-white (not pure white) on dark backgrounds
63
+ - **Elevation:** lighter shades indicate higher elevation in dark mode (opposite of light mode shadows)
64
+ - **Semantic colours:** error red, success green — these may need different shades in dark mode to maintain contrast
65
+ - **Images and illustrations:** may need dark-mode variants or reduced brightness
66
+
67
+ ### Step 4: Typography Flexibility
68
+
69
+ Text must be resizable without breaking the layout:
70
+
71
+ - Use `rem` or `em` units, never fixed `px` for font sizes
72
+ - Test at 200% browser zoom — content must remain usable
73
+ - Support system-level large text settings
74
+ - Line spacing, letter spacing, and word spacing should be adjustable (WCAG 1.4.12)
75
+ - Do not clip or overflow text when sizes change
76
+
77
+ ### Step 5: Information Density
78
+
79
+ Different users need different densities:
80
+
81
+ - **Spacious:** more whitespace, larger touch targets, fewer items visible — beneficial for motor impairments, cognitive load, mobile use
82
+ - **Comfortable:** balanced — the default for most users
83
+ - **Compact:** denser information, smaller elements — beneficial for power users, large dataset work
84
+
85
+ If offering density controls:
86
+ - Persist the user's choice across sessions
87
+ - Ensure all density levels maintain accessibility requirements (touch targets, contrast, readability)
88
+
89
+ ### Step 6: Respect and Persist Preferences
90
+
91
+ - **System-level preferences** (via media queries) should be respected automatically with no opt-in required
92
+ - **Application-level preferences** (density, layout) should be easy to find, easy to change, and persisted
93
+ - **Never override system preferences** without explicit user action
94
+ - **Never require users to justify** their preferences (no "Are you sure you want dark mode?")
95
+
96
+ ### Step 7: Document Adaptive Behaviour
97
+
98
+ For each adaptive property, document:
99
+ - What adapts and why
100
+ - The default behaviour
101
+ - The adapted behaviour for each preference
102
+ - How the preference is detected and respected
103
+ - Fallback behaviour when preference detection is unavailable
104
+
105
+ ## Integration
106
+
107
+ - **Called by:** `ui-composition`, `interaction-design`
108
+ - **Pairs with:** `cognitive-accessibility` (density and simplification), `inclusive-personas` (preference awareness)
109
+ - **Reviewed by:** `designpowers-critique`
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: cognitive-accessibility
3
+ description: "Use when evaluating mental load, wayfinding, focus management, memory demands, or decision complexity in any interface — ensures designs work for people with cognitive differences, under stress, or managing divided attention"
4
+ ---
5
+
6
+ # Cognitive Accessibility
7
+
8
+ The hardest accessibility barriers to see are cognitive ones. A screen reader user encounters a missing label and knows immediately. A person with a processing difference encounters an interface that demands too much of their working memory and just... leaves. This skill makes cognitive demands visible and manageable.
9
+
10
+ ## When to Use
11
+
12
+ - Designing multi-step processes or forms
13
+ - Creating navigation structures or information architecture
14
+ - Evaluating whether an interface asks too much of the user
15
+ - Designing for contexts of stress, distraction, or time pressure
16
+ - Reviewing any interface for cognitive load
17
+
18
+ ## Process
19
+
20
+ ### Step 1: Assess Cognitive Load
21
+
22
+ For each screen or flow, evaluate three types of load:
23
+
24
+ **Intrinsic load** — complexity inherent to the task
25
+ - How many concepts must the user understand simultaneously?
26
+ - How many decisions must they make per screen?
27
+ - Can the task be simplified without losing essential function?
28
+
29
+ **Extraneous load** — complexity added by poor design
30
+ - Is information organised logically or scattered?
31
+ - Are instructions clear and visible, or must the user remember them?
32
+ - Is the interface consistent, or do similar things work differently in different places?
33
+
34
+ **Germane load** — effort spent learning the system
35
+ - Can the user build a mental model from the interface structure?
36
+ - Are patterns consistent so that learning one part teaches the next?
37
+ - Does the interface reward exploration or punish mistakes?
38
+
39
+ ### Step 2: Reduce Extraneous Load
40
+
41
+ Extraneous load is design debt. Reduce it:
42
+
43
+ - **Show, do not ask people to remember.** If a user needs information from Step 2 in Step 5, display it — do not expect them to recall it
44
+ - **Progressive disclosure.** Show only what is needed now. Reveal complexity as it becomes relevant
45
+ - **Consistent patterns.** Same action, same appearance, same location, every time
46
+ - **Clear defaults.** Sensible pre-selections reduce decisions. Make the safe choice the easy choice
47
+ - **Chunking.** Break long forms into sections of 3-5 related fields. Break long content into scannable sections
48
+
49
+ ### Step 3: Wayfinding
50
+
51
+ People need to know three things at all times:
52
+ 1. **Where am I?** (clear page titles, breadcrumbs, highlighted navigation)
53
+ 2. **Where can I go?** (visible navigation, clear calls to action)
54
+ 3. **Where have I been?** (visited link styles, progress indicators, history)
55
+
56
+ For multi-step processes:
57
+ - Show progress (step 3 of 5)
58
+ - Allow backward navigation without data loss
59
+ - Show a summary of previous steps' inputs
60
+ - Allow saving progress and returning later
61
+
62
+ ### Step 4: Focus Management
63
+
64
+ Attention is a limited resource. Protect it:
65
+
66
+ - **One primary action per screen.** If everything is important, nothing is
67
+ - **Visual hierarchy guides attention.** The most important element should be the most visually prominent
68
+ - **Minimise interruptions.** Notifications, pop-ups, and auto-updates break concentration
69
+ - **Support return from interruption.** If the user is interrupted, the interface should help them resume where they left off
70
+ - **Timed actions are hostile.** If a timeout is necessary, warn before it expires and allow extension
71
+
72
+ ### Step 5: Error Recovery
73
+
74
+ Cognitive accessibility means mistakes are cheap:
75
+
76
+ - **Undo everything.** Every action should be reversible
77
+ - **Confirm destructive actions.** "Delete all items?" with a clear way to cancel
78
+ - **Preserve input.** If a form submission fails, do not clear the fields
79
+ - **Forgive formatting.** Accept phone numbers with or without dashes, dates in multiple formats
80
+ - **Provide clear recovery paths.** After an error, the next step should be obvious
81
+
82
+ ### Step 6: Document Cognitive Considerations
83
+
84
+ For each screen or flow, note:
85
+ - **Decisions required:** how many, how complex
86
+ - **Memory demands:** what the user must remember vs. what is displayed
87
+ - **Wayfinding cues:** how the user knows where they are
88
+ - **Recovery paths:** how the user corrects mistakes
89
+ - **Simplification opportunities:** what could be removed or deferred
90
+
91
+ ## Integration
92
+
93
+ - **Called by:** Any design skill, especially `ui-composition` and `interaction-design`
94
+ - **Pairs with:** `accessible-content` (language complexity), `adaptive-interfaces` (personalisation), `inclusive-personas` (cognitive diversity)
95
+ - **Reviewed by:** `designpowers-critique`
96
+
97
+ ## Quick Reference: COGA Guidelines
98
+
99
+ | Guideline | Implementation |
100
+ |-----------|---------------|
101
+ | Provide help and support | Contextual help adjacent to complex interactions |
102
+ | Use clear language | Plain language, no jargon, short sentences |
103
+ | Make it easy to find things | Consistent navigation, clear labels, search |
104
+ | Make tasks easy to complete | Fewer steps, clear progress, forgiving input |
105
+ | Avoid reliance on memory | Display information rather than requiring recall |
106
+ | Provide feedback | Clear confirmation of actions and state changes |
107
+ | Prevent and support error correction | Validation, undo, confirmation for destructive actions |
@@ -0,0 +1,199 @@
1
+ ---
2
+ name: design-debate
3
+ description: "Use when a design direction is uncertain, when the team could go multiple ways, or when the user wants to see competing approaches argued before committing — orchestrates structured debate between agents who advocate for different directions"
4
+ ---
5
+
6
+ # Design Debate
7
+
8
+ Good design decisions come from tension, not consensus. When agents converge too quickly, they optimise for agreement instead of the best answer. This skill creates productive conflict — agents argue for competing directions with real trade-offs, and the user decides.
9
+
10
+ ## When to Use
11
+
12
+ - When the design-strategist identifies multiple viable directions
13
+ - When the design-lead proposes a visual direction and alternatives exist
14
+ - When the user says "I'm not sure which way to go" or "what are my options?"
15
+ - When the design-critic recommends "rethink" — a debate can surface the better path
16
+ - When a decision has significant downstream consequences (navigation pattern, layout model, interaction paradigm)
17
+ - When the user explicitly asks for a debate: "debate this", "argue both sides", "what are the trade-offs?"
18
+
19
+ ## Do Not Use When
20
+
21
+ - The decision is trivial (icon choice, exact padding value)
22
+ - Accessibility requirements dictate the answer — there is nothing to debate
23
+ - The user has already made up their mind — respect their direction
24
+ - The brief clearly specifies the approach — follow it
25
+
26
+ ## Process
27
+
28
+ ### Step 1: Frame the Question
29
+
30
+ Define the design question precisely. A debate without a clear question produces noise.
31
+
32
+ Format:
33
+ ```
34
+ DESIGN QUESTION: [Specific, answerable question]
35
+ CONTEXT: [Brief context from design-state.md]
36
+ CONSTRAINTS: [Non-negotiable requirements from brief, accessibility, taste profile]
37
+ STAKES: [Why this decision matters — what it affects downstream]
38
+ ```
39
+
40
+ **Example:**
41
+ ```
42
+ DESIGN QUESTION: Should the onboarding flow use a multi-step wizard or a single scrollable page?
43
+ CONTEXT: App for first-time pet owners, ages 25-45. Primary persona has mild anxiety about "doing it right."
44
+ CONSTRAINTS: Must be completable in under 3 minutes. Must work on mobile. Must not require account creation upfront.
45
+ STAKES: Sets the interaction pattern for all future multi-step flows in the app.
46
+ ```
47
+
48
+ ### Step 2: Assign Advocates
49
+
50
+ Select 2-3 agents to argue for different directions. Each agent argues FOR their assigned position — they are advocates, not neutral analysts.
51
+
52
+ | Role | What They Argue |
53
+ |------|----------------|
54
+ | **Advocate A** | The case for Direction A — strengths, evidence, personas it serves best |
55
+ | **Advocate B** | The case for Direction B — strengths, evidence, personas it serves best |
56
+ | **Advocate C** (optional) | A third direction, a hybrid, or a "neither — here's why" position |
57
+
58
+ Assign agents based on their expertise:
59
+
60
+ | Agent | Best suited to advocate for |
61
+ |-------|---------------------------|
62
+ | **design-strategist** | UX patterns, information architecture, user flow approaches |
63
+ | **design-lead** | Visual directions, layout models, component architecture |
64
+ | **content-writer** | Content strategy approaches, tone directions, naming conventions |
65
+ | **motion-designer** | Interaction paradigms, feedback models, transition approaches |
66
+ | **accessibility-reviewer** | The most inclusive option, cognitive load implications |
67
+ | **design-scout** | Evidence-backed positions from competitive research |
68
+
69
+ ### Step 3: Run the Debate
70
+
71
+ Each advocate delivers their argument in this format:
72
+
73
+ ```markdown
74
+ ## [Agent Name] argues for: [Direction]
75
+
76
+ ### The Case
77
+ [2-3 paragraphs making the strongest possible argument for this direction.
78
+ Be specific — reference the brief, personas, principles, and evidence.]
79
+
80
+ ### Who This Serves Best
81
+ [Which personas benefit most and why]
82
+
83
+ ### Who This Serves Least
84
+ [Which personas might struggle and why — be honest]
85
+
86
+ ### Trade-Offs
87
+ [What you give up by choosing this direction]
88
+
89
+ ### Evidence
90
+ [Research, patterns, competitive examples, or design principles that support this]
91
+ ```
92
+
93
+ Rules for advocates:
94
+ 1. **Argue to win** — make the strongest case you can. Do not hedge
95
+ 2. **Be honest about weaknesses** — a strong argument acknowledges its trade-offs
96
+ 3. **Reference the brief** — ground arguments in the project's actual goals
97
+ 4. **Reference personas** — every argument must address who it helps and who it doesn't
98
+ 5. **No straw men** — do not weaken the opposing position to make yours look better
99
+
100
+ ### Step 4: Cross-Examination
101
+
102
+ After all advocates present, each gets one round of rebuttal:
103
+
104
+ ```markdown
105
+ ### [Agent Name] responds to [Other Agent]:
106
+ [1-2 paragraphs directly addressing the strongest point of the opposing argument.
107
+ Concede what is true. Challenge what is weak.]
108
+ ```
109
+
110
+ This prevents echo-chamber advocacy — each agent must engage with the other side's best arguments.
111
+
112
+ ### Step 5: Accessibility Check
113
+
114
+ Before presenting to the user, the **accessibility-reviewer** evaluates all proposed directions:
115
+
116
+ ```markdown
117
+ ## Accessibility Assessment
118
+
119
+ | Direction | Accessibility Impact | Concern Level |
120
+ |-----------|---------------------|---------------|
121
+ | Direction A | [Assessment] | Low / Medium / High |
122
+ | Direction B | [Assessment] | Low / Medium / High |
123
+
124
+ [If any direction creates accessibility barriers, flag it clearly.
125
+ This is not an argument for a direction — it is a constraint check.]
126
+ ```
127
+
128
+ If a direction has High accessibility concern, it should be flagged prominently in the presentation to the user. The user can still choose it, but they should know the cost.
129
+
130
+ ### Step 6: Present to User
131
+
132
+ Show the debate to the user in a structured format:
133
+
134
+ ```
135
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
136
+ DESIGN DEBATE
137
+ Question: [The design question]
138
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
139
+
140
+ DIRECTION A: [Name]
141
+ Argued by: [agent]
142
+ [2-3 sentence summary of the case]
143
+ Best for: [personas]
144
+ Trade-off: [key trade-off]
145
+
146
+ DIRECTION B: [Name]
147
+ Argued by: [agent]
148
+ [2-3 sentence summary of the case]
149
+ Best for: [personas]
150
+ Trade-off: [key trade-off]
151
+
152
+ [DIRECTION C if applicable]
153
+
154
+ ACCESSIBILITY: [One-line summary of any concerns]
155
+
156
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
157
+ YOUR CALL: Which direction do you want to take?
158
+ (You can also ask for more detail on any direction,
159
+ or propose a hybrid.)
160
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
161
+ ```
162
+
163
+ ### Step 7: Record the Decision
164
+
165
+ After the user decides:
166
+
167
+ 1. Record the chosen direction in `design-state.md` Decisions Log with rationale
168
+ 2. Record the rejected directions and why — this is valuable context for future debates
169
+ 3. If the decision reveals a taste preference, update `design-memory`
170
+ 4. Dispatch the appropriate agent to execute the chosen direction
171
+
172
+ ## Debate Depth
173
+
174
+ Not every debate needs the full process. Scale the depth to the stakes:
175
+
176
+ | Stakes | Debate Format |
177
+ |--------|--------------|
178
+ | **High** (sets architectural pattern) | Full debate: 2-3 advocates, cross-examination, accessibility review |
179
+ | **Medium** (affects multiple screens) | Quick debate: 2 advocates, no cross-examination, accessibility flag |
180
+ | **Low** (affects one component) | Micro debate: 2 options presented as a simple comparison table, user picks |
181
+
182
+ ## Integration
183
+
184
+ - **Called by:** `design-strategy`, `using-designpowers` (when user requests debate), `designpowers-critique` (when "rethink" is recommended)
185
+ - **Calls:** Any agent as advocate, `accessibility-reviewer` for constraint check
186
+ - **Updates:** `design-state` with decision and rejected alternatives
187
+ - **Informs:** `design-memory` with taste signals from the user's choice
188
+ - **Pairs with:** `design-strategy`, `design-memory`, `taste-feedback`
189
+
190
+ ## Anti-Patterns
191
+
192
+ | Pattern | Why It Fails |
193
+ |---------|-------------|
194
+ | Debating after the user has decided | Wastes time. If the user has a direction, execute it |
195
+ | Debating trivial decisions | 8px vs 12px padding is not a debate — it's a design system decision |
196
+ | Agents being polite instead of advocating | "Both options are great!" is not a debate. Agents must argue to win |
197
+ | Presenting a debate without accessibility review | Every direction must be evaluated for inclusion before the user chooses |
198
+ | Running a debate in auto mode without pausing | Debates ALWAYS pause for user decision — they are inherently direct-mode moments |
199
+ | More than 3 directions | Too many options cause decision paralysis. If there are more than 3, narrow down first |
@@ -0,0 +1,174 @@
1
+ ---
2
+ name: design-debt-tracker
3
+ description: "Use when critique or review produces deferred findings, when checking accumulated design compromises, or when deciding what to address in the next iteration. Maintains a living register of design debt — the minor issues, future-iteration notes, and conscious compromises that accumulate across a project"
4
+ ---
5
+
6
+ # Design Debt Tracker
7
+
8
+ Design debt is every conscious compromise the team makes and every minor issue deferred to "next time." Like technical debt, it compounds. Unlike technical debt, most teams don't track it — so it disappears into the gap between what was shipped and what was intended.
9
+
10
+ This skill maintains a living register that captures debt as it's created, tracks it across iterations, and surfaces it when decisions are being made.
11
+
12
+ ## Why This Exists
13
+
14
+ The design-critic classifies findings as Critical, Major, Minor, and Note. Critical and Major get fixed. Minor and Note get a shrug and "fix if time allows." They rarely get fixed because no one remembers them.
15
+
16
+ The accessibility-reviewer does the same — Minor issues with specific fixes that never happen because they're buried in a report that no one reopens.
17
+
18
+ Every "fix if time allows" is a promise to a persona. This skill makes those promises visible.
19
+
20
+ ## When to Use
21
+
22
+ - **After critique** — when the design-critic produces Minor or Note findings that won't be fixed this round
23
+ - **After accessibility review** — when the accessibility-reviewer flags Minor issues that are deferred
24
+ - **After a fix round** — when not all issues were addressed and some were consciously deferred
25
+ - **At project start** — to review accumulated debt from previous iterations
26
+ - **Before planning** — to decide which debt items to address in the next cycle
27
+ - **On user request** — "show me the design debt" or "what did we defer?"
28
+
29
+ ## The Register
30
+
31
+ Design debt lives in a `## Design Debt Register` section in `design-state.md`. One register per project. It persists across iterations.
32
+
33
+ ### Register Format
34
+
35
+ ```markdown
36
+ ## Design Debt Register
37
+
38
+ _Items: [count] | Critical: [count] | Oldest: [date]_
39
+
40
+ | ID | Date | Source | Severity | What | Who is affected | Suggested fix | Status | Notes |
41
+ |----|------|--------|----------|------|----------------|---------------|--------|-------|
42
+ | DD-001 | 2025-01-15 | design-critic | Minor | Settings form shows all fields at once — cognitive load | Persona: Jamie (cognitive disability) | Progressive disclosure with sections | Open | Deferred from v1 — setup is one-time flow |
43
+ | DD-002 | 2025-01-15 | accessibility-reviewer | Minor | Category colour strips lack icon backup | Users with colour vision deficiency | Add icon per category alongside colour | Open | |
44
+ | DD-003 | 2025-01-16 | design-critic | Note | Empty state illustration is placeholder | All users | Commission illustration that matches brand | Open | Low priority — functional without it |
45
+ | DD-004 | 2025-01-15 | accessibility-reviewer | Minor | Toast notifications auto-dismiss before screen reader finishes | Screen reader users | Extend timeout to 8s or add persistent log | Resolved | Fixed in v1.1 |
46
+ ```
47
+
48
+ ### Field Definitions
49
+
50
+ | Field | What goes here |
51
+ |-------|---------------|
52
+ | **ID** | Sequential identifier (DD-001, DD-002, ...). Never reuse IDs |
53
+ | **Date** | When the debt was recorded |
54
+ | **Source** | Which agent or review identified it (design-critic, accessibility-reviewer, design-lead, user, etc.) |
55
+ | **Severity** | The original severity classification: Minor or Note (Critical and Major should be fixed, not deferred) |
56
+ | **What** | Specific description of the issue — not "needs improvement" but "form shows 12 fields at once" |
57
+ | **Who is affected** | Which personas or user groups bear the cost of this debt. Be specific |
58
+ | **Suggested fix** | Actionable recommendation from the original review |
59
+ | **Status** | Open, Resolved, Accepted, or Escalated |
60
+ | **Notes** | Why it was deferred, context, related items |
61
+
62
+ ### Status Definitions
63
+
64
+ | Status | Meaning |
65
+ |--------|---------|
66
+ | **Open** | Identified, not yet addressed. This is a promise to come back |
67
+ | **Resolved** | Fixed in a subsequent iteration. Record which iteration |
68
+ | **Accepted** | Consciously decided this is not worth fixing. Requires user approval and a rationale |
69
+ | **Escalated** | Was Minor, but accumulated evidence or changing context makes it Major. Needs attention |
70
+
71
+ ## Process
72
+
73
+ ### Step 1: Capture Debt (After Review)
74
+
75
+ When the design-critic or accessibility-reviewer completes a review:
76
+
77
+ 1. Read their findings
78
+ 2. Identify all Minor and Note severity items that will NOT be fixed in this round
79
+ 3. For each deferred item, create a register entry with all fields populated
80
+ 4. Append to the Design Debt Register in `design-state.md`
81
+ 5. Update the summary line (item count, critical count, oldest date)
82
+
83
+ **Do not capture items that are being fixed.** The register tracks debt, not the fix list. If it's getting fixed now, it doesn't belong here.
84
+
85
+ ### Step 2: Review Debt (At Project Start or Before Planning)
86
+
87
+ When starting a new iteration or planning cycle:
88
+
89
+ 1. Read the current Design Debt Register
90
+ 2. Check for escalation triggers (see below)
91
+ 3. Present a debt summary to the user:
92
+
93
+ ```
94
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
95
+ DESIGN DEBT SUMMARY
96
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
97
+
98
+ Open items: [count]
99
+ By severity: [X] Minor, [Y] Note
100
+ Oldest unresolved: [date] ([age])
101
+
102
+ ACCESSIBILITY DEBT:
103
+ • [count] items affecting users with disabilities
104
+ • Most affected: [persona or user group]
105
+
106
+ TOP CANDIDATES FOR THIS CYCLE:
107
+ 1. [DD-XXX] [description] — [why now]
108
+ 2. [DD-XXX] [description] — [why now]
109
+ 3. [DD-XXX] [description] — [why now]
110
+
111
+ ESCALATED (was Minor, now needs attention):
112
+ • [DD-XXX] [description] — [escalation reason]
113
+
114
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
115
+ ```
116
+
117
+ 4. Ask the user which items to include in the current cycle's plan
118
+ 5. Items the user selects get added to the design plan as tasks
119
+
120
+ ### Step 3: Escalation Check
121
+
122
+ Debt items should be escalated from Minor to Major when:
123
+
124
+ | Trigger | Example |
125
+ |---------|---------|
126
+ | **Age** | Item has been Open for 3+ iterations without resolution |
127
+ | **Accumulation** | Multiple debt items affect the same persona or the same screen |
128
+ | **Context change** | A new persona or use case makes the issue more impactful |
129
+ | **User complaint** | The user or stakeholder mentions the issue independently |
130
+ | **Compound effect** | Two Minor items together create a Major experience gap |
131
+
132
+ When escalating:
133
+ 1. Change Status to "Escalated"
134
+ 2. Add a note explaining why
135
+ 3. Flag it in the debt summary
136
+ 4. Present it to the user as needing attention
137
+
138
+ ### Step 4: Resolve Debt
139
+
140
+ When a debt item is fixed:
141
+
142
+ 1. Update Status to "Resolved"
143
+ 2. Add a note: "Fixed in [iteration/date] by [agent]"
144
+ 3. Add the resolution to the Decisions Log in `design-state.md`
145
+ 4. Do NOT delete the row — resolved items are history
146
+
147
+ ### Step 5: Accept Debt
148
+
149
+ When the user consciously decides an item is not worth fixing:
150
+
151
+ 1. Confirm with the user: "This affects [personas]. Are you sure you want to accept this?"
152
+ 2. Update Status to "Accepted"
153
+ 3. Add the user's rationale in Notes
154
+ 4. Add the acceptance to the Decisions Log
155
+
156
+ **Accessibility debt requires explicit acknowledgement.** If a debt item affects users with disabilities, the user must explicitly accept the trade-off. Do not silently accept accessibility debt.
157
+
158
+ ## Integration
159
+
160
+ - **Receives from:** `designpowers-critique` (Minor/Note findings), `accessibility-reviewer` (Minor findings), `verification-before-shipping` (deferred items)
161
+ - **Feeds into:** `writing-design-plans` (debt items become plan tasks), `design-retrospective` (debt trends are retrospective data)
162
+ - **Updates:** `design-state.md` (Design Debt Register section)
163
+ - **Called by:** `using-designpowers` (after reviews, at project start, on user request)
164
+
165
+ ## Anti-Patterns
166
+
167
+ | Pattern | Why It Fails |
168
+ |---------|-------------|
169
+ | Capturing Critical issues as debt | Critical issues block access. They get fixed now, not tracked for later |
170
+ | Deferring the same item 3+ times | That's not debt management, that's avoidance. Escalate it |
171
+ | Accepting accessibility debt without user acknowledgement | Accessibility compromises affect real people. The user decides, not the system |
172
+ | Deleting resolved items | Resolved items are history. They show the team addresses its promises |
173
+ | Not reviewing debt at project start | Starting a new iteration without checking old promises means those promises are broken |
174
+ | Tracking everything | Not every observation needs tracking. Notes that are genuinely informational ("consider X someday") can stay in the critique report. Debt is for specific, actionable items that affect specific people |