devflow-kit 0.9.0 → 1.1.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 (414) hide show
  1. package/CHANGELOG.md +197 -29
  2. package/LICENSE +1 -1
  3. package/README.md +185 -309
  4. package/dist/cli.js +7 -1
  5. package/dist/commands/ambient.d.ts +18 -0
  6. package/dist/commands/ambient.js +136 -0
  7. package/dist/commands/init.d.ts +23 -0
  8. package/dist/commands/init.js +393 -571
  9. package/dist/commands/list.d.ts +3 -0
  10. package/dist/commands/list.js +20 -0
  11. package/dist/commands/memory.d.ts +22 -0
  12. package/dist/commands/memory.js +175 -0
  13. package/dist/commands/uninstall.d.ts +10 -0
  14. package/dist/commands/uninstall.js +418 -78
  15. package/dist/plugins.d.ts +46 -0
  16. package/dist/plugins.js +169 -0
  17. package/dist/utils/cli.d.ts +5 -0
  18. package/dist/utils/cli.js +14 -0
  19. package/dist/utils/installer.d.ts +41 -0
  20. package/dist/utils/installer.js +177 -0
  21. package/dist/utils/paths.d.ts +10 -0
  22. package/dist/utils/paths.js +23 -3
  23. package/dist/utils/post-install.d.ts +80 -0
  24. package/dist/utils/post-install.js +508 -0
  25. package/dist/utils/safe-delete-install.d.ts +29 -0
  26. package/dist/utils/safe-delete-install.js +191 -0
  27. package/dist/utils/safe-delete.d.ts +12 -0
  28. package/dist/utils/safe-delete.js +83 -0
  29. package/package.json +18 -8
  30. package/plugins/devflow-ambient/.claude-plugin/plugin.json +7 -0
  31. package/plugins/devflow-ambient/README.md +49 -0
  32. package/plugins/devflow-ambient/commands/ambient.md +110 -0
  33. package/plugins/devflow-ambient/skills/ambient-router/SKILL.md +89 -0
  34. package/plugins/devflow-ambient/skills/ambient-router/references/skill-catalog.md +64 -0
  35. package/plugins/devflow-audit-claude/.claude-plugin/plugin.json +7 -0
  36. package/plugins/devflow-audit-claude/README.md +46 -0
  37. package/plugins/devflow-audit-claude/agents/claude-md-auditor.md +134 -0
  38. package/plugins/devflow-audit-claude/commands/audit-claude.md +85 -0
  39. package/plugins/devflow-code-review/.claude-plugin/plugin.json +31 -0
  40. package/plugins/devflow-code-review/README.md +73 -0
  41. package/plugins/devflow-code-review/agents/git.md +272 -0
  42. package/plugins/devflow-code-review/agents/reviewer.md +119 -0
  43. package/plugins/devflow-code-review/agents/synthesizer.md +204 -0
  44. package/plugins/devflow-code-review/commands/code-review-teams.md +262 -0
  45. package/plugins/devflow-code-review/commands/code-review.md +141 -0
  46. package/plugins/devflow-code-review/skills/accessibility/SKILL.md +229 -0
  47. package/plugins/devflow-code-review/skills/accessibility/references/detection.md +171 -0
  48. package/plugins/devflow-code-review/skills/accessibility/references/patterns.md +670 -0
  49. package/plugins/devflow-code-review/skills/accessibility/references/violations.md +419 -0
  50. package/plugins/devflow-code-review/skills/agent-teams/SKILL.md +124 -0
  51. package/plugins/devflow-code-review/skills/agent-teams/references/cleanup.md +104 -0
  52. package/plugins/devflow-code-review/skills/agent-teams/references/communication.md +122 -0
  53. package/plugins/devflow-code-review/skills/agent-teams/references/team-patterns.md +217 -0
  54. package/plugins/devflow-code-review/skills/architecture-patterns/SKILL.md +153 -0
  55. package/plugins/devflow-code-review/skills/architecture-patterns/references/detection.md +337 -0
  56. package/plugins/devflow-code-review/skills/architecture-patterns/references/patterns.md +873 -0
  57. package/plugins/devflow-code-review/skills/architecture-patterns/references/violations.md +575 -0
  58. package/plugins/devflow-code-review/skills/complexity-patterns/SKILL.md +143 -0
  59. package/plugins/devflow-code-review/skills/complexity-patterns/references/detection.md +264 -0
  60. package/plugins/devflow-code-review/skills/complexity-patterns/references/patterns.md +487 -0
  61. package/plugins/devflow-code-review/skills/complexity-patterns/references/violations.md +361 -0
  62. package/plugins/devflow-code-review/skills/consistency-patterns/SKILL.md +140 -0
  63. package/plugins/devflow-code-review/skills/consistency-patterns/references/detection.md +207 -0
  64. package/plugins/devflow-code-review/skills/consistency-patterns/references/patterns.md +202 -0
  65. package/plugins/devflow-code-review/skills/consistency-patterns/references/violations.md +213 -0
  66. package/plugins/devflow-code-review/skills/database-patterns/SKILL.md +134 -0
  67. package/plugins/devflow-code-review/skills/database-patterns/references/detection.md +208 -0
  68. package/plugins/devflow-code-review/skills/database-patterns/references/patterns.md +394 -0
  69. package/plugins/devflow-code-review/skills/database-patterns/references/violations.md +332 -0
  70. package/plugins/devflow-code-review/skills/dependencies-patterns/SKILL.md +141 -0
  71. package/plugins/devflow-code-review/skills/dependencies-patterns/references/detection.md +181 -0
  72. package/plugins/devflow-code-review/skills/dependencies-patterns/references/patterns.md +225 -0
  73. package/plugins/devflow-code-review/skills/dependencies-patterns/references/violations.md +247 -0
  74. package/plugins/devflow-code-review/skills/documentation-patterns/SKILL.md +125 -0
  75. package/plugins/devflow-code-review/skills/documentation-patterns/references/detection.md +190 -0
  76. package/plugins/devflow-code-review/skills/documentation-patterns/references/patterns.md +189 -0
  77. package/plugins/devflow-code-review/skills/documentation-patterns/references/violations.md +163 -0
  78. package/plugins/devflow-code-review/skills/frontend-design/SKILL.md +254 -0
  79. package/plugins/devflow-code-review/skills/frontend-design/references/detection.md +184 -0
  80. package/plugins/devflow-code-review/skills/frontend-design/references/patterns.md +511 -0
  81. package/plugins/devflow-code-review/skills/frontend-design/references/violations.md +453 -0
  82. package/plugins/devflow-code-review/skills/performance-patterns/SKILL.md +154 -0
  83. package/plugins/devflow-code-review/skills/performance-patterns/references/detection.md +351 -0
  84. package/plugins/devflow-code-review/skills/performance-patterns/references/patterns.md +503 -0
  85. package/plugins/devflow-code-review/skills/performance-patterns/references/violations.md +354 -0
  86. package/plugins/devflow-code-review/skills/react/SKILL.md +276 -0
  87. package/plugins/devflow-code-review/skills/react/references/patterns.md +1331 -0
  88. package/plugins/devflow-code-review/skills/react/references/violations.md +565 -0
  89. package/plugins/devflow-code-review/skills/regression-patterns/SKILL.md +146 -0
  90. package/plugins/devflow-code-review/skills/regression-patterns/references/detection.md +237 -0
  91. package/plugins/devflow-code-review/skills/regression-patterns/references/patterns.md +226 -0
  92. package/plugins/devflow-code-review/skills/regression-patterns/references/violations.md +225 -0
  93. package/plugins/devflow-code-review/skills/review-methodology/SKILL.md +119 -0
  94. package/plugins/devflow-code-review/skills/review-methodology/references/patterns.md +186 -0
  95. package/plugins/devflow-code-review/skills/review-methodology/references/report-template.md +142 -0
  96. package/plugins/devflow-code-review/skills/review-methodology/references/violations.md +125 -0
  97. package/plugins/devflow-code-review/skills/security-patterns/SKILL.md +156 -0
  98. package/plugins/devflow-code-review/skills/security-patterns/references/detection.md +287 -0
  99. package/plugins/devflow-code-review/skills/security-patterns/references/patterns.md +507 -0
  100. package/plugins/devflow-code-review/skills/security-patterns/references/violations.md +237 -0
  101. package/plugins/devflow-code-review/skills/test-patterns/SKILL.md +183 -0
  102. package/plugins/devflow-code-review/skills/test-patterns/references/detection.md +149 -0
  103. package/plugins/devflow-code-review/skills/test-patterns/references/patterns.md +220 -0
  104. package/plugins/devflow-code-review/skills/test-patterns/references/report-template.md +108 -0
  105. package/plugins/devflow-code-review/skills/test-patterns/references/violations.md +221 -0
  106. package/plugins/devflow-core-skills/.claude-plugin/plugin.json +28 -0
  107. package/plugins/devflow-core-skills/README.md +50 -0
  108. package/plugins/devflow-core-skills/skills/accessibility/SKILL.md +229 -0
  109. package/plugins/devflow-core-skills/skills/accessibility/references/detection.md +171 -0
  110. package/plugins/devflow-core-skills/skills/accessibility/references/patterns.md +670 -0
  111. package/plugins/devflow-core-skills/skills/accessibility/references/violations.md +419 -0
  112. package/plugins/devflow-core-skills/skills/core-patterns/SKILL.md +162 -0
  113. package/plugins/devflow-core-skills/skills/core-patterns/references/checklist.md +276 -0
  114. package/plugins/devflow-core-skills/skills/core-patterns/references/code-smell-violations.md +144 -0
  115. package/plugins/devflow-core-skills/skills/core-patterns/references/detection.md +303 -0
  116. package/plugins/devflow-core-skills/skills/core-patterns/references/patterns.md +576 -0
  117. package/plugins/devflow-core-skills/skills/core-patterns/references/violations.md +369 -0
  118. package/plugins/devflow-core-skills/skills/docs-framework/SKILL.md +138 -0
  119. package/plugins/devflow-core-skills/skills/docs-framework/references/patterns.md +346 -0
  120. package/plugins/devflow-core-skills/skills/docs-framework/references/violations.md +221 -0
  121. package/plugins/devflow-core-skills/skills/frontend-design/SKILL.md +254 -0
  122. package/plugins/devflow-core-skills/skills/frontend-design/references/detection.md +184 -0
  123. package/plugins/devflow-core-skills/skills/frontend-design/references/patterns.md +511 -0
  124. package/plugins/devflow-core-skills/skills/frontend-design/references/violations.md +453 -0
  125. package/plugins/devflow-core-skills/skills/git-safety/SKILL.md +122 -0
  126. package/plugins/devflow-core-skills/skills/git-safety/references/detection.md +290 -0
  127. package/plugins/devflow-core-skills/skills/git-safety/references/patterns.md +289 -0
  128. package/plugins/devflow-core-skills/skills/git-safety/references/violations.md +18 -0
  129. package/plugins/devflow-core-skills/skills/git-workflow/SKILL.md +158 -0
  130. package/plugins/devflow-core-skills/skills/git-workflow/references/commit-patterns.md +115 -0
  131. package/plugins/devflow-core-skills/skills/git-workflow/references/commit-violations.md +77 -0
  132. package/plugins/devflow-core-skills/skills/git-workflow/references/pr-patterns.md +127 -0
  133. package/plugins/devflow-core-skills/skills/git-workflow/references/pr-violations.md +96 -0
  134. package/plugins/devflow-core-skills/skills/github-patterns/SKILL.md +153 -0
  135. package/plugins/devflow-core-skills/skills/github-patterns/references/patterns.md +572 -0
  136. package/plugins/devflow-core-skills/skills/github-patterns/references/violations.md +298 -0
  137. package/plugins/devflow-core-skills/skills/input-validation/SKILL.md +148 -0
  138. package/plugins/devflow-core-skills/skills/input-validation/references/detection.md +283 -0
  139. package/plugins/devflow-core-skills/skills/input-validation/references/patterns.md +361 -0
  140. package/plugins/devflow-core-skills/skills/input-validation/references/violations.md +224 -0
  141. package/plugins/devflow-core-skills/skills/react/SKILL.md +276 -0
  142. package/plugins/devflow-core-skills/skills/react/references/patterns.md +1331 -0
  143. package/plugins/devflow-core-skills/skills/react/references/violations.md +565 -0
  144. package/plugins/devflow-core-skills/skills/test-driven-development/SKILL.md +139 -0
  145. package/plugins/devflow-core-skills/skills/test-driven-development/references/rationalization-prevention.md +111 -0
  146. package/plugins/devflow-core-skills/skills/test-patterns/SKILL.md +183 -0
  147. package/plugins/devflow-core-skills/skills/test-patterns/references/detection.md +149 -0
  148. package/plugins/devflow-core-skills/skills/test-patterns/references/patterns.md +220 -0
  149. package/plugins/devflow-core-skills/skills/test-patterns/references/report-template.md +108 -0
  150. package/plugins/devflow-core-skills/skills/test-patterns/references/violations.md +221 -0
  151. package/plugins/devflow-core-skills/skills/typescript/SKILL.md +176 -0
  152. package/plugins/devflow-core-skills/skills/typescript/references/patterns.md +1105 -0
  153. package/plugins/devflow-core-skills/skills/typescript/references/violations.md +433 -0
  154. package/plugins/devflow-debug/.claude-plugin/plugin.json +18 -0
  155. package/plugins/devflow-debug/README.md +65 -0
  156. package/plugins/devflow-debug/agents/git.md +272 -0
  157. package/plugins/devflow-debug/commands/debug-teams.md +231 -0
  158. package/plugins/devflow-debug/commands/debug.md +160 -0
  159. package/plugins/devflow-debug/skills/agent-teams/SKILL.md +124 -0
  160. package/plugins/devflow-debug/skills/agent-teams/references/cleanup.md +104 -0
  161. package/plugins/devflow-debug/skills/agent-teams/references/communication.md +122 -0
  162. package/plugins/devflow-debug/skills/agent-teams/references/team-patterns.md +217 -0
  163. package/plugins/devflow-debug/skills/git-safety/SKILL.md +122 -0
  164. package/plugins/devflow-debug/skills/git-safety/references/detection.md +290 -0
  165. package/plugins/devflow-debug/skills/git-safety/references/patterns.md +289 -0
  166. package/plugins/devflow-debug/skills/git-safety/references/violations.md +18 -0
  167. package/plugins/devflow-implement/.claude-plugin/plugin.json +21 -0
  168. package/plugins/devflow-implement/README.md +71 -0
  169. package/plugins/devflow-implement/agents/coder.md +122 -0
  170. package/plugins/devflow-implement/agents/git.md +272 -0
  171. package/plugins/devflow-implement/agents/scrutinizer.md +80 -0
  172. package/plugins/devflow-implement/agents/shepherd.md +94 -0
  173. package/plugins/devflow-implement/agents/simplifier.md +62 -0
  174. package/plugins/devflow-implement/agents/skimmer.md +88 -0
  175. package/plugins/devflow-implement/agents/synthesizer.md +204 -0
  176. package/plugins/devflow-implement/agents/validator.md +86 -0
  177. package/plugins/devflow-implement/commands/implement-teams.md +608 -0
  178. package/plugins/devflow-implement/commands/implement.md +426 -0
  179. package/plugins/devflow-implement/skills/accessibility/SKILL.md +229 -0
  180. package/plugins/devflow-implement/skills/accessibility/references/detection.md +171 -0
  181. package/plugins/devflow-implement/skills/accessibility/references/patterns.md +670 -0
  182. package/plugins/devflow-implement/skills/accessibility/references/violations.md +419 -0
  183. package/plugins/devflow-implement/skills/agent-teams/SKILL.md +124 -0
  184. package/plugins/devflow-implement/skills/agent-teams/references/cleanup.md +104 -0
  185. package/plugins/devflow-implement/skills/agent-teams/references/communication.md +122 -0
  186. package/plugins/devflow-implement/skills/agent-teams/references/team-patterns.md +217 -0
  187. package/plugins/devflow-implement/skills/frontend-design/SKILL.md +254 -0
  188. package/plugins/devflow-implement/skills/frontend-design/references/detection.md +184 -0
  189. package/plugins/devflow-implement/skills/frontend-design/references/patterns.md +511 -0
  190. package/plugins/devflow-implement/skills/frontend-design/references/violations.md +453 -0
  191. package/plugins/devflow-implement/skills/implementation-patterns/SKILL.md +162 -0
  192. package/plugins/devflow-implement/skills/implementation-patterns/references/patterns.md +1063 -0
  193. package/plugins/devflow-implement/skills/implementation-patterns/references/violations.md +483 -0
  194. package/plugins/devflow-implement/skills/self-review/SKILL.md +149 -0
  195. package/plugins/devflow-implement/skills/self-review/references/patterns.md +405 -0
  196. package/plugins/devflow-implement/skills/self-review/references/report-template.md +253 -0
  197. package/plugins/devflow-implement/skills/self-review/references/violations.md +308 -0
  198. package/plugins/devflow-resolve/.claude-plugin/plugin.json +19 -0
  199. package/plugins/devflow-resolve/README.md +65 -0
  200. package/plugins/devflow-resolve/agents/git.md +272 -0
  201. package/plugins/devflow-resolve/agents/resolver.md +131 -0
  202. package/plugins/devflow-resolve/agents/simplifier.md +62 -0
  203. package/plugins/devflow-resolve/commands/resolve-teams.md +298 -0
  204. package/plugins/devflow-resolve/commands/resolve.md +237 -0
  205. package/plugins/devflow-resolve/skills/agent-teams/SKILL.md +124 -0
  206. package/plugins/devflow-resolve/skills/agent-teams/references/cleanup.md +104 -0
  207. package/plugins/devflow-resolve/skills/agent-teams/references/communication.md +122 -0
  208. package/plugins/devflow-resolve/skills/agent-teams/references/team-patterns.md +217 -0
  209. package/plugins/devflow-resolve/skills/implementation-patterns/SKILL.md +162 -0
  210. package/plugins/devflow-resolve/skills/implementation-patterns/references/patterns.md +1063 -0
  211. package/plugins/devflow-resolve/skills/implementation-patterns/references/violations.md +483 -0
  212. package/plugins/devflow-resolve/skills/security-patterns/SKILL.md +156 -0
  213. package/plugins/devflow-resolve/skills/security-patterns/references/detection.md +287 -0
  214. package/plugins/devflow-resolve/skills/security-patterns/references/patterns.md +507 -0
  215. package/plugins/devflow-resolve/skills/security-patterns/references/violations.md +237 -0
  216. package/plugins/devflow-self-review/.claude-plugin/plugin.json +7 -0
  217. package/plugins/devflow-self-review/README.md +38 -0
  218. package/plugins/devflow-self-review/agents/scrutinizer.md +80 -0
  219. package/plugins/devflow-self-review/agents/simplifier.md +62 -0
  220. package/plugins/devflow-self-review/agents/validator.md +86 -0
  221. package/plugins/devflow-self-review/commands/self-review.md +126 -0
  222. package/plugins/devflow-self-review/skills/core-patterns/SKILL.md +162 -0
  223. package/plugins/devflow-self-review/skills/core-patterns/references/checklist.md +276 -0
  224. package/plugins/devflow-self-review/skills/core-patterns/references/code-smell-violations.md +144 -0
  225. package/plugins/devflow-self-review/skills/core-patterns/references/detection.md +303 -0
  226. package/plugins/devflow-self-review/skills/core-patterns/references/patterns.md +576 -0
  227. package/plugins/devflow-self-review/skills/core-patterns/references/violations.md +369 -0
  228. package/plugins/devflow-self-review/skills/self-review/SKILL.md +149 -0
  229. package/plugins/devflow-self-review/skills/self-review/references/patterns.md +405 -0
  230. package/plugins/devflow-self-review/skills/self-review/references/report-template.md +253 -0
  231. package/plugins/devflow-self-review/skills/self-review/references/violations.md +308 -0
  232. package/plugins/devflow-specify/.claude-plugin/plugin.json +15 -0
  233. package/plugins/devflow-specify/README.md +46 -0
  234. package/plugins/devflow-specify/agents/skimmer.md +88 -0
  235. package/plugins/devflow-specify/agents/synthesizer.md +204 -0
  236. package/plugins/devflow-specify/commands/specify-teams.md +314 -0
  237. package/plugins/devflow-specify/commands/specify.md +179 -0
  238. package/plugins/devflow-specify/skills/agent-teams/SKILL.md +124 -0
  239. package/plugins/devflow-specify/skills/agent-teams/references/cleanup.md +104 -0
  240. package/plugins/devflow-specify/skills/agent-teams/references/communication.md +122 -0
  241. package/plugins/devflow-specify/skills/agent-teams/references/team-patterns.md +217 -0
  242. package/scripts/hooks/ambient-prompt.sh +48 -0
  243. package/scripts/hooks/background-memory-update.sh +208 -0
  244. package/scripts/hooks/ensure-memory-gitignore.sh +17 -0
  245. package/scripts/hooks/pre-compact-memory.sh +87 -0
  246. package/scripts/hooks/session-start-memory.sh +126 -0
  247. package/scripts/hooks/stop-update-memory.sh +85 -0
  248. package/shared/agents/coder.md +122 -0
  249. package/shared/agents/git.md +272 -0
  250. package/shared/agents/resolver.md +131 -0
  251. package/shared/agents/reviewer.md +119 -0
  252. package/shared/agents/scrutinizer.md +80 -0
  253. package/shared/agents/shepherd.md +94 -0
  254. package/shared/agents/simplifier.md +62 -0
  255. package/shared/agents/skimmer.md +88 -0
  256. package/shared/agents/synthesizer.md +204 -0
  257. package/shared/agents/validator.md +86 -0
  258. package/shared/skills/accessibility/SKILL.md +229 -0
  259. package/shared/skills/accessibility/references/detection.md +171 -0
  260. package/shared/skills/accessibility/references/patterns.md +670 -0
  261. package/shared/skills/accessibility/references/violations.md +419 -0
  262. package/shared/skills/agent-teams/SKILL.md +124 -0
  263. package/shared/skills/agent-teams/references/cleanup.md +104 -0
  264. package/shared/skills/agent-teams/references/communication.md +122 -0
  265. package/shared/skills/agent-teams/references/team-patterns.md +217 -0
  266. package/shared/skills/ambient-router/SKILL.md +89 -0
  267. package/shared/skills/ambient-router/references/skill-catalog.md +64 -0
  268. package/shared/skills/architecture-patterns/SKILL.md +153 -0
  269. package/shared/skills/architecture-patterns/references/detection.md +337 -0
  270. package/shared/skills/architecture-patterns/references/patterns.md +873 -0
  271. package/shared/skills/architecture-patterns/references/violations.md +575 -0
  272. package/shared/skills/complexity-patterns/SKILL.md +143 -0
  273. package/shared/skills/complexity-patterns/references/detection.md +264 -0
  274. package/shared/skills/complexity-patterns/references/patterns.md +487 -0
  275. package/shared/skills/complexity-patterns/references/violations.md +361 -0
  276. package/shared/skills/consistency-patterns/SKILL.md +140 -0
  277. package/shared/skills/consistency-patterns/references/detection.md +207 -0
  278. package/shared/skills/consistency-patterns/references/patterns.md +202 -0
  279. package/shared/skills/consistency-patterns/references/violations.md +213 -0
  280. package/shared/skills/core-patterns/SKILL.md +162 -0
  281. package/shared/skills/core-patterns/references/checklist.md +276 -0
  282. package/shared/skills/core-patterns/references/code-smell-violations.md +144 -0
  283. package/shared/skills/core-patterns/references/detection.md +303 -0
  284. package/shared/skills/core-patterns/references/patterns.md +576 -0
  285. package/shared/skills/core-patterns/references/violations.md +369 -0
  286. package/shared/skills/database-patterns/SKILL.md +134 -0
  287. package/shared/skills/database-patterns/references/detection.md +208 -0
  288. package/shared/skills/database-patterns/references/patterns.md +394 -0
  289. package/shared/skills/database-patterns/references/violations.md +332 -0
  290. package/shared/skills/dependencies-patterns/SKILL.md +141 -0
  291. package/shared/skills/dependencies-patterns/references/detection.md +181 -0
  292. package/shared/skills/dependencies-patterns/references/patterns.md +225 -0
  293. package/shared/skills/dependencies-patterns/references/violations.md +247 -0
  294. package/shared/skills/docs-framework/SKILL.md +138 -0
  295. package/shared/skills/docs-framework/references/patterns.md +346 -0
  296. package/shared/skills/docs-framework/references/violations.md +221 -0
  297. package/shared/skills/documentation-patterns/SKILL.md +125 -0
  298. package/shared/skills/documentation-patterns/references/detection.md +190 -0
  299. package/shared/skills/documentation-patterns/references/patterns.md +189 -0
  300. package/shared/skills/documentation-patterns/references/violations.md +163 -0
  301. package/shared/skills/frontend-design/SKILL.md +254 -0
  302. package/shared/skills/frontend-design/references/detection.md +184 -0
  303. package/shared/skills/frontend-design/references/patterns.md +511 -0
  304. package/shared/skills/frontend-design/references/violations.md +453 -0
  305. package/shared/skills/git-safety/SKILL.md +122 -0
  306. package/shared/skills/git-safety/references/detection.md +290 -0
  307. package/shared/skills/git-safety/references/patterns.md +289 -0
  308. package/shared/skills/git-safety/references/violations.md +18 -0
  309. package/shared/skills/git-workflow/SKILL.md +158 -0
  310. package/shared/skills/git-workflow/references/commit-patterns.md +115 -0
  311. package/shared/skills/git-workflow/references/commit-violations.md +77 -0
  312. package/shared/skills/git-workflow/references/pr-patterns.md +127 -0
  313. package/shared/skills/git-workflow/references/pr-violations.md +96 -0
  314. package/shared/skills/github-patterns/SKILL.md +153 -0
  315. package/shared/skills/github-patterns/references/patterns.md +572 -0
  316. package/shared/skills/github-patterns/references/violations.md +298 -0
  317. package/shared/skills/implementation-patterns/SKILL.md +162 -0
  318. package/shared/skills/implementation-patterns/references/patterns.md +1063 -0
  319. package/shared/skills/implementation-patterns/references/violations.md +483 -0
  320. package/shared/skills/input-validation/SKILL.md +148 -0
  321. package/shared/skills/input-validation/references/detection.md +283 -0
  322. package/shared/skills/input-validation/references/patterns.md +361 -0
  323. package/shared/skills/input-validation/references/violations.md +224 -0
  324. package/shared/skills/performance-patterns/SKILL.md +154 -0
  325. package/shared/skills/performance-patterns/references/detection.md +351 -0
  326. package/shared/skills/performance-patterns/references/patterns.md +503 -0
  327. package/shared/skills/performance-patterns/references/violations.md +354 -0
  328. package/shared/skills/react/SKILL.md +276 -0
  329. package/shared/skills/react/references/patterns.md +1331 -0
  330. package/shared/skills/react/references/violations.md +565 -0
  331. package/shared/skills/regression-patterns/SKILL.md +146 -0
  332. package/shared/skills/regression-patterns/references/detection.md +237 -0
  333. package/shared/skills/regression-patterns/references/patterns.md +226 -0
  334. package/shared/skills/regression-patterns/references/violations.md +225 -0
  335. package/shared/skills/review-methodology/SKILL.md +119 -0
  336. package/shared/skills/review-methodology/references/patterns.md +186 -0
  337. package/shared/skills/review-methodology/references/report-template.md +142 -0
  338. package/shared/skills/review-methodology/references/violations.md +125 -0
  339. package/shared/skills/security-patterns/SKILL.md +156 -0
  340. package/shared/skills/security-patterns/references/detection.md +287 -0
  341. package/shared/skills/security-patterns/references/patterns.md +507 -0
  342. package/shared/skills/security-patterns/references/violations.md +237 -0
  343. package/shared/skills/self-review/SKILL.md +149 -0
  344. package/shared/skills/self-review/references/patterns.md +405 -0
  345. package/shared/skills/self-review/references/report-template.md +253 -0
  346. package/shared/skills/self-review/references/violations.md +308 -0
  347. package/shared/skills/test-driven-development/SKILL.md +139 -0
  348. package/shared/skills/test-driven-development/references/rationalization-prevention.md +111 -0
  349. package/shared/skills/test-patterns/SKILL.md +183 -0
  350. package/shared/skills/test-patterns/references/detection.md +149 -0
  351. package/shared/skills/test-patterns/references/patterns.md +220 -0
  352. package/shared/skills/test-patterns/references/report-template.md +108 -0
  353. package/shared/skills/test-patterns/references/violations.md +221 -0
  354. package/shared/skills/typescript/SKILL.md +176 -0
  355. package/shared/skills/typescript/references/patterns.md +1105 -0
  356. package/shared/skills/typescript/references/violations.md +433 -0
  357. package/src/templates/claudeignore.template +188 -0
  358. package/src/templates/managed-settings.json +160 -0
  359. package/src/templates/settings.json +59 -0
  360. package/dist/cli.d.ts.map +0 -1
  361. package/dist/cli.js.map +0 -1
  362. package/dist/commands/init.d.ts.map +0 -1
  363. package/dist/commands/init.js.map +0 -1
  364. package/dist/commands/uninstall.d.ts.map +0 -1
  365. package/dist/commands/uninstall.js.map +0 -1
  366. package/dist/utils/git.d.ts.map +0 -1
  367. package/dist/utils/git.js.map +0 -1
  368. package/dist/utils/paths.d.ts.map +0 -1
  369. package/dist/utils/paths.js.map +0 -1
  370. package/src/claude/CLAUDE.md +0 -400
  371. package/src/claude/agents/devflow/audit-architecture.md +0 -132
  372. package/src/claude/agents/devflow/audit-complexity.md +0 -132
  373. package/src/claude/agents/devflow/audit-database.md +0 -132
  374. package/src/claude/agents/devflow/audit-dependencies.md +0 -132
  375. package/src/claude/agents/devflow/audit-documentation.md +0 -132
  376. package/src/claude/agents/devflow/audit-performance.md +0 -256
  377. package/src/claude/agents/devflow/audit-security.md +0 -259
  378. package/src/claude/agents/devflow/audit-tests.md +0 -132
  379. package/src/claude/agents/devflow/audit-typescript.md +0 -132
  380. package/src/claude/agents/devflow/brainstorm.md +0 -279
  381. package/src/claude/agents/devflow/catch-up.md +0 -345
  382. package/src/claude/agents/devflow/code-review.md +0 -307
  383. package/src/claude/agents/devflow/commit.md +0 -380
  384. package/src/claude/agents/devflow/debug.md +0 -476
  385. package/src/claude/agents/devflow/design.md +0 -491
  386. package/src/claude/agents/devflow/get-issue.md +0 -286
  387. package/src/claude/agents/devflow/pr-comments.md +0 -285
  388. package/src/claude/agents/devflow/project-state.md +0 -419
  389. package/src/claude/agents/devflow/pull-request.md +0 -493
  390. package/src/claude/agents/devflow/release.md +0 -1137
  391. package/src/claude/agents/devflow/tech-debt.md +0 -338
  392. package/src/claude/commands/devflow/brainstorm.md +0 -68
  393. package/src/claude/commands/devflow/breakdown.md +0 -125
  394. package/src/claude/commands/devflow/catch-up.md +0 -29
  395. package/src/claude/commands/devflow/code-review.md +0 -237
  396. package/src/claude/commands/devflow/commit.md +0 -17
  397. package/src/claude/commands/devflow/debug.md +0 -56
  398. package/src/claude/commands/devflow/design.md +0 -82
  399. package/src/claude/commands/devflow/devlog.md +0 -408
  400. package/src/claude/commands/devflow/get-issue.md +0 -16
  401. package/src/claude/commands/devflow/implement.md +0 -100
  402. package/src/claude/commands/devflow/plan.md +0 -223
  403. package/src/claude/commands/devflow/pull-request.md +0 -20
  404. package/src/claude/commands/devflow/release.md +0 -251
  405. package/src/claude/commands/devflow/resolve-comments.md +0 -583
  406. package/src/claude/scripts/statusline.sh +0 -47
  407. package/src/claude/settings.json +0 -6
  408. package/src/claude/skills/devflow/code-smell/SKILL.md +0 -428
  409. package/src/claude/skills/devflow/debug/SKILL.md +0 -119
  410. package/src/claude/skills/devflow/error-handling/SKILL.md +0 -597
  411. package/src/claude/skills/devflow/input-validation/SKILL.md +0 -514
  412. package/src/claude/skills/devflow/pattern-check/SKILL.md +0 -238
  413. package/src/claude/skills/devflow/research/SKILL.md +0 -138
  414. package/src/claude/skills/devflow/test-design/SKILL.md +0 -384
