@tyroneross/build-loop 0.30.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. package/.agents/plugins/marketplace.json +10 -0
  2. package/.claude-plugin/marketplace.json +38 -0
  3. package/.claude-plugin/plugin.json +30 -0
  4. package/.codex-plugin/plugin.json +41 -0
  5. package/.cursor/rules/build-loop-surface.mdc +22 -0
  6. package/AGENTS.md +498 -0
  7. package/LICENSE +202 -0
  8. package/README.md +403 -0
  9. package/agents/alignment-checker.md +124 -0
  10. package/agents/api-assessor.md +136 -0
  11. package/agents/architecture-scout.md +185 -0
  12. package/agents/assessment-orchestrator.md +163 -0
  13. package/agents/build-orchestrator.md +198 -0
  14. package/agents/database-assessor.md +133 -0
  15. package/agents/design-contract-specialist.md +239 -0
  16. package/agents/fact-checker.md +69 -0
  17. package/agents/fix-critique.md +161 -0
  18. package/agents/frontend-assessor.md +136 -0
  19. package/agents/implementer.md +185 -0
  20. package/agents/independent-auditor.md +143 -0
  21. package/agents/mock-scanner.md +78 -0
  22. package/agents/optimize-runner.md +112 -0
  23. package/agents/overfitting-reviewer.md +96 -0
  24. package/agents/performance-assessor.md +159 -0
  25. package/agents/plan-critic.md +85 -0
  26. package/agents/promotion-reviewer.md +121 -0
  27. package/agents/recurring-pattern-detector.md +248 -0
  28. package/agents/retrospective-synthesizer.md +109 -0
  29. package/agents/root-cause-investigator.md +285 -0
  30. package/agents/scope-auditor.md +121 -0
  31. package/agents/security-reviewer.md +151 -0
  32. package/agents/self-improvement-architect.md +125 -0
  33. package/agents/synthesis-critic.md +99 -0
  34. package/agents/transcript-pattern-miner.md +165 -0
  35. package/agents/ui-validator.md +193 -0
  36. package/codex-skills/build-loop/SKILL.md +20 -0
  37. package/codex-skills/debug-loop/SKILL.md +18 -0
  38. package/codex-skills/handoff/SKILL.md +22 -0
  39. package/codex-skills/knowledge/SKILL.md +21 -0
  40. package/codex-skills/optimize/SKILL.md +18 -0
  41. package/codex-skills/research/SKILL.md +18 -0
  42. package/commands/agent-rally-point.md +301 -0
  43. package/commands/assess.md +41 -0
  44. package/commands/debug.md +20 -0
  45. package/commands/debugger-detail.md +34 -0
  46. package/commands/debugger-scan.md +15 -0
  47. package/commands/debugger-status.md +20 -0
  48. package/commands/debugger.md +32 -0
  49. package/commands/handoff.md +113 -0
  50. package/commands/knowledge-review.md +16 -0
  51. package/commands/optimize.md +31 -0
  52. package/commands/plan-verify.md +39 -0
  53. package/commands/promote-experiment.md +129 -0
  54. package/commands/research.md +22 -0
  55. package/commands/run.md +12 -0
  56. package/commands/self-review.md +51 -0
  57. package/commands/start-prd.md +57 -0
  58. package/commands/test.md +34 -0
  59. package/dist/src/assessment-orchestrator.d.ts +78 -0
  60. package/dist/src/assessment-orchestrator.d.ts.map +1 -0
  61. package/dist/src/assessment-orchestrator.js +304 -0
  62. package/dist/src/assessment-orchestrator.js.map +1 -0
  63. package/dist/src/audit-miner.d.ts +21 -0
  64. package/dist/src/audit-miner.d.ts.map +1 -0
  65. package/dist/src/audit-miner.js +421 -0
  66. package/dist/src/audit-miner.js.map +1 -0
  67. package/dist/src/batch-operations.d.ts +30 -0
  68. package/dist/src/batch-operations.d.ts.map +1 -0
  69. package/dist/src/batch-operations.js +339 -0
  70. package/dist/src/batch-operations.js.map +1 -0
  71. package/dist/src/config.d.ts +83 -0
  72. package/dist/src/config.d.ts.map +1 -0
  73. package/dist/src/config.js +176 -0
  74. package/dist/src/config.js.map +1 -0
  75. package/dist/src/context-engine.d.ts +45 -0
  76. package/dist/src/context-engine.d.ts.map +1 -0
  77. package/dist/src/context-engine.js +135 -0
  78. package/dist/src/context-engine.js.map +1 -0
  79. package/dist/src/debug-wrapper.d.ts +58 -0
  80. package/dist/src/debug-wrapper.d.ts.map +1 -0
  81. package/dist/src/debug-wrapper.js +285 -0
  82. package/dist/src/debug-wrapper.js.map +1 -0
  83. package/dist/src/index.d.ts +31 -0
  84. package/dist/src/index.d.ts.map +1 -0
  85. package/dist/src/index.js +149 -0
  86. package/dist/src/index.js.map +1 -0
  87. package/dist/src/interactive-verifier.d.ts +26 -0
  88. package/dist/src/interactive-verifier.d.ts.map +1 -0
  89. package/dist/src/interactive-verifier.js +435 -0
  90. package/dist/src/interactive-verifier.js.map +1 -0
  91. package/dist/src/lessons.d.ts +59 -0
  92. package/dist/src/lessons.d.ts.map +1 -0
  93. package/dist/src/lessons.js +172 -0
  94. package/dist/src/lessons.js.map +1 -0
  95. package/dist/src/log-reader.d.ts +39 -0
  96. package/dist/src/log-reader.d.ts.map +1 -0
  97. package/dist/src/log-reader.js +291 -0
  98. package/dist/src/log-reader.js.map +1 -0
  99. package/dist/src/logger.d.ts +59 -0
  100. package/dist/src/logger.d.ts.map +1 -0
  101. package/dist/src/logger.js +328 -0
  102. package/dist/src/logger.js.map +1 -0
  103. package/dist/src/parallel-retrieval.d.ts +52 -0
  104. package/dist/src/parallel-retrieval.d.ts.map +1 -0
  105. package/dist/src/parallel-retrieval.js +309 -0
  106. package/dist/src/parallel-retrieval.js.map +1 -0
  107. package/dist/src/pattern-extractor.d.ts +30 -0
  108. package/dist/src/pattern-extractor.d.ts.map +1 -0
  109. package/dist/src/pattern-extractor.js +386 -0
  110. package/dist/src/pattern-extractor.js.map +1 -0
  111. package/dist/src/result-aggregator.d.ts +44 -0
  112. package/dist/src/result-aggregator.d.ts.map +1 -0
  113. package/dist/src/result-aggregator.js +315 -0
  114. package/dist/src/result-aggregator.js.map +1 -0
  115. package/dist/src/retrieval.d.ts +139 -0
  116. package/dist/src/retrieval.d.ts.map +1 -0
  117. package/dist/src/retrieval.js +724 -0
  118. package/dist/src/retrieval.js.map +1 -0
  119. package/dist/src/setup/auto-setup.d.ts +15 -0
  120. package/dist/src/setup/auto-setup.d.ts.map +1 -0
  121. package/dist/src/setup/auto-setup.js +157 -0
  122. package/dist/src/setup/auto-setup.js.map +1 -0
  123. package/dist/src/setup/configure-hooks.d.ts +8 -0
  124. package/dist/src/setup/configure-hooks.d.ts.map +1 -0
  125. package/dist/src/setup/configure-hooks.js +16 -0
  126. package/dist/src/setup/configure-hooks.js.map +1 -0
  127. package/dist/src/setup/create-slash-commands.d.ts +8 -0
  128. package/dist/src/setup/create-slash-commands.d.ts.map +1 -0
  129. package/dist/src/setup/create-slash-commands.js +101 -0
  130. package/dist/src/setup/create-slash-commands.js.map +1 -0
  131. package/dist/src/setup/index.d.ts +8 -0
  132. package/dist/src/setup/index.d.ts.map +1 -0
  133. package/dist/src/setup/index.js +17 -0
  134. package/dist/src/setup/index.js.map +1 -0
  135. package/dist/src/setup/inject-claude-md.d.ts +10 -0
  136. package/dist/src/setup/inject-claude-md.d.ts.map +1 -0
  137. package/dist/src/setup/inject-claude-md.js +150 -0
  138. package/dist/src/setup/inject-claude-md.js.map +1 -0
  139. package/dist/src/setup/uninstall.d.ts +22 -0
  140. package/dist/src/setup/uninstall.d.ts.map +1 -0
  141. package/dist/src/setup/uninstall.js +235 -0
  142. package/dist/src/setup/uninstall.js.map +1 -0
  143. package/dist/src/storage.d.ts +192 -0
  144. package/dist/src/storage.d.ts.map +1 -0
  145. package/dist/src/storage.js +1037 -0
  146. package/dist/src/storage.js.map +1 -0
  147. package/dist/src/string-similarity.d.ts +8 -0
  148. package/dist/src/string-similarity.d.ts.map +1 -0
  149. package/dist/src/string-similarity.js +57 -0
  150. package/dist/src/string-similarity.js.map +1 -0
  151. package/dist/src/traces/adapters/browser.d.ts +69 -0
  152. package/dist/src/traces/adapters/browser.d.ts.map +1 -0
  153. package/dist/src/traces/adapters/browser.js +280 -0
  154. package/dist/src/traces/adapters/browser.js.map +1 -0
  155. package/dist/src/traces/adapters/index.d.ts +23 -0
  156. package/dist/src/traces/adapters/index.d.ts.map +1 -0
  157. package/dist/src/traces/adapters/index.js +67 -0
  158. package/dist/src/traces/adapters/index.js.map +1 -0
  159. package/dist/src/traces/adapters/langchain.d.ts +42 -0
  160. package/dist/src/traces/adapters/langchain.d.ts.map +1 -0
  161. package/dist/src/traces/adapters/langchain.js +151 -0
  162. package/dist/src/traces/adapters/langchain.js.map +1 -0
  163. package/dist/src/traces/adapters/opentelemetry.d.ts +46 -0
  164. package/dist/src/traces/adapters/opentelemetry.d.ts.map +1 -0
  165. package/dist/src/traces/adapters/opentelemetry.js +164 -0
  166. package/dist/src/traces/adapters/opentelemetry.js.map +1 -0
  167. package/dist/src/traces/adapters/sentry.d.ts +58 -0
  168. package/dist/src/traces/adapters/sentry.d.ts.map +1 -0
  169. package/dist/src/traces/adapters/sentry.js +212 -0
  170. package/dist/src/traces/adapters/sentry.js.map +1 -0
  171. package/dist/src/traces/index.d.ts +10 -0
  172. package/dist/src/traces/index.d.ts.map +1 -0
  173. package/dist/src/traces/index.js +45 -0
  174. package/dist/src/traces/index.js.map +1 -0
  175. package/dist/src/traces/storage.d.ts +78 -0
  176. package/dist/src/traces/storage.d.ts.map +1 -0
  177. package/dist/src/traces/storage.js +399 -0
  178. package/dist/src/traces/storage.js.map +1 -0
  179. package/dist/src/traces/summarizer.d.ts +83 -0
  180. package/dist/src/traces/summarizer.d.ts.map +1 -0
  181. package/dist/src/traces/summarizer.js +247 -0
  182. package/dist/src/traces/summarizer.js.map +1 -0
  183. package/dist/src/traces/types.d.ts +365 -0
  184. package/dist/src/traces/types.d.ts.map +1 -0
  185. package/dist/src/traces/types.js +14 -0
  186. package/dist/src/traces/types.js.map +1 -0
  187. package/dist/src/types.d.ts +495 -0
  188. package/dist/src/types.d.ts.map +1 -0
  189. package/dist/src/types.js +27 -0
  190. package/dist/src/types.js.map +1 -0
  191. package/docs/agent-surface-policy.md +45 -0
  192. package/docs/memory-setup.md +226 -0
  193. package/hooks/_arch_scan_bg.py +88 -0
  194. package/hooks/_plugin_drift_check_bg.py +85 -0
  195. package/hooks/_session_start_lib.sh +42 -0
  196. package/hooks/git/pre-push +141 -0
  197. package/hooks/hooks.json +126 -0
  198. package/hooks/post-commit +30 -0
  199. package/hooks/pre-commit +29 -0
  200. package/hooks/pre-edit-apppulse.sh +6 -0
  201. package/hooks/pre-edit-architecture.sh +106 -0
  202. package/hooks/pre-edit-rally-point.sh +92 -0
  203. package/hooks/session-start-apppulse.sh +6 -0
  204. package/hooks/session-start-architecture.sh +10 -0
  205. package/hooks/session-start-git-hooks.sh +12 -0
  206. package/hooks/session-start-plugin-drift.sh +27 -0
  207. package/hooks/session-start-rally-point.sh +44 -0
  208. package/hooks/session-start-retrieval.sh +24 -0
  209. package/hooks/session-start-worktree-gc.sh +105 -0
  210. package/hooks/test_apppulse_hooks.sh +6 -0
  211. package/hooks/test_rally_point_hooks.sh +388 -0
  212. package/hooks/test_sec008_hooks.sh +66 -0
  213. package/package.json +111 -0
  214. package/scripts/README.md +301 -0
  215. package/scripts/_db_url.py +61 -0
  216. package/scripts/_paths.py +445 -0
  217. package/scripts/blm.py +162 -0
  218. package/scripts/blm_api.py +263 -0
  219. package/scripts/check_cache_sync.py +490 -0
  220. package/scripts/embed_backend.py +475 -0
  221. package/scripts/install_memory.py +556 -0
  222. package/scripts/lessons_index/__init__.py +77 -0
  223. package/scripts/lessons_index/__main__.py +135 -0
  224. package/scripts/lessons_index/ingest.py +288 -0
  225. package/scripts/lessons_index/query.py +285 -0
  226. package/scripts/lessons_index/schema.py +114 -0
  227. package/scripts/memory_context/__init__.py +610 -0
  228. package/scripts/memory_graph/__init__.py +393 -0
  229. package/scripts/project_resolver.py +172 -0
  230. package/scripts/prune_codex_plugin_cache.py +23 -0
  231. package/scripts/prune_plugin_cache.py +359 -0
  232. package/scripts/semantic_index/__init__.py +482 -0
  233. package/scripts/semantic_index/_bench_hybrid.py +175 -0
  234. package/scripts/semantic_index/backfill.py +263 -0
  235. package/scripts/semantic_index/hybrid.py +174 -0
  236. package/scripts/semantic_index/test_backfill.py +292 -0
  237. package/scripts/semantic_index/test_hybrid.py +541 -0
  238. package/scripts/sync_navgator_lessons.py +666 -0
  239. package/scripts/sync_plugin_cache.py +388 -0
  240. package/skills/agent-rally-point/SKILL.md +165 -0
  241. package/skills/agent-rally-watcher/SKILL.md +83 -0
  242. package/skills/api-registry-bridge/SKILL.md +59 -0
  243. package/skills/architecture/dead/SKILL.md +56 -0
  244. package/skills/architecture/impact/SKILL.md +88 -0
  245. package/skills/architecture/review/SKILL.md +227 -0
  246. package/skills/architecture/rules/SKILL.md +72 -0
  247. package/skills/architecture/scan/SKILL.md +79 -0
  248. package/skills/architecture/trace/SKILL.md +65 -0
  249. package/skills/attribution-standard/SKILL.md +122 -0
  250. package/skills/authentication/SKILL.md +81 -0
  251. package/skills/authentication/references/better-auth-magic-link.md +135 -0
  252. package/skills/authentication/references/better-auth-setup.md +224 -0
  253. package/skills/authentication/references/google-calendar-sync.md +278 -0
  254. package/skills/authentication/references/google-cloud-console.md +159 -0
  255. package/skills/authentication/references/google-geocoding-directions.md +126 -0
  256. package/skills/authentication/references/google-lessons-example-web-app.md +177 -0
  257. package/skills/authentication/references/google-maps.md +162 -0
  258. package/skills/authentication/references/google-oauth-setup.md +343 -0
  259. package/skills/authentication/references/google-places.md +173 -0
  260. package/skills/authentication/references/lessons-example-web-app-better-auth.md +126 -0
  261. package/skills/authentication/references/resend-email.md +227 -0
  262. package/skills/authentication/references/resend-otp-magic-link.md +153 -0
  263. package/skills/authentication/references/supabase-auth.md +172 -0
  264. package/skills/auto-decision-capture/SKILL.md +419 -0
  265. package/skills/build-loop/SKILL.md +516 -0
  266. package/skills/build-loop/detect-plugins.mjs +82 -0
  267. package/skills/build-loop/eval-guide.md +65 -0
  268. package/skills/build-loop/fallbacks.md +549 -0
  269. package/skills/build-loop/phases/fact-check.md +42 -0
  270. package/skills/build-loop/phases/ui-validation.md +267 -0
  271. package/skills/build-loop/references/apple-native-planning.md +439 -0
  272. package/skills/build-loop/references/capability-routing.md +181 -0
  273. package/skills/build-loop/references/codex-subagents.md +98 -0
  274. package/skills/build-loop/references/coordination.md +161 -0
  275. package/skills/build-loop/references/correction-aware-capture.md +177 -0
  276. package/skills/build-loop/references/independent-auditor.md +72 -0
  277. package/skills/build-loop/references/intent-capability-pack.md +170 -0
  278. package/skills/build-loop/references/intent-exploration-prompts.md +96 -0
  279. package/skills/build-loop/references/leadership.md +72 -0
  280. package/skills/build-loop/references/memory.md +284 -0
  281. package/skills/build-loop/references/modular-systems-pack.md +96 -0
  282. package/skills/build-loop/references/output-style.md +129 -0
  283. package/skills/build-loop/references/pay-it-forward-arch.md +98 -0
  284. package/skills/build-loop/references/phase-1-assess.md +218 -0
  285. package/skills/build-loop/references/phase-2-plan.md +77 -0
  286. package/skills/build-loop/references/phase-3-execute.md +47 -0
  287. package/skills/build-loop/references/phase-4-review.md +310 -0
  288. package/skills/build-loop/references/phase-5-iterate.md +71 -0
  289. package/skills/build-loop/references/phase-6-learn.md +56 -0
  290. package/skills/build-loop/references/recent-design-structures.md +274 -0
  291. package/skills/build-loop/references/refactor-history/ASSESSMENT.md +85 -0
  292. package/skills/build-loop/references/refactor-history/STANDALONE_TEST_RUN.md +149 -0
  293. package/skills/build-loop/references/refactor-history/scenarios/01-simple-bugfix.md +32 -0
  294. package/skills/build-loop/references/refactor-history/scenarios/02-ui-build-with-iteration.md +48 -0
  295. package/skills/build-loop/references/refactor-history/scenarios/03-multi-failure-escalation.md +60 -0
  296. package/skills/build-loop/references/refactor-history/scenarios/04-ui-build-ibr-absent.md +51 -0
  297. package/skills/build-loop/references/refactor-history/scenarios/05-refactor-navgator-absent.md +71 -0
  298. package/skills/build-loop/references/refactor-history/scenarios/06-recurring-bug-debugger-absent.md +52 -0
  299. package/skills/build-loop/references/refactor-history/trace-comparison.md +202 -0
  300. package/skills/build-loop/references/self-recursive-dev.md +77 -0
  301. package/skills/build-loop/references/self-review.md +232 -0
  302. package/skills/build-loop/references/ui-io-contract.md +116 -0
  303. package/skills/build-loop/scanners/audit-design-rules.mjs +476 -0
  304. package/skills/build-loop/scanners/require-visual-evidence.mjs +239 -0
  305. package/skills/build-loop/templates/backlog-item.md +35 -0
  306. package/skills/build-loop/templates/codex-worker-prompt.md +89 -0
  307. package/skills/build-loop/templates/ui-subagent-prompt.md +179 -0
  308. package/skills/build-loop/templates/ux-fix-plan.md +40 -0
  309. package/skills/building-with-deepagents/SKILL.md +195 -0
  310. package/skills/building-with-deepagents/references/anti-patterns.md +141 -0
  311. package/skills/building-with-deepagents/references/api-quick-reference.md +184 -0
  312. package/skills/capabilities/SKILL.md +91 -0
  313. package/skills/debug-loop/SKILL.md +278 -0
  314. package/skills/debug-loop/references/convergence-rules.md +145 -0
  315. package/skills/debug-loop/references/swiftui-macos-clunky-ui-debugger.html +823 -0
  316. package/skills/debugging/assess/SKILL.md +111 -0
  317. package/skills/debugging/debug-loop/SKILL.md +231 -0
  318. package/skills/debugging/memory/SKILL.md +147 -0
  319. package/skills/debugging/store/SKILL.md +153 -0
  320. package/skills/debugging-memory/SKILL.md +440 -0
  321. package/skills/debugging-memory/examples/incident-example.json +67 -0
  322. package/skills/debugging-memory/references/incident-documentation.md +280 -0
  323. package/skills/debugging-memory/references/ios-notification-alarm-playbook.md +300 -0
  324. package/skills/debugging-memory/references/pattern-extraction.md +163 -0
  325. package/skills/debugging-memory/references/subagent-integration.md +312 -0
  326. package/skills/defenseclaw-bridge/SKILL.md +156 -0
  327. package/skills/defenseclaw-bridge/references/dc-config-mapping.md +162 -0
  328. package/skills/defenseclaw-bridge/references/output-format.md +108 -0
  329. package/skills/handoff/SKILL.md +94 -0
  330. package/skills/ibr-bridge/SKILL.md +68 -0
  331. package/skills/knowledge/SKILL.md +127 -0
  332. package/skills/knowledge/references/recall-integration.md +83 -0
  333. package/skills/knowledge/templates/madr-minimal.md +56 -0
  334. package/skills/knowledge-review/SKILL.md +112 -0
  335. package/skills/logging-tracer/SKILL.md +202 -0
  336. package/skills/logging-tracer/references/log-analysis.md +128 -0
  337. package/skills/logging-tracer/references/stack-templates.md +274 -0
  338. package/skills/logging-tracer-bridge/SKILL.md +70 -0
  339. package/skills/mcp-builder/SKILL.md +278 -0
  340. package/skills/mcp-builder/references/mcp-security.md +106 -0
  341. package/skills/model-tiering/SKILL.md +216 -0
  342. package/skills/native-ax-driver/SKILL.md +220 -0
  343. package/skills/native-ax-driver/scripts/layout_fill.py +222 -0
  344. package/skills/native-ax-driver/scripts/native_driver.py +495 -0
  345. package/skills/native-ax-driver/swift/bl-ax-driver/Package.swift +20 -0
  346. package/skills/native-ax-driver/swift/bl-ax-driver/Sources/main.swift +542 -0
  347. package/skills/optimize/SKILL.md +202 -0
  348. package/skills/optimize/profiles.md +61 -0
  349. package/skills/plan-verify/SKILL.md +115 -0
  350. package/skills/plan-verify/test-fixtures/example-app-v20-findings.json +27 -0
  351. package/skills/plan-verify/test-fixtures/example-app-v20.md +42 -0
  352. package/skills/plan-verify/test-fixtures/example-app-v22-findings.json +15 -0
  353. package/skills/plan-verify/test-fixtures/example-app-v22.md +1608 -0
  354. package/skills/plan-verify/test-fixtures/unrelated-good-plan-findings.json +15 -0
  355. package/skills/plan-verify/test-fixtures/unrelated-good-plan.md +55 -0
  356. package/skills/plugin-builder/SKILL.md +329 -0
  357. package/skills/plugin-builder/references/authoritative-sources.md +104 -0
  358. package/skills/plugin-builder/references/build-loop-phase-guidance.md +94 -0
  359. package/skills/plugin-builder/references/components-guide.md +221 -0
  360. package/skills/plugin-builder/references/distribution.md +317 -0
  361. package/skills/plugin-builder/references/dual-host-claude-codex.md +220 -0
  362. package/skills/plugin-builder/references/hooks-reference.md +210 -0
  363. package/skills/plugin-builder/references/manifest-schema.md +111 -0
  364. package/skills/plugin-builder/references/plugin-hygiene-lessons.md +307 -0
  365. package/skills/plugin-tests/SKILL.md +94 -0
  366. package/skills/prd-bridge/SKILL.md +135 -0
  367. package/skills/research/SKILL.md +80 -0
  368. package/skills/security-methodology/SKILL.md +105 -0
  369. package/skills/security-methodology/references/cross-source-matrix.md +77 -0
  370. package/skills/security-methodology/references/mitre-atlas-starter.md +83 -0
  371. package/skills/security-methodology/references/nist-600-1-mapping.md +119 -0
  372. package/skills/security-methodology/references/owasp-agentic-top-10.md +157 -0
  373. package/skills/security-methodology/references/owasp-llm-top-10.md +144 -0
  374. package/skills/security-methodology/references/owasp-web-top-10.md +65 -0
  375. package/skills/self-improve/SKILL.md +298 -0
  376. package/skills/spec-writing/SKILL.md +548 -0
  377. package/skills/spec-writing/scripts/check_checklist.py +478 -0
  378. package/skills/sync-skills/SKILL.md +132 -0
  379. package/skills/telemetry/SKILL.md +66 -0
  380. package/skills/ui-design/SKILL.md +75 -0
  381. package/skills/ui-design/references/design-patterns-multi.md +165 -0
  382. package/skills/ui-design/references/design-preferences-from-owned-apps.md +150 -0
  383. package/skills/ui-design/references/evidence-capture-policy.md +55 -0
  384. package/skills/ui-design/references/ui-guidance-sources.md +330 -0
  385. package/skills/ui-design/references/universal-design-principles.alt.md +182 -0
  386. package/skills/ui-design/references/universal-design-principles.md +419 -0
  387. package/templates/memory/MEMORY.md.template +55 -0
  388. package/templates/memory/constitution.md.template +64 -0
  389. package/templates/memory/manifest.json +47 -0
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: build-loop:debugging-assess
3
+ description: Parallel domain assessment for complex debugging symptoms — fans out database / frontend / API / performance assessors in parallel and ranks findings. Build-loop's native assessor orchestration, adapted from debugger command workflows (no canonical SKILL.md exists upstream).
4
+ version: 0.1.0
5
+ user-invocable: false
6
+ source: claude-code-debugger/commands/assess.md
7
+ source_hash: f97d4966e110928acea7678124aad0c421e6fc64ddf0a6f53a7e14580650307a
8
+ ---
9
+
10
+ <!-- SPDX-FileCopyrightText: 2025-2026 Tyrone Ross, Jr <46267523+tyroneross@users.noreply.github.com> | SPDX-License-Identifier: Apache-2.0 -->
11
+
12
+ # Parallel Domain Assessment
13
+
14
+ Run multiple specialized assessor agents in parallel against a vague or multi-domain symptom, then rank findings by confidence. Native to build-loop; initially adapted from the debugger command workflow.
15
+
16
+ > **Divergence note**: the standalone debugger ships this as a slash command, not a discrete SKILL.md. The assessor agents (`api-assessor`, `database-assessor`, `frontend-assessor`, `performance-assessor`) are bundled into build-loop under `agents/` and used directly here.
17
+
18
+ ## When to Activate
19
+
20
+ - Phase 5 Iterate: after 2 consecutive same-root-cause failures in Review-B
21
+ - Symptom is vague or unclear ("app broken", "something wrong")
22
+ - Multiple domains may be involved ("search is slow and returns wrong results")
23
+ - Post-deploy regression with unknown scope
24
+ - Complex issue affecting multiple layers
25
+
26
+ ## Hard Caps
27
+
28
+ - Spawn parallel assessors via `Agent` tool; obey the `~/.claude/CLAUDE.md` §Sub-Agents 4-parallel cap
29
+ - Pin model to `sonnet` for each domain assessor — at the orchestrator's Opus 4.7 tier, defaulting to `inherit` would fan out 4× Opus invocations and shred the cost ledger
30
+ - Only escalate an individual assessor to Opus if its initial output flags `confidence: low` or `needs_judgment: true`
31
+
32
+ ## Workflow
33
+
34
+ 1. **Detect domains** from symptom keywords:
35
+
36
+ | Domain | Trigger Keywords |
37
+ |--------|-----------------|
38
+ | Database | query, schema, migration, prisma, sql, connection, constraint, index |
39
+ | Frontend | react, hook, useEffect, render, component, state, hydration, browser |
40
+ | API | endpoint, route, request, response, auth, 500, 404, cors, middleware |
41
+ | Performance | slow, latency, timeout, memory, leak, cpu, bottleneck, optimization |
42
+
43
+ 2. **Search memory once** — invoke `build-loop:debugging-memory` with the symptom; pass any matching incidents to each assessor as context. Don't make each assessor re-query memory.
44
+
45
+ 3. **Launch assessors in parallel** with `Agent`, all in a single message:
46
+ - `database-assessor` — queries, schema, migrations, connection issues
47
+ - `frontend-assessor` — React, hooks, rendering, state, hydration, SSR
48
+ - `api-assessor` — endpoints, REST/GraphQL, auth, middleware, CORS
49
+ - `performance-assessor` — latency, memory, CPU, bottlenecks
50
+
51
+ Pass each: `{ symptom, repro_steps, related_incidents, files_in_scope, model: "sonnet" }`.
52
+
53
+ 4. **Aggregate results** — each assessor returns JSON:
54
+ ```json
55
+ {
56
+ "confidence": 0.0-1.0,
57
+ "probable_causes": ["..."],
58
+ "recommended_actions": ["..."],
59
+ "related_incidents": ["INC_..."]
60
+ }
61
+ ```
62
+
63
+ 5. **Rank** by confidence, then by `len(related_incidents)`. Generate priority sequence of recommended actions.
64
+
65
+ 6. **Present unified diagnosis** — top 3 actions, evidence count, escalation if all assessors return `confidence < 0.4`.
66
+
67
+ ## Result Aggregation Format
68
+
69
+ ```
70
+ ═══ PARALLEL DOMAIN ASSESSMENT ═══
71
+ Symptom: <symptom string>
72
+ Assessors fired: database, frontend, api, performance
73
+
74
+ Top finding (confidence 0.78, database-assessor):
75
+ Probable cause: N+1 query on Article.findMany inside getServerSideProps
76
+ Recommended action: add `include: { author: true }` to eliminate per-row lookup
77
+ Related incidents: INC_DB_20260315_..., INC_DB_20260201_...
78
+
79
+ Secondary finding (confidence 0.52, performance-assessor):
80
+ Probable cause: missing index on Article.publishedAt
81
+ Recommended action: add migration `CREATE INDEX articles_published_at`
82
+
83
+ Action sequence: 1) eliminate N+1, 2) add index, 3) re-verify latency
84
+ ```
85
+
86
+ ## When Assessors Disagree
87
+
88
+ If two assessors return overlapping `probable_causes` with similar confidence — flag as **multi-causal**. Both fixes may be needed. Don't pick one and discard the other.
89
+
90
+ If they disagree fundamentally (e.g., database-assessor says query, performance-assessor says rendering) — present both, ask user which path to pursue first, OR escalate to `build-loop:debugging-debug-loop` for causal-tree investigation.
91
+
92
+ ## Output
93
+
94
+ Write summary to `.build-loop/state.json.debugging.assess[<symptom-hash>]`:
95
+ ```json
96
+ {
97
+ "symptom": "...",
98
+ "assessors_fired": ["database", "frontend", "api", "performance"],
99
+ "top_finding": { "domain": "database", "confidence": 0.78, "cause": "..." },
100
+ "action_sequence": [...],
101
+ "multi_causal": false
102
+ }
103
+ ```
104
+
105
+ ## Sibling Skills
106
+
107
+ - `build-loop:debugging-memory` — search before assessing (mandatory pre-step)
108
+ - `build-loop:debugging-debug-loop` — escalate when assessment is inconclusive
109
+ - `build-loop:debugging-store` — store the resolved incident after the recommended action lands
110
+
111
+ *Source: adapted from the standalone debugger assess command plus the four assessor agents. Drift-checked by `build-loop:sync-skills`.*
@@ -0,0 +1,231 @@
1
+ ---
2
+ name: build-loop:debugging-debug-loop
3
+ description: Iterative root-cause debugging with 5 Whys, causal/fault-tree analysis, hypothesis testing, fix-verify-score cycles, and fix-critique pressure-test. Up to 5 iterations. Build-loop's native debug loop, adapted from debugger workflows.
4
+ version: 0.1.0
5
+ user-invocable: false
6
+ source: claude-code-debugger/skills/debug-loop/SKILL.md
7
+ source_hash: 07b2dd2ad30c210b14bbac3c4e7ddd772ed642dd4c478dfbdb81b52ae809c92a
8
+ ---
9
+
10
+ <!-- SPDX-FileCopyrightText: 2025-2026 Tyrone Ross, Jr <46267523+tyroneross@users.noreply.github.com> | SPDX-License-Identifier: Apache-2.0 -->
11
+
12
+ # Debug Loop — Iterative Root Cause Debugging
13
+
14
+ A 7-phase debugging loop: investigate with structured root-cause methods, hypothesize root cause, implement targeted fix, verify with evidence, score against criteria, pressure-test via critique agent, and report with transparency markers. Iterates up to 5x on failures. Native to build-loop; initially adapted from the debugger workflow lineage.
15
+
16
+ ## Scope Check
17
+
18
+ Trigger is the **verdict category**, not a numeric score — research shows LLM-assigned confidence scores are poorly calibrated for open-ended tasks (Tian et al., EMNLP 2023; 49-84% calibration error on open-ended generation).
19
+
20
+ - **Skip the loop** if `build-loop:debugging-memory` returned `KNOWN_FIX` — apply the fix directly and verify
21
+ - **Skip the loop** for trivial issues: typos, missing imports, obvious config errors
22
+ - **Enter the loop** when: verdict is `LIKELY_MATCH`, `WEAK_SIGNAL`, or `NO_MATCH`, the user asks for deep investigation, the initial diagnosis feels superficial, or a previous fix attempt didn't hold
23
+
24
+ ## Efficiency
25
+
26
+ - Terminal output: current phase, key findings (one line each), status changes, failures. No verbose reasoning
27
+ - Agent context: minimum needed per job. Pass symptom + relevant findings, not full conversation history
28
+ - Load convergence rules reference on demand only when entering iteration
29
+
30
+ ## Phase 1: INVESTIGATE — Gather Evidence and Trace Root Cause
31
+
32
+ **Goal**: Understand what's actually failing and why, not just what it looks like.
33
+
34
+ 1. **Search debugging memory** — invoke `build-loop:debugging-memory` with the symptom. Note related incidents from local build-loop memory and optional standalone Coding Debugger memory when available.
35
+ 2. **Reproduce the issue** — identify exact steps, commands, or conditions that trigger the bug
36
+ 3. **Deploy `root-cause-investigator` agent** — pass the symptom and reproduction steps for causal tree analysis. The agent explores multiple branches (not a single chain), prioritizes by evidence strength, and prunes with evidence.
37
+ 4. **Research gate** — if the investigator flags unfamiliar error codes, library behavior, or version-specific issues:
38
+ - Search externally (WebSearch, Context7, or documentation)
39
+ - Document what was searched and what was found
40
+ - If search is unavailable, document what SHOULD be searched
41
+ 5. **Assess completeness** — does the investigation explain ALL reported symptoms? Check for multi-causal bugs (2+ independent root causes)
42
+
43
+ **Output**: Causal tree (with confirmed and pruned branches), reproduction steps, evidence gathered, research performed.
44
+
45
+ ### Root-Cause Frameworks
46
+
47
+ Use the lightest framework that fits the failure. Stack frameworks only when the current one stalls.
48
+
49
+ | Framework | Use when | Output |
50
+ |---|---|---|
51
+ | 5 Whys | A symptom has a plausible linear chain and needs a controllable system cause | Five-level why-chain ending in a code, test, config, protocol, or process control |
52
+ | Causal tree / fault tree | Multiple causes could explain the same symptom | Branches with confirming and pruning evidence |
53
+ | Ishikawa / fishbone | The failure may span people/process/code/tooling/data/environment | Category map, then the top 2-3 branches to test |
54
+ | Kepner-Tregoe problem analysis | The issue is intermittent, version-specific, or boundary-sensitive | Is/is-not table: affected/unaffected versions, inputs, users, routes, environments |
55
+ | Differential diagnosis | Several hypotheses look similar from symptoms alone | Ranked hypotheses plus the discriminating test for each |
56
+ | Falsification test | A hypothesis is attractive but under-proven | Smallest test that would disprove it |
57
+
58
+ For hard fixes, record which framework was used and the decisive evidence. The framework is a thinking scaffold, not a report section unless it clarifies the outcome.
59
+
60
+ ## Phase 2: HYPOTHESIZE — State the Root Cause
61
+
62
+ **Goal**: Commit to a specific, testable hypothesis before writing any fix.
63
+
64
+ Start with plain language before implementation detail. State what failed in normal words, then trace visible symptom -> technical failure -> upstream dependency/interface/process failure -> first controllable system failure. Do not use "agent forgot", "agent missed context", or similar actor-blame language as the terminal cause unless you also name the missing system control that allowed it.
65
+
66
+ 1. **State the root cause hypothesis** with evidence level:
67
+ - **Strong**: Multiple evidence types (code, logs, reproduction) all point to this cause
68
+ - **Moderate**: Some direct evidence plus reasonable inference
69
+ - **Weak**: Mostly inference, limited direct evidence — consider investigating other branches first
70
+ 2. **Predict verification test**: If this hypothesis is correct, what specific test would prove it?
71
+ 3. **Predict related symptoms**: What else should be affected if this root cause is real?
72
+ 4. **If multiple hypotheses exist**, rank by evidence strength. Pursue the strongest first.
73
+
74
+ ## Phase 3: FIX — Implement Targeted Change
75
+
76
+ **Goal**: Make the minimal change that addresses the hypothesized root cause.
77
+
78
+ 1. **Fix the root cause, not the symptom** — adding a null check instead of fixing why something is null is a symptom fix
79
+ 2. **Minimal changes** — touch only what's needed. Don't refactor, don't improve, don't clean up
80
+ 3. **Note exactly what was changed and why** — this becomes the evidence trail
81
+
82
+ ## Phase 4: VERIFY — Test the Fix with Evidence
83
+
84
+ **Goal**: Collect concrete evidence that the fix works.
85
+
86
+ 1. Run the prediction test from Phase 2 — does it confirm the hypothesis?
87
+ 2. Run the original reproduction steps — is the symptom gone?
88
+ 3. Run related test suite — do existing tests still pass?
89
+ 4. Check for regressions — run broader test suite if available
90
+ 5. Verify related symptom predictions — are predicted effects present?
91
+
92
+ Every verification step must produce evidence: command output, test results, observable behavior. "It should work" is not evidence.
93
+
94
+ ## Phase 5: SCORE — Evaluate Against Criteria
95
+
96
+ **Goal**: Objective pass/fail with evidence.
97
+
98
+ | # | Criterion | Method | Pass Condition | Evidence Required |
99
+ |---|-----------|--------|----------------|-------------------|
100
+ | 1 | Symptom resolved | Reproduction steps | Symptom no longer occurs | Command output or test result |
101
+ | 2 | Tests pass | Test suite | All relevant tests pass | Test runner output |
102
+ | 3 | No regressions | Broader test suite | No new failures introduced | Test runner output |
103
+ | 4 | Root cause addressed | Code review | Fix targets root cause, not symptom | Diff + reasoning |
104
+ | 5 | Hypothesis confirmed | Prediction test | Prediction test passes | Test output |
105
+
106
+ **All criteria must have evidence.** No criterion marked PASS without proof.
107
+
108
+ If any criterion fails → enter iteration (Phase 6 rules apply).
109
+ If all criteria pass → proceed to critique (Phase 6).
110
+
111
+ ## Phase 6: CRITIQUE — Pressure-Test Before Declaring Done
112
+
113
+ **Goal**: Challenge the fix before the user relies on it.
114
+
115
+ 1. **Deploy `fix-critique` agent** with: the symptom, the causal tree from investigation (confirmed branch path + pruned branches), the fix (what was changed), the verification evidence
116
+ 2. **Evaluate verdict**:
117
+ - **APPROVED** → proceed to REPORT
118
+ - **CHALLENGED** → concerns become input for the next iteration. Route back to INVESTIGATE with the specific challenges as new investigation targets
119
+
120
+ The critique agent checks 5 things:
121
+ - Root cause vs symptom fix
122
+ - Symptom coverage (similar bugs elsewhere)
123
+ - Regression risk
124
+ - Evidence verification
125
+ - Causal tree consistency
126
+
127
+ ## Phase 7: REPORT — Transparent Status
128
+
129
+ **Goal**: Clear, honest summary. No overclaiming.
130
+
131
+ ### Transparency Markers
132
+
133
+ - ✅ **Verified**: Checked with evidence (test output, reproduction, command results)
134
+ - ⚠️ **Assumed**: Believed true based on reasoning, not verified with a test
135
+ - ❓ **Unknown**: Not checked — explicitly acknowledged gap
136
+
137
+ ### Report Contents
138
+
139
+ 1. Verdict: Fixed (all criteria pass + critique approved) or Unresolved (iteration limit hit)
140
+ 2. Plain-language failure: what went wrong in normal words
141
+ 3. Why it happened: symptom -> technical failure -> upstream dependency/interface/process failure -> first controllable system failure
142
+ 4. Technical details needed to prove the cause
143
+ 5. Tradeoffs and impact
144
+ 6. Prevention control
145
+ 7. Root cause + evidence level
146
+ 8. Causal tree — confirmed branches, pruned branches with rejection evidence, multi-causal findings
147
+ 9. Fix applied — what was changed, with rationale
148
+ 10. Scorecard — final pass/fail per criterion + evidence
149
+ 11. Research used — what was searched, what was found
150
+ 12. Iteration history (if >1 iteration) — what was tried, what failed, what changed
151
+ 13. Remaining gaps — anything ⚠️ or ❓
152
+
153
+ ### After Reporting
154
+
155
+ - Store via `build-loop:debugging-store`
156
+ - Record outcome through standalone Coding Debugger only when it supplied the matched prior incident
157
+ - Write state to `.build-loop/debugging-debug-loop/scorecard.md`
158
+
159
+ ## Iteration Rules
160
+
161
+ When any criterion fails or critique is CHALLENGED:
162
+
163
+ 1. Diagnose why the criterion failed — don't blind retry
164
+ 2. Revise the hypothesis if verification disproved it
165
+ 3. Create targeted fix plan for failed criteria only
166
+ 4. Execute fix
167
+ 5. Re-verify ONLY failed criteria — don't re-run passing checks
168
+ 6. Re-score and re-critique
169
+
170
+ ### Convergence Detection
171
+
172
+ - **Same hypothesis fails 2x** → escalate to user ("I've tried this approach twice — the hypothesis may be wrong or there's a constraint I'm not seeing")
173
+ - **Fix A breaks criterion B (oscillation)** → flag as coupled issue, present both sides, ask user
174
+ - **3+ criteria fail after a fix** → systemic issue, stop loop and reassess
175
+ - **New regression detected** → fix is causing side effects, reconsider
176
+ - **Hard stop at 5 iterations** → report what's known and what isn't
177
+
178
+ ### State Tracking
179
+
180
+ Write iteration state to `.build-loop/debugging-debug-loop/state.json`:
181
+
182
+ ```json
183
+ {
184
+ "symptom": "...",
185
+ "iteration": 1,
186
+ "phase": "VERIFY",
187
+ "hypotheses": [
188
+ { "iteration": 1, "hypothesis": "...", "evidence_level": "strong|moderate|weak", "result": "confirmed|disproved|partial", "evidence": "..." }
189
+ ],
190
+ "scorecard": [
191
+ { "criterion": "symptom_resolved", "result": "PASS|FAIL", "evidence": "..." }
192
+ ],
193
+ "critique_verdict": "APPROVED|CHALLENGED|pending",
194
+ "changes_made": ["file:change summary"]
195
+ }
196
+ ```
197
+
198
+ `mkdir -p .build-loop/debugging-debug-loop/` before writing.
199
+
200
+ ## Process Flow
201
+
202
+ ```
203
+ MEMORY SEARCH → INVESTIGATE → HYPOTHESIZE → FIX → VERIFY → SCORE
204
+
205
+ All pass? ──yes──→ CRITIQUE ──approved──→ REPORT
206
+ ↓ ↓
207
+ no challenged
208
+ ↓ ↓
209
+ ITERATE ←──────────────┘
210
+ (up to 5x)
211
+ ```
212
+
213
+ ## Anti-Patterns
214
+
215
+ | Anti-Pattern | What to Do Instead |
216
+ |-------------|-------------------|
217
+ | Accepting the first explanation | Branch first — identify 2+ plausible causes |
218
+ | Fixing the symptom | Trace to root cause |
219
+ | "This should fix it" | Run the tests, show the output |
220
+ | Retrying the same approach | If it failed once with the same evidence, change the hypothesis |
221
+ | Declaring victory without evidence | Every claim needs ✅/⚠️/❓ |
222
+ | Skipping research when stuck | Search for unfamiliar behavior |
223
+ | Hiding uncertainty | ⚠️ and ❓ are not failures — hiding them is |
224
+
225
+ ## Sibling Skills
226
+
227
+ - `build-loop:debugging-memory` — mandatory pre-step (Phase 1.1)
228
+ - `build-loop:debugging-assess` — escalation path when investigation can't isolate domain
229
+ - `build-loop:debugging-store` — Phase 7 incident storage
230
+
231
+ *Source: adapted from the debugger workflow lineage and maintained as a build-loop-native skill. Drift-checked by `build-loop:sync-skills`.*
@@ -0,0 +1,147 @@
1
+ ---
2
+ name: build-loop:debugging-memory-search
3
+ description: Memory-first lookup before debugging — search local build-loop incidents and optionally standalone Coding Debugger memory. Build-loop's native debugging memory, adapted from debugger workflows. Distinct from the legacy in-tree `build-loop:debugging-memory` skill (kept for backward compat); this is the source-tracked native version.
4
+ version: 0.1.0
5
+ user-invocable: false
6
+ source: claude-code-debugger/skills/debugging-memory/SKILL.md
7
+ source_hash: 5c4ee5ada781107e7def92abeca4d51fc0efc61700f7cf43e948da34f4c0681d
8
+ ---
9
+
10
+ <!-- SPDX-FileCopyrightText: 2025-2026 Tyrone Ross, Jr <46267523+tyroneross@users.noreply.github.com> | SPDX-License-Identifier: Apache-2.0 -->
11
+
12
+ # Debugging Memory Workflow (Native, Sourced)
13
+
14
+ Memory-first debugging. Core principle: **never solve the same bug twice**. Native to build-loop; initially adapted from the debugger workflow lineage. Search local `.build-loop/issues/` first, then use standalone Coding Debugger for cross-project memory only when that plugin is installed.
15
+
16
+ > **Naming note**: this skill is `build-loop:debugging-memory-search` to avoid colliding with the legacy in-tree `build-loop:debugging-memory` skill (which the orchestrator continues to call as the memory-first gate's primary entry point). Both have equivalent content; this one carries `source` + `source_hash` provenance and is drift-checked by `build-loop:sync-skills`. New code should prefer the legacy name until the orchestrator is migrated; sibling skills in `skills/debugging/` reference the legacy name where the gate's exact runtime semantics are needed.
17
+
18
+ ## When to Activate
19
+
20
+ - Phase 1 Assess: pull recent project incident context for orientation (`list-recent` intent)
21
+ - Phase 4 Review-B Validate: on every criterion failure with an error-like signal — read logs first, synthesize symptom, search memory
22
+ - Phase 5 Iterate: at the start of every Iterate attempt, re-search with the new symptom (failure may have shifted shape after a fix)
23
+
24
+ ## Memory-First Approach
25
+
26
+ Before investigating any bug, check debugging memory with the symptom description.
27
+
28
+ The search returns a **verdict** with matching incidents and patterns when structured memory is available. File-backed fallback returns a degraded local verdict with the same action shape.
29
+
30
+ **Verdict-based decision tree:**
31
+
32
+ 1. **KNOWN_FIX**: Apply the documented fix directly only when the strict direct-apply gate (below) passes; otherwise adapt the prior incident as a hypothesis and route to the standard fix flow
33
+ 2. **LIKELY_MATCH**: Review the past incident, use it as a starting point — never direct-apply
34
+ 3. **WEAK_SIGNAL**: Consider loosely related incidents, but investigate fresh
35
+ 4. **NO_MATCH**: Proceed with standard debugging via `build-loop:debugging-debug-loop`, then document the solution after
36
+
37
+ ### Direct-apply gate (KNOWN_FIX only)
38
+
39
+ All three must pass — otherwise downgrade to adapted-plan routing and record `direct_apply_blocked_by`:
40
+
41
+ 1. **file_match**: at least one file in the prior incident's `files_changed` exists in current repo at same relative path
42
+ 2. **version_match**: dependency versions in the prior incident match current within minor (semver). If the prior incident's `tags` include a version, compare it to current `package.json`/`requirements.txt`/etc.
43
+ 3. **second_signal**: at least one secondary signal — same error class, same callsite line range, or same component layer
44
+
45
+ Skip direct-apply for any pattern with category `react-hooks`, `performance`, or anything where the fix is "increase value X" — those are context-sensitive.
46
+
47
+ ## Progressive Depth Retrieval
48
+
49
+ 1. **Initial search**: local build-loop incident lookup; if standalone Coding Debugger is available, use its `search` tool for cross-project matches
50
+ 2. **Drill down**: read the local issue file or, for Coding Debugger matches, use `detail` with the ID
51
+ 3. **Outcome tracking**: for Coding Debugger matches, use `outcome` to record whether the fix worked
52
+
53
+ ## Visibility
54
+
55
+ When this skill activates, always announce it to the user:
56
+
57
+ 1. **Before searching**: "Checking debugging memory for similar issues..."
58
+ 2. **After search**: "Found X matching incident(s) from past debugging sessions" or "No matching incidents — starting fresh investigation"
59
+
60
+ ## Deep Investigation Mode
61
+
62
+ For non-trivial issues, escalate to the `build-loop:debugging-debug-loop` skill. Trigger is the **verdict category**, not a numeric confidence score:
63
+
64
+ - **`KNOWN_FIX`** → apply directly, skip the loop
65
+ - **`LIKELY_MATCH`** → enter debug loop (past incidents need verification against current context)
66
+ - **`WEAK_SIGNAL`** → enter debug loop (loosely related, fresh investigation needed)
67
+ - **`NO_MATCH`** → enter debug loop (no prior knowledge)
68
+
69
+ Also enter the debug loop when:
70
+ - Initial diagnosis feels superficial
71
+ - Previous fix didn't hold
72
+ - User explicitly asks for root-cause analysis
73
+ - Multiple symptoms suggest a shared cause
74
+
75
+ ## Basic Steps (simple, clear-cut issues)
76
+
77
+ 1. **Reproduce** — exact steps, environmental factors, minimal repro
78
+ 2. **Isolate** — binary search recent changes, disable components, check logs
79
+ 3. **Diagnose** — trace execution, examine state, identify offending code
80
+ 4. **Fix** — minimal, targeted, no side effects
81
+ 5. **Verify** — original repro, related tests, regression check
82
+
83
+ ## Incident Documentation
84
+
85
+ After fixing a bug, store via `build-loop:debugging-store`. Required fields: `symptom`, `root_cause`, `fix`. Optional: `category`, `tags`, `files_changed`, `file`.
86
+
87
+ ## Quality Indicators
88
+
89
+ The memory system scores incidents on:
90
+ - Root cause analysis depth (30%)
91
+ - Fix documentation completeness (30%)
92
+ - Verification status (20%)
93
+ - Tags and metadata (20%)
94
+
95
+ Target 75%+ quality score for effective future retrieval.
96
+
97
+ ## Tagging Strategy
98
+
99
+ - Technology: `react`, `typescript`, `api`, `database`
100
+ - Category: `logic`, `config`, `dependency`, `performance`
101
+ - Symptom type: `crash`, `render`, `timeout`, `validation`
102
+
103
+ ## Pattern Recognition
104
+
105
+ The memory system extracts patterns when 3+ similar incidents exist. Patterns have higher reliability than individual incidents. When a pattern matches, trust the solution template (90%+ confidence), apply the recommended approach, note caveats.
106
+
107
+ ## Optional Coding Debugger Tools
108
+
109
+ | Tool | Purpose |
110
+ |------|---------|
111
+ | `search` | Search memory for similar bugs (returns verdict) |
112
+ | `store` | Store a new debugging incident |
113
+ | `detail` | Get full incident or pattern details |
114
+ | `status` | Show memory statistics |
115
+ | `list` | List recent incidents |
116
+ | `patterns` | List known fix patterns |
117
+ | `outcome` | Record whether a fix worked |
118
+
119
+ Use these only when standalone Coding Debugger is installed. Build-loop does not register these MCP tools itself.
120
+
121
+ ## Review-F Outcome Feedback
122
+
123
+ Closes the memory-first gate's feedback loop. Both required:
124
+
125
+ - For each newly resolved Review-B/Iterate failure: invoke `build-loop:debugging-store` with `{symptom, root_cause, fix, tags: ["build-loop", project, layer], files}`
126
+ - For each Review-B memory gate where standalone Coding Debugger supplied a prior `KNOWN_FIX` or `LIKELY_MATCH`: invoke its `outcome` tool with `{incident_id, result: "worked"|"failed"|"modified", notes}` — this trains the optional verdict classifier
127
+
128
+ Skipping `outcome` means the optional verdict classifier never improves.
129
+
130
+ ## Subagent Integration
131
+
132
+ When debugging involves subagents:
133
+
134
+ 1. **Pre-query memory once** through `build-loop:debugging-memory` before spawning agents
135
+ 2. **Distribute context** — each agent gets relevant subset
136
+ 3. **Aggregate findings** — collect insights from all agents
137
+ 4. **Store unified incident** — single `build-loop:debugging-store` call to document combined diagnosis
138
+
139
+ Subagents do not inherit Skill or MCP access — pre-load context into their prompt.
140
+
141
+ ## Sibling Skills
142
+
143
+ - `build-loop:debugging-store` — write incident after fix
144
+ - `build-loop:debugging-assess` — parallel domain assessment for multi-domain symptoms
145
+ - `build-loop:debugging-debug-loop` — iterative root-cause analysis with causal-tree investigation
146
+
147
+ *Source: adapted from the debugger workflow lineage and maintained as a build-loop-native skill. Drift-checked by `build-loop:sync-skills`.*
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: build-loop:debugging-store
3
+ description: Store a debugging incident after fixing a bug — writes build-loop's native local incident record and optionally mirrors to standalone Coding Debugger. Build-loop's native incident storage; canonical source has no discrete SKILL.md (the §"Incident Documentation" section of debugging-memory).
4
+ version: 0.1.0
5
+ user-invocable: false
6
+ source: claude-code-debugger/skills/debugging-memory/SKILL.md
7
+ source_hash: 5c4ee5ada781107e7def92abeca4d51fc0efc61700f7cf43e948da34f4c0681d
8
+ source_section: "Incident Documentation"
9
+ ---
10
+
11
+ <!-- SPDX-FileCopyrightText: 2025-2026 Tyrone Ross, Jr <46267523+tyroneross@users.noreply.github.com> | SPDX-License-Identifier: Apache-2.0 -->
12
+
13
+ # Debugging Incident Storage
14
+
15
+ Persist a fixed bug to debugging memory so future builds can recognize recurrence. Native to build-loop; initially adapted from the §"Incident Documentation" workflow in the debugger lineage.
16
+
17
+ > **Divergence note**: the standalone debugger does not ship a discrete `store` SKILL.md. Build-loop keeps storage as a native skill because Review-F needs deterministic local persistence even when no MCP server exists.
18
+
19
+ ## When to Activate
20
+
21
+ - Phase 4 Review-F Report: for each Review-B/Iterate failure newly resolved this build, store the incident
22
+ - After any `build-loop:debugging-debug-loop` run that produced a verified fix
23
+ - User asks "save this fix", "remember this bug"
24
+
25
+ ## Native Path — Build-Loop Incident Note
26
+
27
+ Write one incident note per resolved failure:
28
+
29
+ ```bash
30
+ mkdir -p .build-loop/issues
31
+ ```
32
+
33
+ Path:
34
+
35
+ ```text
36
+ .build-loop/issues/YYYY-MM-DD-<short-slug>.md
37
+ ```
38
+
39
+ Template:
40
+
41
+ ```markdown
42
+ # <one-line symptom>
43
+
44
+ **Symptom**: <error string, failing command, or observed behavior>
45
+ **Root cause**: <technical cause plus first controllable system cause>
46
+ **Fix**: <what changed and why>
47
+ **Verification**: <commands, tests, or observed proof>
48
+ **Files**: <paths touched>
49
+ **Tags**: build-loop, <project>, <layer>, <framework>, <symptom-type>
50
+ **RCA framework**: <5 Whys | causal tree | fishbone | Kepner-Tregoe | differential diagnosis | falsification>
51
+ ```
52
+
53
+ **Required**: `symptom`, `root_cause`, `fix`, `verification`. Everything else improves future retrieval.
54
+
55
+ ## Optional Mirror — Coding Debugger MCP
56
+
57
+ If standalone Coding Debugger is installed and available, mirror the same incident:
58
+
59
+ ```
60
+ mcp__plugin_coding_debugger__store({
61
+ symptom: "user-facing description (≤200 chars, preserves error type/file/key phrase)",
62
+ root_cause: "technical explanation of why",
63
+ fix: "what was changed",
64
+ category: "logic|config|dependency|performance|react-hooks",
65
+ tags: ["build-loop", "<project>", "<layer>", "<framework>", "<symptom-type>"],
66
+ files_changed: ["path/to/file1.ts", "path/to/file2.ts"],
67
+ file: "path/to/primary/problematic/file.ts"
68
+ })
69
+ ```
70
+
71
+ Mirror failure is not a build failure. Report it as "local incident stored; Coding Debugger mirror unavailable."
72
+
73
+ ## Tag Discipline
74
+
75
+ Always include:
76
+ - `"build-loop"` — distinguishes build-orchestrator origins from manual `/build-loop:debug` runs
77
+ - Project name (lowercase, slugified)
78
+ - Layer (`frontend`, `backend`, `database`, `infra`, `external`)
79
+
80
+ Add as relevant:
81
+ - Technology: `react`, `typescript`, `python`, `api`, `prisma`
82
+ - Category: `logic`, `config`, `dependency`, `performance`
83
+ - Symptom type: `crash`, `render`, `timeout`, `validation`
84
+
85
+ ## Quality Score Targets
86
+
87
+ The memory system scores stored incidents:
88
+ - Root cause depth (30%)
89
+ - Fix documentation completeness (30%)
90
+ - Verification status (20%)
91
+ - Tags and metadata (20%)
92
+
93
+ Target 75%+. Score below 75% means future searches won't surface this incident reliably — pad the description and tags before storing.
94
+
95
+ ## JSON Compatibility Fallback
96
+
97
+ If a downstream process requires JSON, write a compatibility copy after the native note:
98
+
99
+ **Step 1: Generate incident ID**
100
+ ```
101
+ INC_<CATEGORY>_YYYYMMDD_HHMMSS_xxxx
102
+ ```
103
+ where `xxxx` is 4 random alphanumeric characters. Example: `INC_API_20260403_143052_a7b2`.
104
+
105
+ **Step 2: Ensure directory exists**
106
+ ```bash
107
+ mkdir -p .build-loop/debugging/incidents
108
+ ```
109
+
110
+ **Step 3: Write the JSON**
111
+ ```json
112
+ {
113
+ "incident_id": "INC_API_20260403_143052_a7b2",
114
+ "timestamp": 1735654252000,
115
+ "symptom": "User-facing description of the bug",
116
+ "root_cause": {
117
+ "description": "Technical explanation",
118
+ "file": "path/to/problematic/file.ts",
119
+ "category": "logic|config|dependency|performance|react-hooks",
120
+ "confidence": 0.85
121
+ },
122
+ "fix": {
123
+ "approach": "What was done",
124
+ "changes": [
125
+ { "file": "path/to/file.ts", "lines_changed": 10, "change_type": "modify|add|delete", "summary": "..." }
126
+ ]
127
+ },
128
+ "verification": {
129
+ "status": "verified|unverified",
130
+ "regression_tests_passed": true,
131
+ "success_criteria_met": true
132
+ },
133
+ "tags": ["build-loop", "project-name", "layer", "category"],
134
+ "files_changed": ["list/of/all/files.ts"],
135
+ "quality_score": 0.75
136
+ }
137
+ ```
138
+
139
+ Write to `.build-loop/debugging/incidents/<incident_id>.json`. Flag `debugger JSON compatibility copy written` in Review-F only if another workflow requested JSON.
140
+
141
+ ## After Storing
142
+
143
+ 1. Confirm the local note path.
144
+ 2. If standalone Coding Debugger supplied the prior incident, invoke `outcome({incident_id, result: "worked"|"failed"|"modified", notes})` to train its verdict classifier.
145
+ 3. If the note lacks verification, enrich it before ending Review-F.
146
+
147
+ ## Sibling Skills
148
+
149
+ - `build-loop:debugging-memory` — search memory before debugging
150
+ - `build-loop:debugging-assess` — parallel domain assessment
151
+ - `build-loop:debugging-debug-loop` — full iterative debugging that produces the incident this skill stores
152
+
153
+ *Source: adapted from the debugger incident-documentation workflow and maintained as a build-loop-native skill. Drift-checked by `build-loop:sync-skills`.*