devflow-kit 0.8.1 → 1.0.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 (395) hide show
  1. package/CHANGELOG.md +185 -29
  2. package/LICENSE +1 -1
  3. package/README.md +179 -308
  4. package/dist/cli.js +3 -1
  5. package/dist/commands/init.d.ts +21 -0
  6. package/dist/commands/init.js +311 -575
  7. package/dist/commands/list.d.ts +3 -0
  8. package/dist/commands/list.js +20 -0
  9. package/dist/commands/uninstall.d.ts +10 -0
  10. package/dist/commands/uninstall.js +351 -78
  11. package/dist/plugins.d.ts +46 -0
  12. package/dist/plugins.js +162 -0
  13. package/dist/utils/cli.d.ts +5 -0
  14. package/dist/utils/cli.js +14 -0
  15. package/dist/utils/installer.d.ts +41 -0
  16. package/dist/utils/installer.js +177 -0
  17. package/dist/utils/paths.d.ts +10 -0
  18. package/dist/utils/paths.js +23 -3
  19. package/dist/utils/post-install.d.ts +68 -0
  20. package/dist/utils/post-install.js +427 -0
  21. package/dist/utils/safe-delete-install.d.ts +22 -0
  22. package/dist/utils/safe-delete-install.js +156 -0
  23. package/dist/utils/safe-delete.d.ts +12 -0
  24. package/dist/utils/safe-delete.js +83 -0
  25. package/package.json +18 -8
  26. package/plugins/devflow-audit-claude/.claude-plugin/plugin.json +7 -0
  27. package/plugins/devflow-audit-claude/README.md +46 -0
  28. package/plugins/devflow-audit-claude/agents/claude-md-auditor.md +134 -0
  29. package/plugins/devflow-audit-claude/commands/audit-claude.md +85 -0
  30. package/plugins/devflow-code-review/.claude-plugin/plugin.json +31 -0
  31. package/plugins/devflow-code-review/README.md +73 -0
  32. package/plugins/devflow-code-review/agents/git.md +272 -0
  33. package/plugins/devflow-code-review/agents/reviewer.md +119 -0
  34. package/plugins/devflow-code-review/agents/synthesizer.md +204 -0
  35. package/plugins/devflow-code-review/commands/code-review-teams.md +262 -0
  36. package/plugins/devflow-code-review/commands/code-review.md +141 -0
  37. package/plugins/devflow-code-review/skills/accessibility/SKILL.md +229 -0
  38. package/plugins/devflow-code-review/skills/accessibility/references/detection.md +171 -0
  39. package/plugins/devflow-code-review/skills/accessibility/references/patterns.md +670 -0
  40. package/plugins/devflow-code-review/skills/accessibility/references/violations.md +419 -0
  41. package/plugins/devflow-code-review/skills/agent-teams/SKILL.md +124 -0
  42. package/plugins/devflow-code-review/skills/agent-teams/references/cleanup.md +104 -0
  43. package/plugins/devflow-code-review/skills/agent-teams/references/communication.md +122 -0
  44. package/plugins/devflow-code-review/skills/agent-teams/references/team-patterns.md +217 -0
  45. package/plugins/devflow-code-review/skills/architecture-patterns/SKILL.md +153 -0
  46. package/plugins/devflow-code-review/skills/architecture-patterns/references/detection.md +337 -0
  47. package/plugins/devflow-code-review/skills/architecture-patterns/references/patterns.md +873 -0
  48. package/plugins/devflow-code-review/skills/architecture-patterns/references/violations.md +575 -0
  49. package/plugins/devflow-code-review/skills/complexity-patterns/SKILL.md +143 -0
  50. package/plugins/devflow-code-review/skills/complexity-patterns/references/detection.md +264 -0
  51. package/plugins/devflow-code-review/skills/complexity-patterns/references/patterns.md +487 -0
  52. package/plugins/devflow-code-review/skills/complexity-patterns/references/violations.md +361 -0
  53. package/plugins/devflow-code-review/skills/consistency-patterns/SKILL.md +140 -0
  54. package/plugins/devflow-code-review/skills/consistency-patterns/references/detection.md +207 -0
  55. package/plugins/devflow-code-review/skills/consistency-patterns/references/patterns.md +202 -0
  56. package/plugins/devflow-code-review/skills/consistency-patterns/references/violations.md +213 -0
  57. package/plugins/devflow-code-review/skills/database-patterns/SKILL.md +134 -0
  58. package/plugins/devflow-code-review/skills/database-patterns/references/detection.md +208 -0
  59. package/plugins/devflow-code-review/skills/database-patterns/references/patterns.md +394 -0
  60. package/plugins/devflow-code-review/skills/database-patterns/references/violations.md +332 -0
  61. package/plugins/devflow-code-review/skills/dependencies-patterns/SKILL.md +141 -0
  62. package/plugins/devflow-code-review/skills/dependencies-patterns/references/detection.md +181 -0
  63. package/plugins/devflow-code-review/skills/dependencies-patterns/references/patterns.md +225 -0
  64. package/plugins/devflow-code-review/skills/dependencies-patterns/references/violations.md +247 -0
  65. package/plugins/devflow-code-review/skills/documentation-patterns/SKILL.md +125 -0
  66. package/plugins/devflow-code-review/skills/documentation-patterns/references/detection.md +190 -0
  67. package/plugins/devflow-code-review/skills/documentation-patterns/references/patterns.md +189 -0
  68. package/plugins/devflow-code-review/skills/documentation-patterns/references/violations.md +163 -0
  69. package/plugins/devflow-code-review/skills/frontend-design/SKILL.md +254 -0
  70. package/plugins/devflow-code-review/skills/frontend-design/references/detection.md +184 -0
  71. package/plugins/devflow-code-review/skills/frontend-design/references/patterns.md +511 -0
  72. package/plugins/devflow-code-review/skills/frontend-design/references/violations.md +453 -0
  73. package/plugins/devflow-code-review/skills/performance-patterns/SKILL.md +154 -0
  74. package/plugins/devflow-code-review/skills/performance-patterns/references/detection.md +351 -0
  75. package/plugins/devflow-code-review/skills/performance-patterns/references/patterns.md +503 -0
  76. package/plugins/devflow-code-review/skills/performance-patterns/references/violations.md +354 -0
  77. package/plugins/devflow-code-review/skills/react/SKILL.md +276 -0
  78. package/plugins/devflow-code-review/skills/react/references/patterns.md +1331 -0
  79. package/plugins/devflow-code-review/skills/react/references/violations.md +565 -0
  80. package/plugins/devflow-code-review/skills/regression-patterns/SKILL.md +146 -0
  81. package/plugins/devflow-code-review/skills/regression-patterns/references/detection.md +237 -0
  82. package/plugins/devflow-code-review/skills/regression-patterns/references/patterns.md +226 -0
  83. package/plugins/devflow-code-review/skills/regression-patterns/references/violations.md +225 -0
  84. package/plugins/devflow-code-review/skills/review-methodology/SKILL.md +119 -0
  85. package/plugins/devflow-code-review/skills/review-methodology/references/patterns.md +186 -0
  86. package/plugins/devflow-code-review/skills/review-methodology/references/report-template.md +142 -0
  87. package/plugins/devflow-code-review/skills/review-methodology/references/violations.md +125 -0
  88. package/plugins/devflow-code-review/skills/security-patterns/SKILL.md +156 -0
  89. package/plugins/devflow-code-review/skills/security-patterns/references/detection.md +287 -0
  90. package/plugins/devflow-code-review/skills/security-patterns/references/patterns.md +507 -0
  91. package/plugins/devflow-code-review/skills/security-patterns/references/violations.md +237 -0
  92. package/plugins/devflow-code-review/skills/test-patterns/SKILL.md +183 -0
  93. package/plugins/devflow-code-review/skills/test-patterns/references/detection.md +149 -0
  94. package/plugins/devflow-code-review/skills/test-patterns/references/patterns.md +220 -0
  95. package/plugins/devflow-code-review/skills/test-patterns/references/report-template.md +108 -0
  96. package/plugins/devflow-code-review/skills/test-patterns/references/violations.md +221 -0
  97. package/plugins/devflow-core-skills/.claude-plugin/plugin.json +27 -0
  98. package/plugins/devflow-core-skills/README.md +50 -0
  99. package/plugins/devflow-core-skills/skills/accessibility/SKILL.md +229 -0
  100. package/plugins/devflow-core-skills/skills/accessibility/references/detection.md +171 -0
  101. package/plugins/devflow-core-skills/skills/accessibility/references/patterns.md +670 -0
  102. package/plugins/devflow-core-skills/skills/accessibility/references/violations.md +419 -0
  103. package/plugins/devflow-core-skills/skills/core-patterns/SKILL.md +162 -0
  104. package/plugins/devflow-core-skills/skills/core-patterns/references/checklist.md +276 -0
  105. package/plugins/devflow-core-skills/skills/core-patterns/references/code-smell-violations.md +144 -0
  106. package/plugins/devflow-core-skills/skills/core-patterns/references/detection.md +303 -0
  107. package/plugins/devflow-core-skills/skills/core-patterns/references/patterns.md +576 -0
  108. package/plugins/devflow-core-skills/skills/core-patterns/references/violations.md +369 -0
  109. package/plugins/devflow-core-skills/skills/docs-framework/SKILL.md +134 -0
  110. package/plugins/devflow-core-skills/skills/docs-framework/references/patterns.md +346 -0
  111. package/plugins/devflow-core-skills/skills/docs-framework/references/violations.md +221 -0
  112. package/plugins/devflow-core-skills/skills/frontend-design/SKILL.md +254 -0
  113. package/plugins/devflow-core-skills/skills/frontend-design/references/detection.md +184 -0
  114. package/plugins/devflow-core-skills/skills/frontend-design/references/patterns.md +511 -0
  115. package/plugins/devflow-core-skills/skills/frontend-design/references/violations.md +453 -0
  116. package/plugins/devflow-core-skills/skills/git-safety/SKILL.md +122 -0
  117. package/plugins/devflow-core-skills/skills/git-safety/references/detection.md +290 -0
  118. package/plugins/devflow-core-skills/skills/git-safety/references/patterns.md +289 -0
  119. package/plugins/devflow-core-skills/skills/git-safety/references/violations.md +18 -0
  120. package/plugins/devflow-core-skills/skills/git-workflow/SKILL.md +158 -0
  121. package/plugins/devflow-core-skills/skills/git-workflow/references/commit-patterns.md +115 -0
  122. package/plugins/devflow-core-skills/skills/git-workflow/references/commit-violations.md +77 -0
  123. package/plugins/devflow-core-skills/skills/git-workflow/references/pr-patterns.md +127 -0
  124. package/plugins/devflow-core-skills/skills/git-workflow/references/pr-violations.md +96 -0
  125. package/plugins/devflow-core-skills/skills/github-patterns/SKILL.md +153 -0
  126. package/plugins/devflow-core-skills/skills/github-patterns/references/patterns.md +572 -0
  127. package/plugins/devflow-core-skills/skills/github-patterns/references/violations.md +298 -0
  128. package/plugins/devflow-core-skills/skills/input-validation/SKILL.md +148 -0
  129. package/plugins/devflow-core-skills/skills/input-validation/references/detection.md +283 -0
  130. package/plugins/devflow-core-skills/skills/input-validation/references/patterns.md +361 -0
  131. package/plugins/devflow-core-skills/skills/input-validation/references/violations.md +224 -0
  132. package/plugins/devflow-core-skills/skills/react/SKILL.md +276 -0
  133. package/plugins/devflow-core-skills/skills/react/references/patterns.md +1331 -0
  134. package/plugins/devflow-core-skills/skills/react/references/violations.md +565 -0
  135. package/plugins/devflow-core-skills/skills/test-patterns/SKILL.md +183 -0
  136. package/plugins/devflow-core-skills/skills/test-patterns/references/detection.md +149 -0
  137. package/plugins/devflow-core-skills/skills/test-patterns/references/patterns.md +220 -0
  138. package/plugins/devflow-core-skills/skills/test-patterns/references/report-template.md +108 -0
  139. package/plugins/devflow-core-skills/skills/test-patterns/references/violations.md +221 -0
  140. package/plugins/devflow-core-skills/skills/typescript/SKILL.md +176 -0
  141. package/plugins/devflow-core-skills/skills/typescript/references/patterns.md +1105 -0
  142. package/plugins/devflow-core-skills/skills/typescript/references/violations.md +433 -0
  143. package/plugins/devflow-debug/.claude-plugin/plugin.json +18 -0
  144. package/plugins/devflow-debug/README.md +65 -0
  145. package/plugins/devflow-debug/agents/git.md +272 -0
  146. package/plugins/devflow-debug/commands/debug-teams.md +231 -0
  147. package/plugins/devflow-debug/commands/debug.md +160 -0
  148. package/plugins/devflow-debug/skills/agent-teams/SKILL.md +124 -0
  149. package/plugins/devflow-debug/skills/agent-teams/references/cleanup.md +104 -0
  150. package/plugins/devflow-debug/skills/agent-teams/references/communication.md +122 -0
  151. package/plugins/devflow-debug/skills/agent-teams/references/team-patterns.md +217 -0
  152. package/plugins/devflow-debug/skills/git-safety/SKILL.md +122 -0
  153. package/plugins/devflow-debug/skills/git-safety/references/detection.md +290 -0
  154. package/plugins/devflow-debug/skills/git-safety/references/patterns.md +289 -0
  155. package/plugins/devflow-debug/skills/git-safety/references/violations.md +18 -0
  156. package/plugins/devflow-implement/.claude-plugin/plugin.json +21 -0
  157. package/plugins/devflow-implement/README.md +71 -0
  158. package/plugins/devflow-implement/agents/coder.md +122 -0
  159. package/plugins/devflow-implement/agents/git.md +272 -0
  160. package/plugins/devflow-implement/agents/scrutinizer.md +80 -0
  161. package/plugins/devflow-implement/agents/shepherd.md +94 -0
  162. package/plugins/devflow-implement/agents/simplifier.md +62 -0
  163. package/plugins/devflow-implement/agents/skimmer.md +88 -0
  164. package/plugins/devflow-implement/agents/synthesizer.md +204 -0
  165. package/plugins/devflow-implement/agents/validator.md +86 -0
  166. package/plugins/devflow-implement/commands/implement-teams.md +608 -0
  167. package/plugins/devflow-implement/commands/implement.md +426 -0
  168. package/plugins/devflow-implement/skills/accessibility/SKILL.md +229 -0
  169. package/plugins/devflow-implement/skills/accessibility/references/detection.md +171 -0
  170. package/plugins/devflow-implement/skills/accessibility/references/patterns.md +670 -0
  171. package/plugins/devflow-implement/skills/accessibility/references/violations.md +419 -0
  172. package/plugins/devflow-implement/skills/agent-teams/SKILL.md +124 -0
  173. package/plugins/devflow-implement/skills/agent-teams/references/cleanup.md +104 -0
  174. package/plugins/devflow-implement/skills/agent-teams/references/communication.md +122 -0
  175. package/plugins/devflow-implement/skills/agent-teams/references/team-patterns.md +217 -0
  176. package/plugins/devflow-implement/skills/frontend-design/SKILL.md +254 -0
  177. package/plugins/devflow-implement/skills/frontend-design/references/detection.md +184 -0
  178. package/plugins/devflow-implement/skills/frontend-design/references/patterns.md +511 -0
  179. package/plugins/devflow-implement/skills/frontend-design/references/violations.md +453 -0
  180. package/plugins/devflow-implement/skills/implementation-patterns/SKILL.md +162 -0
  181. package/plugins/devflow-implement/skills/implementation-patterns/references/patterns.md +1063 -0
  182. package/plugins/devflow-implement/skills/implementation-patterns/references/violations.md +483 -0
  183. package/plugins/devflow-implement/skills/self-review/SKILL.md +149 -0
  184. package/plugins/devflow-implement/skills/self-review/references/patterns.md +405 -0
  185. package/plugins/devflow-implement/skills/self-review/references/report-template.md +253 -0
  186. package/plugins/devflow-implement/skills/self-review/references/violations.md +308 -0
  187. package/plugins/devflow-resolve/.claude-plugin/plugin.json +19 -0
  188. package/plugins/devflow-resolve/README.md +65 -0
  189. package/plugins/devflow-resolve/agents/git.md +272 -0
  190. package/plugins/devflow-resolve/agents/resolver.md +131 -0
  191. package/plugins/devflow-resolve/agents/simplifier.md +62 -0
  192. package/plugins/devflow-resolve/commands/resolve-teams.md +298 -0
  193. package/plugins/devflow-resolve/commands/resolve.md +237 -0
  194. package/plugins/devflow-resolve/skills/agent-teams/SKILL.md +124 -0
  195. package/plugins/devflow-resolve/skills/agent-teams/references/cleanup.md +104 -0
  196. package/plugins/devflow-resolve/skills/agent-teams/references/communication.md +122 -0
  197. package/plugins/devflow-resolve/skills/agent-teams/references/team-patterns.md +217 -0
  198. package/plugins/devflow-resolve/skills/implementation-patterns/SKILL.md +162 -0
  199. package/plugins/devflow-resolve/skills/implementation-patterns/references/patterns.md +1063 -0
  200. package/plugins/devflow-resolve/skills/implementation-patterns/references/violations.md +483 -0
  201. package/plugins/devflow-resolve/skills/security-patterns/SKILL.md +156 -0
  202. package/plugins/devflow-resolve/skills/security-patterns/references/detection.md +287 -0
  203. package/plugins/devflow-resolve/skills/security-patterns/references/patterns.md +507 -0
  204. package/plugins/devflow-resolve/skills/security-patterns/references/violations.md +237 -0
  205. package/plugins/devflow-self-review/.claude-plugin/plugin.json +7 -0
  206. package/plugins/devflow-self-review/README.md +38 -0
  207. package/plugins/devflow-self-review/agents/scrutinizer.md +80 -0
  208. package/plugins/devflow-self-review/agents/simplifier.md +62 -0
  209. package/plugins/devflow-self-review/agents/validator.md +86 -0
  210. package/plugins/devflow-self-review/commands/self-review.md +126 -0
  211. package/plugins/devflow-self-review/skills/core-patterns/SKILL.md +162 -0
  212. package/plugins/devflow-self-review/skills/core-patterns/references/checklist.md +276 -0
  213. package/plugins/devflow-self-review/skills/core-patterns/references/code-smell-violations.md +144 -0
  214. package/plugins/devflow-self-review/skills/core-patterns/references/detection.md +303 -0
  215. package/plugins/devflow-self-review/skills/core-patterns/references/patterns.md +576 -0
  216. package/plugins/devflow-self-review/skills/core-patterns/references/violations.md +369 -0
  217. package/plugins/devflow-self-review/skills/self-review/SKILL.md +149 -0
  218. package/plugins/devflow-self-review/skills/self-review/references/patterns.md +405 -0
  219. package/plugins/devflow-self-review/skills/self-review/references/report-template.md +253 -0
  220. package/plugins/devflow-self-review/skills/self-review/references/violations.md +308 -0
  221. package/plugins/devflow-specify/.claude-plugin/plugin.json +15 -0
  222. package/plugins/devflow-specify/README.md +46 -0
  223. package/plugins/devflow-specify/agents/skimmer.md +88 -0
  224. package/plugins/devflow-specify/agents/synthesizer.md +204 -0
  225. package/plugins/devflow-specify/commands/specify-teams.md +314 -0
  226. package/plugins/devflow-specify/commands/specify.md +179 -0
  227. package/plugins/devflow-specify/skills/agent-teams/SKILL.md +124 -0
  228. package/plugins/devflow-specify/skills/agent-teams/references/cleanup.md +104 -0
  229. package/plugins/devflow-specify/skills/agent-teams/references/communication.md +122 -0
  230. package/plugins/devflow-specify/skills/agent-teams/references/team-patterns.md +217 -0
  231. package/scripts/hooks/background-memory-update.sh +167 -0
  232. package/scripts/hooks/pre-compact-memory.sh +81 -0
  233. package/scripts/hooks/session-start-memory.sh +84 -0
  234. package/scripts/hooks/stop-update-memory.sh +81 -0
  235. package/shared/agents/coder.md +122 -0
  236. package/shared/agents/git.md +272 -0
  237. package/shared/agents/resolver.md +131 -0
  238. package/shared/agents/reviewer.md +119 -0
  239. package/shared/agents/scrutinizer.md +80 -0
  240. package/shared/agents/shepherd.md +94 -0
  241. package/shared/agents/simplifier.md +62 -0
  242. package/shared/agents/skimmer.md +88 -0
  243. package/shared/agents/synthesizer.md +204 -0
  244. package/shared/agents/validator.md +86 -0
  245. package/shared/skills/accessibility/SKILL.md +229 -0
  246. package/shared/skills/accessibility/references/detection.md +171 -0
  247. package/shared/skills/accessibility/references/patterns.md +670 -0
  248. package/shared/skills/accessibility/references/violations.md +419 -0
  249. package/shared/skills/agent-teams/SKILL.md +124 -0
  250. package/shared/skills/agent-teams/references/cleanup.md +104 -0
  251. package/shared/skills/agent-teams/references/communication.md +122 -0
  252. package/shared/skills/agent-teams/references/team-patterns.md +217 -0
  253. package/shared/skills/architecture-patterns/SKILL.md +153 -0
  254. package/shared/skills/architecture-patterns/references/detection.md +337 -0
  255. package/shared/skills/architecture-patterns/references/patterns.md +873 -0
  256. package/shared/skills/architecture-patterns/references/violations.md +575 -0
  257. package/shared/skills/complexity-patterns/SKILL.md +143 -0
  258. package/shared/skills/complexity-patterns/references/detection.md +264 -0
  259. package/shared/skills/complexity-patterns/references/patterns.md +487 -0
  260. package/shared/skills/complexity-patterns/references/violations.md +361 -0
  261. package/shared/skills/consistency-patterns/SKILL.md +140 -0
  262. package/shared/skills/consistency-patterns/references/detection.md +207 -0
  263. package/shared/skills/consistency-patterns/references/patterns.md +202 -0
  264. package/shared/skills/consistency-patterns/references/violations.md +213 -0
  265. package/shared/skills/core-patterns/SKILL.md +162 -0
  266. package/shared/skills/core-patterns/references/checklist.md +276 -0
  267. package/shared/skills/core-patterns/references/code-smell-violations.md +144 -0
  268. package/shared/skills/core-patterns/references/detection.md +303 -0
  269. package/shared/skills/core-patterns/references/patterns.md +576 -0
  270. package/shared/skills/core-patterns/references/violations.md +369 -0
  271. package/shared/skills/database-patterns/SKILL.md +134 -0
  272. package/shared/skills/database-patterns/references/detection.md +208 -0
  273. package/shared/skills/database-patterns/references/patterns.md +394 -0
  274. package/shared/skills/database-patterns/references/violations.md +332 -0
  275. package/shared/skills/dependencies-patterns/SKILL.md +141 -0
  276. package/shared/skills/dependencies-patterns/references/detection.md +181 -0
  277. package/shared/skills/dependencies-patterns/references/patterns.md +225 -0
  278. package/shared/skills/dependencies-patterns/references/violations.md +247 -0
  279. package/shared/skills/docs-framework/SKILL.md +134 -0
  280. package/shared/skills/docs-framework/references/patterns.md +346 -0
  281. package/shared/skills/docs-framework/references/violations.md +221 -0
  282. package/shared/skills/documentation-patterns/SKILL.md +125 -0
  283. package/shared/skills/documentation-patterns/references/detection.md +190 -0
  284. package/shared/skills/documentation-patterns/references/patterns.md +189 -0
  285. package/shared/skills/documentation-patterns/references/violations.md +163 -0
  286. package/shared/skills/frontend-design/SKILL.md +254 -0
  287. package/shared/skills/frontend-design/references/detection.md +184 -0
  288. package/shared/skills/frontend-design/references/patterns.md +511 -0
  289. package/shared/skills/frontend-design/references/violations.md +453 -0
  290. package/shared/skills/git-safety/SKILL.md +122 -0
  291. package/shared/skills/git-safety/references/detection.md +290 -0
  292. package/shared/skills/git-safety/references/patterns.md +289 -0
  293. package/shared/skills/git-safety/references/violations.md +18 -0
  294. package/shared/skills/git-workflow/SKILL.md +158 -0
  295. package/shared/skills/git-workflow/references/commit-patterns.md +115 -0
  296. package/shared/skills/git-workflow/references/commit-violations.md +77 -0
  297. package/shared/skills/git-workflow/references/pr-patterns.md +127 -0
  298. package/shared/skills/git-workflow/references/pr-violations.md +96 -0
  299. package/shared/skills/github-patterns/SKILL.md +153 -0
  300. package/shared/skills/github-patterns/references/patterns.md +572 -0
  301. package/shared/skills/github-patterns/references/violations.md +298 -0
  302. package/shared/skills/implementation-patterns/SKILL.md +162 -0
  303. package/shared/skills/implementation-patterns/references/patterns.md +1063 -0
  304. package/shared/skills/implementation-patterns/references/violations.md +483 -0
  305. package/shared/skills/input-validation/SKILL.md +148 -0
  306. package/shared/skills/input-validation/references/detection.md +283 -0
  307. package/shared/skills/input-validation/references/patterns.md +361 -0
  308. package/shared/skills/input-validation/references/violations.md +224 -0
  309. package/shared/skills/performance-patterns/SKILL.md +154 -0
  310. package/shared/skills/performance-patterns/references/detection.md +351 -0
  311. package/shared/skills/performance-patterns/references/patterns.md +503 -0
  312. package/shared/skills/performance-patterns/references/violations.md +354 -0
  313. package/shared/skills/react/SKILL.md +276 -0
  314. package/shared/skills/react/references/patterns.md +1331 -0
  315. package/shared/skills/react/references/violations.md +565 -0
  316. package/shared/skills/regression-patterns/SKILL.md +146 -0
  317. package/shared/skills/regression-patterns/references/detection.md +237 -0
  318. package/shared/skills/regression-patterns/references/patterns.md +226 -0
  319. package/shared/skills/regression-patterns/references/violations.md +225 -0
  320. package/shared/skills/review-methodology/SKILL.md +119 -0
  321. package/shared/skills/review-methodology/references/patterns.md +186 -0
  322. package/shared/skills/review-methodology/references/report-template.md +142 -0
  323. package/shared/skills/review-methodology/references/violations.md +125 -0
  324. package/shared/skills/security-patterns/SKILL.md +156 -0
  325. package/shared/skills/security-patterns/references/detection.md +287 -0
  326. package/shared/skills/security-patterns/references/patterns.md +507 -0
  327. package/shared/skills/security-patterns/references/violations.md +237 -0
  328. package/shared/skills/self-review/SKILL.md +149 -0
  329. package/shared/skills/self-review/references/patterns.md +405 -0
  330. package/shared/skills/self-review/references/report-template.md +253 -0
  331. package/shared/skills/self-review/references/violations.md +308 -0
  332. package/shared/skills/test-patterns/SKILL.md +183 -0
  333. package/shared/skills/test-patterns/references/detection.md +149 -0
  334. package/shared/skills/test-patterns/references/patterns.md +220 -0
  335. package/shared/skills/test-patterns/references/report-template.md +108 -0
  336. package/shared/skills/test-patterns/references/violations.md +221 -0
  337. package/shared/skills/typescript/SKILL.md +176 -0
  338. package/shared/skills/typescript/references/patterns.md +1105 -0
  339. package/shared/skills/typescript/references/violations.md +433 -0
  340. package/src/templates/claudeignore.template +188 -0
  341. package/src/templates/managed-settings.json +146 -0
  342. package/src/templates/settings.json +59 -0
  343. package/dist/cli.d.ts.map +0 -1
  344. package/dist/cli.js.map +0 -1
  345. package/dist/commands/init.d.ts.map +0 -1
  346. package/dist/commands/init.js.map +0 -1
  347. package/dist/commands/uninstall.d.ts.map +0 -1
  348. package/dist/commands/uninstall.js.map +0 -1
  349. package/dist/utils/git.d.ts.map +0 -1
  350. package/dist/utils/git.js.map +0 -1
  351. package/dist/utils/paths.d.ts.map +0 -1
  352. package/dist/utils/paths.js.map +0 -1
  353. package/src/claude/CLAUDE.md +0 -400
  354. package/src/claude/agents/devflow/audit-architecture.md +0 -132
  355. package/src/claude/agents/devflow/audit-complexity.md +0 -132
  356. package/src/claude/agents/devflow/audit-database.md +0 -132
  357. package/src/claude/agents/devflow/audit-dependencies.md +0 -132
  358. package/src/claude/agents/devflow/audit-documentation.md +0 -132
  359. package/src/claude/agents/devflow/audit-performance.md +0 -256
  360. package/src/claude/agents/devflow/audit-security.md +0 -259
  361. package/src/claude/agents/devflow/audit-tests.md +0 -132
  362. package/src/claude/agents/devflow/audit-typescript.md +0 -132
  363. package/src/claude/agents/devflow/brainstorm.md +0 -279
  364. package/src/claude/agents/devflow/catch-up.md +0 -345
  365. package/src/claude/agents/devflow/code-review.md +0 -307
  366. package/src/claude/agents/devflow/commit.md +0 -380
  367. package/src/claude/agents/devflow/debug.md +0 -476
  368. package/src/claude/agents/devflow/design.md +0 -491
  369. package/src/claude/agents/devflow/pr-comments.md +0 -285
  370. package/src/claude/agents/devflow/project-state.md +0 -419
  371. package/src/claude/agents/devflow/pull-request.md +0 -423
  372. package/src/claude/agents/devflow/release.md +0 -1137
  373. package/src/claude/agents/devflow/tech-debt.md +0 -338
  374. package/src/claude/commands/devflow/brainstorm.md +0 -68
  375. package/src/claude/commands/devflow/breakdown.md +0 -125
  376. package/src/claude/commands/devflow/catch-up.md +0 -29
  377. package/src/claude/commands/devflow/code-review.md +0 -237
  378. package/src/claude/commands/devflow/commit.md +0 -17
  379. package/src/claude/commands/devflow/debug.md +0 -56
  380. package/src/claude/commands/devflow/design.md +0 -82
  381. package/src/claude/commands/devflow/devlog.md +0 -408
  382. package/src/claude/commands/devflow/implement.md +0 -100
  383. package/src/claude/commands/devflow/plan.md +0 -223
  384. package/src/claude/commands/devflow/pull-request.md +0 -269
  385. package/src/claude/commands/devflow/release.md +0 -251
  386. package/src/claude/commands/devflow/resolve-comments.md +0 -583
  387. package/src/claude/scripts/statusline.sh +0 -47
  388. package/src/claude/settings.json +0 -6
  389. package/src/claude/skills/devflow/code-smell/SKILL.md +0 -428
  390. package/src/claude/skills/devflow/debug/SKILL.md +0 -119
  391. package/src/claude/skills/devflow/error-handling/SKILL.md +0 -597
  392. package/src/claude/skills/devflow/input-validation/SKILL.md +0 -514
  393. package/src/claude/skills/devflow/pattern-check/SKILL.md +0 -238
  394. package/src/claude/skills/devflow/research/SKILL.md +0 -138
  395. package/src/claude/skills/devflow/test-design/SKILL.md +0 -384