@@ -0,0 +1,369 @@
1
+ # Extended Violation Examples
2
+
3
+ Additional code smell patterns and violations beyond the core examples in SKILL.md.
4
+
5
+ ---
6
+
7
+ ## Result Types - Extended Violations
8
+
9
+ ### Try/Catch in Business Logic
10
+
11
+ ```typescript
12
+ // VIOLATION: Try/catch in business logic
13
+ function calculate(items: Item[]): number {
14
+ try {
15
+ return items.reduce((sum, i) => sum + i.price, 0);
16
+ } catch {
17
+ return 0; // Silent failure - BAD
18
+ }
19
+ }
20
+
21
+ // VIOLATION: Nested try/catch
22
+ async function processOrder(id: string): Promise<Order> {
23
+ try {
24
+ const order = await fetchOrder(id);
25
+ try {
26
+ await validateOrder(order);
27
+ } catch {
28
+ // Swallowed validation error
29
+ }
30
+ return order;
31
+ } catch {
32
+ return null; // Silent failure
33
+ }
34
+ }
35
+
36
+ // VIOLATION: Error type erasure
37
+ function parseConfig(raw: string): Config {
38
+ try {
39
+ return JSON.parse(raw);
40
+ } catch (e) {
41
+ throw new Error('Parse failed'); // Lost original error context
42
+ }
43
+ }
44
+ ```
45
+
46
+ ### Implicit Error States
47
+
48
+ ```typescript
49
+ // VIOLATION: Using null/undefined for errors
50
+ function findUser(id: string): User | null {
51
+ // Caller can't distinguish "not found" from "error occurred"
52
+ return null;
53
+ }
54
+
55
+ // VIOLATION: Using sentinel values
56
+ function calculateDiscount(userId: string): number {
57
+ // Returns -1 for errors - magic value
58
+ if (!userId) return -1;
59
+ return computeDiscount(userId);
60
+ }
61
+
62
+ // VIOLATION: Throwing in async without Result
63
+ async function fetchData(url: string): Promise<Data> {
64
+ const response = await fetch(url);
65
+ if (!response.ok) {
66
+ throw new Error('Fetch failed'); // Should return Result
67
+ }
68
+ return response.json();
69
+ }
70
+ ```
71
+
72
+ ---
73
+
74
+ ## Dependency Injection - Extended Violations
75
+
76
+ ### Hidden Dependencies
77
+
78
+ ```typescript
79
+ // VIOLATION: Hidden dependencies via imports
80
+ import { config } from './config'; // Global config
81
+ import { analytics } from './analytics'; // Global analytics
82
+
83
+ class UserService {
84
+ createUser(data: UserData) {
85
+ // Uses global config - can't test with different config
86
+ if (config.features.requireEmailVerification) {
87
+ // ...
88
+ }
89
+ // Uses global analytics - can't mock in tests
90
+ analytics.track('user_created', data);
91
+ }
92
+ }
93
+
94
+ // VIOLATION: Static method dependencies
95
+ class OrderService {
96
+ processOrder(order: Order) {
97
+ // Can't mock static methods
98
+ const tax = TaxCalculator.calculate(order.total);
99
+ const shipping = ShippingService.getRate(order.address);
100
+ }
101
+ }
102
+
103
+ // VIOLATION: Service locator anti-pattern
104
+ class PaymentService {
105
+ process(payment: Payment) {
106
+ // Runtime dependency resolution - untestable
107
+ const gateway = ServiceLocator.resolve<PaymentGateway>('paymentGateway');
108
+ return gateway.charge(payment);
109
+ }
110
+ }
111
+ ```
112
+
113
+ ### Partial Injection
114
+
115
+ ```typescript
116
+ // VIOLATION: Some dependencies injected, others not
117
+ class ReportService {
118
+ constructor(private db: Database) {} // Injected
119
+
120
+ generate(reportId: string) {
121
+ const data = this.db.query(reportId);
122
+ // But logger is global
123
+ logger.info('Report generated'); // BAD
124
+ // And config is imported
125
+ if (config.features.pdfExport) { // BAD
126
+ // ...
127
+ }
128
+ }
129
+ }
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Immutability - Extended Violations
135
+
136
+ ### Array Mutations
137
+
138
+ ```typescript
139
+ // VIOLATION: In-place array modifications
140
+ function processItems(items: Item[]): Item[] {
141
+ items.push({ id: 'new' }); // BAD - mutates input
142
+ items.splice(0, 1); // BAD - mutates input
143
+ items.reverse(); // BAD - mutates in place
144
+ items.fill({ id: 'default' }); // BAD - mutates in place
145
+ return items;
146
+ }
147
+
148
+ // VIOLATION: Sorting without copy
149
+ function getSortedUsers(users: User[]): User[] {
150
+ return users.sort((a, b) => a.name.localeCompare(b.name)); // Mutates original!
151
+ }
152
+
153
+ // VIOLATION: Using forEach for transformation
154
+ function transformItems(items: Item[]): Item[] {
155
+ items.forEach(item => {
156
+ item.processed = true; // BAD - mutation
157
+ });
158
+ return items;
159
+ }
160
+ ```
161
+
162
+ ### Object Mutations
163
+
164
+ ```typescript
165
+ // VIOLATION: Nested object mutation
166
+ function updateAddress(user: User, city: string): User {
167
+ user.address.city = city; // BAD - nested mutation
168
+ return user;
169
+ }
170
+
171
+ // VIOLATION: Object.assign mutating first argument
172
+ function mergeConfig(base: Config, overrides: Partial<Config>): Config {
173
+ return Object.assign(base, overrides); // BAD - mutates base
174
+ }
175
+
176
+ // VIOLATION: Deleting properties
177
+ function removeField(obj: Record<string, unknown>, field: string) {
178
+ delete obj[field]; // BAD - mutation
179
+ return obj;
180
+ }
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Pure Functions - Extended Violations
186
+
187
+ ### Side Effect Patterns
188
+
189
+ ```typescript
190
+ // VIOLATION: Accessing global state
191
+ let counter = 0;
192
+ function getNextId(): string {
193
+ return `id-${counter++}`; // BAD - global state modification
194
+ }
195
+
196
+ // VIOLATION: Date/time dependency
197
+ function isExpired(expiry: Date): boolean {
198
+ return new Date() > expiry; // BAD - depends on current time
199
+ }
200
+
201
+ // VIOLATION: Random values
202
+ function generateToken(): string {
203
+ return Math.random().toString(36); // BAD - non-deterministic
204
+ }
205
+
206
+ // VIOLATION: Environment access
207
+ function getApiUrl(): string {
208
+ return process.env.API_URL || 'http://localhost'; // BAD - env dependency
209
+ }
210
+ ```
211
+
212
+ ### Hidden I/O
213
+
214
+ ```typescript
215
+ // VIOLATION: Caching with side effects
216
+ const cache = new Map();
217
+ function expensiveCalculation(input: string): number {
218
+ if (cache.has(input)) return cache.get(input); // BAD - reads global state
219
+ const result = compute(input);
220
+ cache.set(input, result); // BAD - writes global state
221
+ return result;
222
+ }
223
+
224
+ // VIOLATION: Lazy initialization
225
+ let initialized = false;
226
+ function ensureInitialized(): void {
227
+ if (!initialized) {
228
+ performSetup(); // BAD - side effect
229
+ initialized = true; // BAD - global state
230
+ }
231
+ }
232
+ ```
233
+
234
+ ---
235
+
236
+ ## Type Safety - Extended Violations
237
+
238
+ ### Type Assertions Abuse
239
+
240
+ ```typescript
241
+ // VIOLATION: Unsafe type assertion
242
+ const user = data as User; // No runtime check
243
+
244
+ // VIOLATION: Non-null assertion
245
+ const name = user!.profile!.name!; // Assumes non-null
246
+
247
+ // VIOLATION: Any escape hatch
248
+ function process(data: unknown) {
249
+ return (data as any).property.nested; // BAD
250
+ }
251
+
252
+ // VIOLATION: Type assertion to bypass checks
253
+ const items: Item[] = response.data as Item[]; // No validation
254
+ ```
255
+
256
+ ### Incomplete Discrimination
257
+
258
+ ```typescript
259
+ // VIOLATION: Default case hiding missing patterns
260
+ function handleEvent(event: Event): void {
261
+ switch (event.type) {
262
+ case 'click':
263
+ handleClick(event);
264
+ break;
265
+ default:
266
+ // Silently ignores new event types
267
+ break;
268
+ }
269
+ }
270
+
271
+ // VIOLATION: Using if/else instead of exhaustive switch
272
+ function getLabel(status: Status): string {
273
+ if (status === 'pending') return 'Waiting';
274
+ if (status === 'active') return 'Running';
275
+ return 'Unknown'; // BAD - misses new status types
276
+ }
277
+ ```
278
+
279
+ ---
280
+
281
+ ## Resource Cleanup - Extended Violations
282
+
283
+ ### Connection Leaks
284
+
285
+ ```typescript
286
+ // VIOLATION: Connection not released on error
287
+ async function queryDatabase(sql: string) {
288
+ const conn = await pool.getConnection();
289
+ const result = await conn.query(sql); // If this throws, connection leaks
290
+ conn.release();
291
+ return result;
292
+ }
293
+
294
+ // VIOLATION: Stream not closed
295
+ function readFile(path: string) {
296
+ const stream = fs.createReadStream(path);
297
+ stream.on('data', chunk => process(chunk));
298
+ // No close handler - stream never closed on error
299
+ }
300
+
301
+ // VIOLATION: Subscription not unsubscribed
302
+ function setupListener(emitter: EventEmitter) {
303
+ emitter.on('event', handler);
304
+ // No cleanup - memory leak
305
+ }
306
+ ```
307
+
308
+ ### Timer Leaks
309
+
310
+ ```typescript
311
+ // VIOLATION: Interval not cleared
312
+ function startPolling() {
313
+ setInterval(() => {
314
+ fetchData();
315
+ }, 1000);
316
+ // No way to stop polling
317
+ }
318
+
319
+ // VIOLATION: Timeout not cleared on early exit
320
+ async function withTimeout(promise: Promise<unknown>, ms: number) {
321
+ const timeout = setTimeout(() => { throw new Error('Timeout'); }, ms);
322
+ const result = await promise; // If this resolves, timeout still pending
323
+ return result;
324
+ }
325
+ ```
326
+
327
+ ---
328
+
329
+ ## API Consistency - Extended Violations
330
+
331
+ ### Mixed Error Handling
332
+
333
+ ```typescript
334
+ // VIOLATION: Mixed error handling in same module
335
+ class UserRepository {
336
+ // Returns null for not found
337
+ findById(id: string): User | null { ... }
338
+
339
+ // Throws for not found
340
+ getById(id: string): User {
341
+ const user = this.findById(id);
342
+ if (!user) throw new NotFoundError(); // Inconsistent!
343
+ return user;
344
+ }
345
+
346
+ // Returns Result
347
+ findByEmail(email: string): Result<User, Error> { ... } // Third pattern!
348
+ }
349
+ ```
350
+
351
+ ### Mixed Async Patterns
352
+
353
+ ```typescript
354
+ // VIOLATION: Mixing callbacks and promises
355
+ function fetchUser(id: string, callback?: (err: Error, user: User) => void): Promise<User> {
356
+ const promise = api.get(`/users/${id}`);
357
+ if (callback) {
358
+ promise.then(user => callback(null, user)).catch(err => callback(err, null));
359
+ }
360
+ return promise;
361
+ }
362
+
363
+ // VIOLATION: Fire-and-forget async
364
+ async function processOrder(order: Order) {
365
+ saveOrder(order); // Missing await - fire and forget
366
+ await sendEmail(order.email); // This one awaits
367
+ logAnalytics(order); // Missing await again
368
+ }
369
+ ```
@@ -0,0 +1,138 @@
1
+ ---
2
+ name: docs-framework
3
+ description: This skill should be used when the user asks to "create a review report", "write a status log", "add documentation", "name this artifact", or creates files in the .docs/ directory. Provides naming conventions, templates, and directory structure for reviews, debug sessions, design docs, and all persistent DevFlow documentation artifacts.
4
+ user-invocable: false
5
+ allowed-tools: Read, Bash, Glob
6
+ ---
7
+
8
+ # Documentation Framework
9
+
10
+ The canonical source for documentation conventions in DevFlow. All agents that persist artifacts must follow these standards.
11
+
12
+ ## Iron Law
13
+
14
+ > **ALL ARTIFACTS FOLLOW NAMING CONVENTIONS**
15
+ >
16
+ > Timestamps are `YYYY-MM-DD_HHMM`. Branch slugs replace `/` with `-`. Topic slugs are
17
+ > lowercase alphanumeric with dashes. No exceptions. Inconsistent naming breaks tooling,
18
+ > searching, and automation. Follow the pattern or fix the pattern for everyone.
19
+
20
+ ---
21
+
22
+ ## Directory Structure
23
+
24
+ All generated documentation lives under `.docs/` in the project root:
25
+
26
+ ```
27
+ .docs/
28
+ ├── reviews/{branch-slug}/ # Code review reports per branch
29
+ │ ├── {type}-report.{timestamp}.md
30
+ │ └── review-summary.{timestamp}.md
31
+ ├── status/ # Development logs
32
+ │ ├── {timestamp}.md
33
+ │ ├── compact/{timestamp}.md
34
+ │ └── INDEX.md
35
+ └── swarm/ # Swarm operation state
36
+ ├── state.json
37
+ └── plans/
38
+
39
+ .memory/
40
+ ├── WORKING-MEMORY.md # Auto-maintained by Stop hook (overwritten)
41
+ ├── PROJECT-PATTERNS.md # Accumulated patterns (merged across sessions)
42
+ └── backup.json # Pre-compact git state snapshot
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Naming Conventions
48
+
49
+ ### Timestamps
50
+ Format: `YYYY-MM-DD_HHMM` (sortable, readable)
51
+ ```bash
52
+ TIMESTAMP=$(date +%Y-%m-%d_%H%M) # Example: 2025-12-26_1430
53
+ ```
54
+
55
+ ### Branch Slugs
56
+ Replace `/` with `-`, sanitize special characters:
57
+ ```bash
58
+ BRANCH_SLUG=$(git branch --show-current 2>/dev/null | sed 's/\//-/g' || echo "standalone")
59
+ ```
60
+
61
+ ### Topic Slugs
62
+ Lowercase, dashes, alphanumeric only, max 50 chars:
63
+ ```bash
64
+ TOPIC_SLUG=$(echo "$TOPIC" | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed 's/[^a-z0-9-]//g' | cut -c1-50)
65
+ ```
66
+
67
+ ### File Naming Patterns
68
+
69
+ | Type | Pattern | Example |
70
+ |------|---------|---------|
71
+ | Special indexes | `UPPERCASE.md` | `WORKING-MEMORY.md`, `INDEX.md` |
72
+ | Reports | `{type}-report.{timestamp}.md` | `security-report.2025-12-26_1430.md` |
73
+ | Status logs | `{timestamp}.md` | `2025-12-26_1430.md` |
74
+
75
+ ---
76
+
77
+ ## Helper Functions
78
+
79
+ Source helpers for consistent naming:
80
+
81
+ ```bash
82
+ source .devflow/scripts/docs-helpers.sh 2>/dev/null || {
83
+ get_timestamp() { date +%Y-%m-%d_%H%M; }
84
+ get_branch_slug() { git branch --show-current 2>/dev/null | sed 's/\//-/g' || echo "standalone"; }
85
+ get_topic_slug() { echo "$1" | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed 's/[^a-z0-9-]//g' | cut -c1-50; }
86
+ ensure_docs_dir() { mkdir -p ".docs/$1"; }
87
+ }
88
+ ```
89
+
90
+ ---
91
+
92
+ ## Agent Persistence Rules
93
+
94
+ ### Agents That Persist Artifacts
95
+
96
+ | Agent | Output Location | Behavior |
97
+ |-------|-----------------|----------|
98
+ | Reviewer | `.docs/reviews/{branch-slug}/{type}-report.{timestamp}.md` | Creates new |
99
+ | Working Memory | `.memory/WORKING-MEMORY.md` | Overwrites (auto-maintained by Stop hook) |
100
+
101
+ ### Agents That Don't Persist
102
+
103
+ - Git (fetch-issue: read-only, comment-pr: PR comments only)
104
+ - Coder (commits to git, no .docs/ output)
105
+
106
+ ---
107
+
108
+ ## Implementation Checklist
109
+
110
+ When creating or modifying persisting agents:
111
+
112
+ - [ ] Use standard timestamp format (`YYYY-MM-DD_HHMM`)
113
+ - [ ] Sanitize branch names (replace `/` with `-`)
114
+ - [ ] Sanitize topic names (lowercase, dashes, alphanumeric)
115
+ - [ ] Create directory with `mkdir -p .docs/{subdir}`
116
+ - [ ] Document output location in agent's final message
117
+ - [ ] Follow special file naming (UPPERCASE for indexes)
118
+ - [ ] Use helper functions when possible
119
+ - [ ] Update relevant index files
120
+
121
+ ---
122
+
123
+ ## Integration
124
+
125
+ This framework is used by:
126
+ - **Review agents**: Creates review reports
127
+ - **Working Memory hooks**: Auto-maintains `.memory/WORKING-MEMORY.md`
128
+
129
+ All persisting agents should load this skill to ensure consistent documentation.
130
+
131
+ ---
132
+
133
+ ## Extended References
134
+
135
+ For detailed patterns and violation examples:
136
+
137
+ - **[patterns.md](./references/patterns.md)** - Full templates, helper functions, naming examples, edge cases
138
+ - **[violations.md](./references/violations.md)** - Common violations with detection patterns and fixes