@@ -0,0 +1,86 @@
1
+ ---
2
+ name: Validator
3
+ description: Dedicated agent for running validation commands (build, typecheck, lint, test). Reports pass/fail with structured failure details - never fixes.
4
+ model: haiku
5
+ skills: test-patterns
6
+ ---
7
+
8
+ # Validator Agent
9
+
10
+ You are a validation specialist that runs build and test commands to verify code correctness. You discover validation commands from project configuration, execute them in order, and report structured results. You never fix issues - you only report them for other agents to fix.
11
+
12
+ ## Input Context
13
+
14
+ You receive from orchestrator:
15
+ - **FILES_CHANGED**: List of modified files
16
+ - **VALIDATION_SCOPE**: `full` | `changed-only` (hints for test filtering if supported)
17
+
18
+ ## Responsibilities
19
+
20
+ 1. **Discover validation commands**: Check package.json scripts, Makefile, Cargo.toml, or similar for available commands
21
+ 2. **Execute in order**: build → typecheck → lint → test (skip if command doesn't exist)
22
+ 3. **Capture all output**: Record stdout/stderr for each command
23
+ 4. **Parse failures**: Extract file:line references from error output where possible
24
+ 5. **Report results**: Return structured pass/fail status with failure details
25
+
26
+ ## Validation Order
27
+
28
+ Execute in this order, stopping on first failure:
29
+
30
+ | Priority | Command Type | Common Examples |
31
+ |----------|-------------|-----------------|
32
+ | 1 | Build | `npm run build`, `cargo build`, `make build` |
33
+ | 2 | Typecheck | `npm run typecheck`, `tsc --noEmit` |
34
+ | 3 | Lint | `npm run lint`, `cargo clippy`, `make lint` |
35
+ | 4 | Test | `npm test`, `cargo test`, `make test` |
36
+
37
+ ## Principles
38
+
39
+ 1. **Report only** - Never fix code, never commit, never modify files
40
+ 2. **Stop on failure** - First failure halts remaining commands
41
+ 3. **Parse intelligently** - Extract file:line from error messages when possible
42
+ 4. **Respect scope** - Use VALIDATION_SCOPE hint for test filtering if framework supports it
43
+ 5. **Fast feedback** - Use haiku model for speed on this simple task
44
+
45
+ ## Output
46
+
47
+ Return structured validation results:
48
+
49
+ ```markdown
50
+ ## Validation Report
51
+
52
+ ### Status: PASS | FAIL | BLOCKED
53
+
54
+ ### Commands Executed
55
+ | Command | Status | Duration |
56
+ |---------|--------|----------|
57
+ | npm run build | PASS | 3.2s |
58
+ | npm run typecheck | FAIL | 1.8s |
59
+
60
+ ### Failures (if FAIL)
61
+
62
+ #### typecheck
63
+ ```
64
+ src/auth/login.ts:42:15 - error TS2339: Property 'email' does not exist on type 'User'.
65
+ src/auth/login.ts:58:3 - error TS2345: Argument of type 'string' is not assignable to parameter of type 'number'.
66
+ ```
67
+
68
+ **Parsed References:**
69
+ - `src/auth/login.ts:42` - Property 'email' does not exist on type 'User'
70
+ - `src/auth/login.ts:58` - Argument type mismatch (string vs number)
71
+
72
+ ### Blockers (if BLOCKED)
73
+ {Description of why validation couldn't run - e.g., missing dependencies, broken config}
74
+ ```
75
+
76
+ ## Boundaries
77
+
78
+ **Escalate to orchestrator (BLOCKED):**
79
+ - No validation commands found in project
80
+ - Validation command crashes (not test failure, but command itself fails to run)
81
+ - Missing dependencies that prevent any validation
82
+
83
+ **Handle autonomously:**
84
+ - All command execution and output parsing
85
+ - Determining which commands exist and should run
86
+ - Formatting error output into structured references
@@ -0,0 +1,229 @@
1
+ ---
2
+ name: accessibility
3
+ description: This skill should be used when the user asks to "add accessibility", "check ARIA", "handle keyboard navigation", "add focus management", or creates UI components, forms, or interactive elements. Provides WCAG 2.1 AA patterns for keyboard navigation, ARIA roles and states, focus management, color contrast, and screen reader support.
4
+ user-invocable: false
5
+ allowed-tools: Read, Grep, Glob
6
+ activation:
7
+ file-patterns:
8
+ - "**/*.tsx"
9
+ - "**/*.jsx"
10
+ - "**/*.css"
11
+ - "**/*.scss"
12
+ exclude:
13
+ - "node_modules/**"
14
+ - "**/*.test.*"
15
+ - "**/*.spec.*"
16
+ ---
17
+
18
+ # Accessibility Patterns
19
+
20
+ Reference for web accessibility (WCAG 2.1 AA compliance), keyboard navigation, screen reader support, and inclusive design.
21
+
22
+ ## Iron Law
23
+
24
+ > **EVERY INTERACTION MUST BE POSSIBLE WITHOUT A MOUSE**
25
+ >
26
+ > If a user cannot complete an action using only keyboard, the feature is broken.
27
+ > Mouse-only interactions exclude users with motor disabilities, power users,
28
+ > and anyone navigating with assistive technology. Tab order, focus management,
29
+ > and keyboard shortcuts are not optional enhancements.
30
+
31
+ ## When This Skill Activates
32
+
33
+ - Creating interactive UI components
34
+ - Building forms and inputs
35
+ - Working with React/JSX code
36
+ - Discussing focus, ARIA, or screen readers
37
+ - Reviewing color schemes or contrast
38
+
39
+ ---
40
+
41
+ ## Keyboard Navigation
42
+
43
+ ### Focus Management
44
+
45
+ ```tsx
46
+ // CORRECT: Focus trap in modal
47
+ function Modal({ isOpen, onClose, children }) {
48
+ const firstFocusable = useRef<HTMLButtonElement>(null);
49
+
50
+ useEffect(() => {
51
+ if (isOpen) firstFocusable.current?.focus();
52
+ }, [isOpen]);
53
+
54
+ return (
55
+ <div role="dialog" aria-modal="true" onKeyDown={(e) => {
56
+ if (e.key === 'Escape') onClose();
57
+ }}>
58
+ <button ref={firstFocusable}>First action</button>
59
+ {children}
60
+ </div>
61
+ );
62
+ }
63
+
64
+ // VIOLATION: No focus management, no escape handler
65
+ function BadModal({ children }) {
66
+ return <div className="modal">{children}</div>;
67
+ }
68
+ ```
69
+
70
+ ### Skip Links
71
+
72
+ ```tsx
73
+ // CORRECT: Skip to main content
74
+ <a href="#main-content" className="sr-only focus:not-sr-only">
75
+ Skip to main content
76
+ </a>
77
+ <main id="main-content" tabIndex={-1}>...</main>
78
+ ```
79
+
80
+ ---
81
+
82
+ ## ARIA and Semantic HTML
83
+
84
+ ### Prefer Semantic Elements
85
+
86
+ ```tsx
87
+ // CORRECT: Native semantics
88
+ <button onClick={handleClick}>Submit</button>
89
+ <nav aria-label="Main"><ul>...</ul></nav>
90
+ <article><header>...</header></article>
91
+
92
+ // VIOLATION: Div with role instead of semantic element
93
+ <div role="button" onClick={handleClick}>Submit</div>
94
+ <div role="navigation">...</div>
95
+ ```
96
+
97
+ ### Live Regions
98
+
99
+ ```tsx
100
+ // CORRECT: Announce dynamic changes
101
+ <div aria-live="polite" aria-atomic="true">
102
+ {message && <p>{message}</p>}
103
+ </div>
104
+
105
+ // For errors (assertive)
106
+ <div role="alert">{errorMessage}</div>
107
+ ```
108
+
109
+ ---
110
+
111
+ ## Color and Contrast
112
+
113
+ | Element | Minimum Ratio | WCAG Level |
114
+ |---------|--------------|------------|
115
+ | Normal text (<18px) | 4.5:1 | AA |
116
+ | Large text (>=18px bold, >=24px) | 3:1 | AA |
117
+ | UI components | 3:1 | AA |
118
+ | Enhanced | 7:1 | AAA |
119
+
120
+ ### Never Color-Only Meaning
121
+
122
+ ```tsx
123
+ // VIOLATION: Only color indicates error
124
+ <input style={{ borderColor: hasError ? 'red' : 'gray' }} />
125
+
126
+ // CORRECT: Icon + text + color
127
+ <input aria-invalid={hasError} aria-describedby="error-msg" />
128
+ {hasError && <span id="error-msg" role="alert">Required field</span>}
129
+ ```
130
+
131
+ ---
132
+
133
+ ## Motion and Animation
134
+
135
+ ```tsx
136
+ // CORRECT: Respect user preferences
137
+ const prefersReduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
138
+
139
+ <div className={prefersReduced ? 'no-animation' : 'animate-fade'}>
140
+ Content
141
+ </div>
142
+
143
+ // CSS approach
144
+ @media (prefers-reduced-motion: reduce) {
145
+ *, *::before, *::after {
146
+ animation-duration: 0.01ms !important;
147
+ transition-duration: 0.01ms !important;
148
+ }
149
+ }
150
+ ```
151
+
152
+ ---
153
+
154
+ ## Touch and Pointer
155
+
156
+ ### Minimum Target Size
157
+
158
+ ```css
159
+ /* CORRECT: 44x44px minimum touch target */
160
+ .button {
161
+ min-width: 44px;
162
+ min-height: 44px;
163
+ padding: 12px 16px;
164
+ }
165
+
166
+ /* VIOLATION: Tiny tap targets */
167
+ .icon-button {
168
+ width: 20px;
169
+ height: 20px;
170
+ }
171
+ ```
172
+
173
+ ---
174
+
175
+ ## Forms and Errors
176
+
177
+ ```tsx
178
+ // CORRECT: Associated labels and error linking
179
+ <div>
180
+ <label htmlFor="email">Email</label>
181
+ <input
182
+ id="email"
183
+ type="email"
184
+ aria-invalid={!!error}
185
+ aria-describedby={error ? 'email-error' : undefined}
186
+ />
187
+ {error && <span id="email-error" role="alert">{error}</span>}
188
+ </div>
189
+
190
+ // VIOLATION: Placeholder as label
191
+ <input placeholder="Enter email" />
192
+ ```
193
+
194
+ ---
195
+
196
+ ## Extended References
197
+
198
+ For additional patterns and detection rules:
199
+ - `references/violations.md` - Extended accessibility violations
200
+ - `references/patterns.md` - Extended correct patterns
201
+ - `references/detection.md` - Grep patterns for finding issues
202
+
203
+ ---
204
+
205
+ ## Severity Guidelines
206
+
207
+ | Severity | Criteria |
208
+ |----------|----------|
209
+ | CRITICAL | No keyboard access, missing form labels, zero contrast |
210
+ | HIGH | Missing focus indicators, no skip links, color-only meaning |
211
+ | MEDIUM | Missing ARIA labels, poor focus order, small touch targets |
212
+ | LOW | Missing optional enhancements, could improve announcements |
213
+
214
+ ---
215
+
216
+ ## Checklist
217
+
218
+ - [ ] All interactive elements reachable via Tab
219
+ - [ ] Visible focus indicators on all focusable elements
220
+ - [ ] Escape closes modals/dropdowns
221
+ - [ ] Skip link to main content
222
+ - [ ] All form inputs have associated labels
223
+ - [ ] Errors linked via aria-describedby
224
+ - [ ] Color contrast meets 4.5:1 (text) / 3:1 (UI)
225
+ - [ ] No color-only meaning
226
+ - [ ] prefers-reduced-motion respected
227
+ - [ ] Touch targets minimum 44x44px
228
+ - [ ] aria-live for dynamic content
229
+ - [ ] Semantic HTML preferred over ARIA roles
@@ -0,0 +1,171 @@
1
+ # Accessibility Detection Patterns
2
+
3
+ Grep and regex patterns for detecting accessibility issues. Use with `Grep` tool.
4
+
5
+ ## Keyboard Access Issues
6
+
7
+ ```bash
8
+ # onClick without keyboard handler
9
+ rg 'onClick=\{[^}]+\}' --type tsx | rg -v 'onKeyDown|onKeyPress|onKeyUp|<button|<a '
10
+
11
+ # Non-focusable interactive elements
12
+ rg '<(div|span)\s+[^>]*onClick' --type tsx
13
+
14
+ # tabIndex with positive values (breaks natural order)
15
+ rg 'tabIndex=\{?[1-9]' --type tsx
16
+
17
+ # Drag-only interactions
18
+ rg 'onDrag(Start|End|Over)' --type tsx | rg -v 'onKey'
19
+ ```
20
+
21
+ ## Missing Labels
22
+
23
+ ```bash
24
+ # Input without id (likely missing label association)
25
+ rg '<input[^>]*>' --type tsx | rg -v 'id='
26
+
27
+ # Button with only icon (no text or aria-label)
28
+ rg '<button[^>]*>\s*<[A-Z][a-zA-Z]*Icon' --type tsx | rg -v 'aria-label'
29
+
30
+ # Image without alt
31
+ rg '<img[^>]*>' --type tsx | rg -v 'alt='
32
+
33
+ # Links without text content
34
+ rg '<a[^>]*>\s*<(img|[A-Z])' --type tsx | rg -v 'aria-label'
35
+ ```
36
+
37
+ ## ARIA Misuse
38
+
39
+ ```bash
40
+ # Redundant role on semantic elements
41
+ rg '<button[^>]*role="button"' --type tsx
42
+ rg '<nav[^>]*role="navigation"' --type tsx
43
+ rg '<a[^>]*role="link"' --type tsx
44
+
45
+ # aria-hidden on focusable elements
46
+ rg 'aria-hidden="true"[^>]*(tabIndex|onClick|href)' --type tsx
47
+
48
+ # Missing required ARIA attributes
49
+ rg 'role="slider"' --type tsx | rg -v 'aria-value(now|min|max)'
50
+ rg 'role="checkbox"' --type tsx | rg -v 'aria-checked'
51
+ rg 'role="tab"' --type tsx | rg -v 'aria-selected'
52
+ ```
53
+
54
+ ## Focus Management Issues
55
+
56
+ ```bash
57
+ # Focus removal (outline: none without replacement)
58
+ rg 'outline:\s*none' --type css --type scss | rg -v 'focus-visible|focus-ring'
59
+
60
+ # Dialogs without role or aria-modal
61
+ rg 'modal|dialog' --type tsx -i | rg -v 'role="dialog"|aria-modal'
62
+
63
+ # Missing escape key handler in modals
64
+ rg '(Modal|Dialog|Popup)' --type tsx | rg -v 'Escape|onKeyDown'
65
+ ```
66
+
67
+ ## Color and Contrast
68
+
69
+ ```bash
70
+ # Light gray text (potential contrast issue)
71
+ rg 'color:\s*#[a-fA-F0-9]{3,6}' --type css | rg -i '(#[cdef]{3}|#[cdef]{6})'
72
+
73
+ # Color-only indicators
74
+ rg 'color.*error|color.*success|color.*warning' --type css -i
75
+
76
+ # Placeholder as only label indicator
77
+ rg '<input[^>]*placeholder=' --type tsx | rg -v '<label|aria-label'
78
+ ```
79
+
80
+ ## Form Issues
81
+
82
+ ```bash
83
+ # Missing error association
84
+ rg 'aria-invalid' --type tsx | rg -v 'aria-describedby'
85
+
86
+ # Form without noValidate (may conflict with custom validation)
87
+ rg '<form[^>]*>' --type tsx | rg 'onSubmit' | rg -v 'noValidate'
88
+
89
+ # Submit button without type
90
+ rg '<button[^>]*>Submit' --type tsx | rg -v 'type="submit"'
91
+ ```
92
+
93
+ ## Motion Issues
94
+
95
+ ```bash
96
+ # Animation without reduced motion check
97
+ rg 'animation(-duration)?:' --type css | rg -v 'prefers-reduced-motion'
98
+
99
+ # Transition without reduced motion check
100
+ rg 'transition(-duration)?:' --type css | rg -v 'prefers-reduced-motion'
101
+
102
+ # Autoplay video/audio
103
+ rg '<(video|audio)[^>]*autoPlay' --type tsx
104
+
105
+ # Infinite animation loops
106
+ rg 'animation:.*infinite' --type css
107
+ ```
108
+
109
+ ## Touch Target Issues
110
+
111
+ ```bash
112
+ # Small fixed dimensions
113
+ rg '(width|height):\s*(1[0-9]|2[0-9]|3[0-9])px' --type css
114
+
115
+ # Icon buttons without adequate sizing
116
+ rg '\.icon(-btn|Button)' --type css -A5 | rg '(width|height)'
117
+ ```
118
+
119
+ ## Screen Reader Issues
120
+
121
+ ```bash
122
+ # Generic link text
123
+ rg '>click here<|>here<|>read more<|>learn more<' --type tsx -i
124
+
125
+ # aria-label duplicating visible text
126
+ rg 'aria-label="([^"]+)"[^>]*>\1<' --type tsx
127
+
128
+ # Missing landmark regions
129
+ rg '<div[^>]*class="(header|footer|nav|sidebar|main)"' --type tsx | rg -v 'role='
130
+ ```
131
+
132
+ ## Live Region Issues
133
+
134
+ ```bash
135
+ # Dynamic content without aria-live
136
+ rg '(loading|spinner|toast|notification|alert)' --type tsx -i | rg -v 'aria-live|role="alert"|role="status"'
137
+
138
+ # Missing aria-atomic on live regions
139
+ rg 'aria-live=' --type tsx | rg -v 'aria-atomic'
140
+ ```
141
+
142
+ ## Semantic HTML Issues
143
+
144
+ ```bash
145
+ # Div/span used instead of semantic elements
146
+ rg '<div[^>]*role="(button|link|navigation|main|banner|contentinfo)"' --type tsx
147
+ rg '<span[^>]*role="(button|link)"' --type tsx
148
+
149
+ # Heading level skips (partial detection)
150
+ rg '<h[1-6]' --type tsx
151
+
152
+ # List items outside lists
153
+ rg '<li[^>]*>' --type tsx | rg -v '<ul|<ol'
154
+ ```
155
+
156
+ ## Testing Commands
157
+
158
+ ```bash
159
+ # Full accessibility audit on changed files
160
+ git diff --name-only HEAD~1 | xargs -I{} rg -l 'onClick|<input|<button|<a ' {} 2>/dev/null
161
+
162
+ # Count potential issues by category
163
+ echo "=== Potential Keyboard Issues ==="
164
+ rg '<(div|span)\s+[^>]*onClick' --type tsx -c
165
+
166
+ echo "=== Potential Label Issues ==="
167
+ rg '<input[^>]*>' --type tsx | rg -v 'id=' | wc -l
168
+
169
+ echo "=== Potential ARIA Issues ==="
170
+ rg '<button[^>]*role="button"' --type tsx -c
171
+ ```