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,169 @@
1
+ /**
2
+ * Shared plugin registry — single source of truth for all CLI commands.
3
+ */
4
+ /**
5
+ * Available DevFlow plugins
6
+ */
7
+ export const DEVFLOW_PLUGINS = [
8
+ {
9
+ name: 'devflow-core-skills',
10
+ description: 'Auto-activating quality enforcement (foundation layer)',
11
+ commands: [],
12
+ agents: [],
13
+ skills: ['accessibility', 'core-patterns', 'docs-framework', 'frontend-design', 'git-safety', 'git-workflow', 'github-patterns', 'input-validation', 'react', 'test-driven-development', 'test-patterns', 'typescript'],
14
+ },
15
+ {
16
+ name: 'devflow-specify',
17
+ description: 'Interactive feature specification',
18
+ commands: ['/specify'],
19
+ agents: ['skimmer', 'synthesizer'],
20
+ skills: ['agent-teams'],
21
+ },
22
+ {
23
+ name: 'devflow-implement',
24
+ description: 'Complete task implementation workflow',
25
+ commands: ['/implement'],
26
+ agents: ['git', 'skimmer', 'synthesizer', 'coder', 'simplifier', 'scrutinizer', 'shepherd', 'validator'],
27
+ skills: ['accessibility', 'agent-teams', 'frontend-design', 'implementation-patterns', 'self-review'],
28
+ },
29
+ {
30
+ name: 'devflow-code-review',
31
+ description: 'Comprehensive code review',
32
+ commands: ['/code-review'],
33
+ agents: ['git', 'reviewer', 'synthesizer'],
34
+ skills: ['accessibility', 'agent-teams', 'architecture-patterns', 'complexity-patterns', 'consistency-patterns', 'database-patterns', 'dependencies-patterns', 'documentation-patterns', 'frontend-design', 'performance-patterns', 'react', 'regression-patterns', 'review-methodology', 'security-patterns', 'test-patterns'],
35
+ },
36
+ {
37
+ name: 'devflow-resolve',
38
+ description: 'Process and fix review issues',
39
+ commands: ['/resolve'],
40
+ agents: ['git', 'resolver', 'simplifier'],
41
+ skills: ['agent-teams', 'implementation-patterns', 'security-patterns'],
42
+ },
43
+ {
44
+ name: 'devflow-debug',
45
+ description: 'Debugging with competing hypotheses',
46
+ commands: ['/debug'],
47
+ agents: ['git'],
48
+ skills: ['agent-teams', 'git-safety'],
49
+ },
50
+ {
51
+ name: 'devflow-self-review',
52
+ description: 'Self-review workflow (Simplifier + Scrutinizer)',
53
+ commands: ['/self-review'],
54
+ agents: ['simplifier', 'scrutinizer', 'validator'],
55
+ skills: ['self-review', 'core-patterns'],
56
+ },
57
+ {
58
+ name: 'devflow-ambient',
59
+ description: 'Ambient mode — auto-loads relevant skills based on each prompt',
60
+ commands: ['/ambient'],
61
+ agents: [],
62
+ skills: ['ambient-router'],
63
+ },
64
+ {
65
+ name: 'devflow-audit-claude',
66
+ description: 'Audit CLAUDE.md files against Anthropic best practices',
67
+ commands: ['/audit-claude'],
68
+ agents: ['claude-md-auditor'],
69
+ skills: [],
70
+ optional: true,
71
+ },
72
+ ];
73
+ /**
74
+ * Deprecated command names from old installations.
75
+ * Used during init to clean up stale command files on upgrade.
76
+ */
77
+ export const LEGACY_COMMAND_NAMES = [
78
+ 'review',
79
+ ];
80
+ /**
81
+ * Deprecated skill names from old installations (prefixed with devflow-).
82
+ * Used during uninstall to clean up legacy installs.
83
+ */
84
+ export const LEGACY_SKILL_NAMES = [
85
+ 'devflow-core-patterns',
86
+ 'devflow-review-methodology',
87
+ 'devflow-docs-framework',
88
+ 'devflow-git-safety',
89
+ 'devflow-github-patterns',
90
+ 'devflow-implementation-patterns',
91
+ 'devflow-codebase-navigation',
92
+ 'devflow-test-design',
93
+ 'devflow-code-smell',
94
+ 'devflow-commit',
95
+ 'devflow-pull-request',
96
+ 'devflow-input-validation',
97
+ 'devflow-self-review',
98
+ 'devflow-typescript',
99
+ 'devflow-react',
100
+ 'devflow-architecture-patterns',
101
+ 'devflow-complexity-patterns',
102
+ 'devflow-consistency-patterns',
103
+ 'devflow-database-patterns',
104
+ 'devflow-dependencies-patterns',
105
+ 'devflow-documentation-patterns',
106
+ 'devflow-performance-patterns',
107
+ 'devflow-regression-patterns',
108
+ 'devflow-security-patterns',
109
+ 'devflow-tests-patterns',
110
+ 'devflow-pattern-check',
111
+ 'devflow-error-handling',
112
+ 'devflow-debug',
113
+ 'devflow-accessibility',
114
+ 'devflow-frontend-design',
115
+ 'devflow-agent-teams',
116
+ // v1.0.0 consolidation: old unprefixed names from pre-v1.0.0 installs
117
+ 'codebase-navigation',
118
+ 'test-design',
119
+ 'code-smell',
120
+ 'commit',
121
+ 'pull-request',
122
+ 'tests-patterns',
123
+ ];
124
+ /**
125
+ * Derive unique skill names from all plugins.
126
+ */
127
+ export function getAllSkillNames() {
128
+ const skills = new Set();
129
+ for (const plugin of DEVFLOW_PLUGINS) {
130
+ for (const skill of plugin.skills) {
131
+ skills.add(skill);
132
+ }
133
+ }
134
+ return [...skills];
135
+ }
136
+ /**
137
+ * Derive unique agent names from all plugins.
138
+ */
139
+ export function getAllAgentNames() {
140
+ const agents = new Set();
141
+ for (const plugin of DEVFLOW_PLUGINS) {
142
+ for (const agent of plugin.agents) {
143
+ agents.add(agent);
144
+ }
145
+ }
146
+ return [...agents];
147
+ }
148
+ /**
149
+ * Build maps of unique assets to their source plugin (first plugin that declares them).
150
+ * This ensures each skill/agent is copied only once during installation.
151
+ */
152
+ export function buildAssetMaps(plugins) {
153
+ const skillsMap = new Map();
154
+ const agentsMap = new Map();
155
+ for (const plugin of plugins) {
156
+ for (const skill of plugin.skills) {
157
+ if (!skillsMap.has(skill)) {
158
+ skillsMap.set(skill, plugin.name);
159
+ }
160
+ }
161
+ for (const agent of plugin.agents) {
162
+ if (!agentsMap.has(agent)) {
163
+ agentsMap.set(agent, plugin.name);
164
+ }
165
+ }
166
+ }
167
+ return { skillsMap, agentsMap };
168
+ }
169
+ //# sourceMappingURL=plugins.js.map
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Check if Claude CLI is available in the system PATH
3
+ */
4
+ export declare function isClaudeCliAvailable(): boolean;
5
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1,14 @@
1
+ import { execSync } from 'child_process';
2
+ /**
3
+ * Check if Claude CLI is available in the system PATH
4
+ */
5
+ export function isClaudeCliAvailable() {
6
+ try {
7
+ execSync('claude --version', { stdio: 'ignore' });
8
+ return true;
9
+ }
10
+ catch {
11
+ return false;
12
+ }
13
+ }
14
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1,41 @@
1
+ import type { PluginDefinition } from '../plugins.js';
2
+ /**
3
+ * Minimal spinner interface matching @clack/prompts spinner().
4
+ */
5
+ export interface Spinner {
6
+ start(msg?: string): void;
7
+ stop(msg?: string, code?: number): void;
8
+ message(msg?: string): void;
9
+ }
10
+ /**
11
+ * Recursively copy a directory tree.
12
+ */
13
+ export declare function copyDirectory(src: string, dest: string): Promise<void>;
14
+ /**
15
+ * Recursively chmod all files in a directory tree.
16
+ */
17
+ export declare function chmodRecursive(dir: string, mode: number): Promise<void>;
18
+ /**
19
+ * Install plugins via Claude CLI native plugin system.
20
+ * Returns true if all plugins installed successfully.
21
+ */
22
+ export declare function installViaCli(plugins: PluginDefinition[], scope: 'user' | 'local', spinner: Spinner): boolean;
23
+ export interface FileCopyOptions {
24
+ plugins: PluginDefinition[];
25
+ claudeDir: string;
26
+ pluginsDir: string;
27
+ rootDir: string;
28
+ devflowDir: string;
29
+ skillsMap: Map<string, string>;
30
+ agentsMap: Map<string, string>;
31
+ isPartialInstall: boolean;
32
+ teamsEnabled: boolean;
33
+ spinner: Spinner;
34
+ }
35
+ /**
36
+ * Install plugins via manual file copy.
37
+ * Handles cleanup of old monolithic structure, deduplication of shared assets,
38
+ * and script installation with executable permissions.
39
+ */
40
+ export declare function installViaFileCopy(options: FileCopyOptions): Promise<void>;
41
+ //# sourceMappingURL=installer.d.ts.map
@@ -0,0 +1,177 @@
1
+ import { promises as fs } from 'fs';
2
+ import * as path from 'path';
3
+ import { execSync } from 'child_process';
4
+ import { DEVFLOW_PLUGINS } from '../plugins.js';
5
+ /**
6
+ * Recursively copy a directory tree.
7
+ */
8
+ export async function copyDirectory(src, dest) {
9
+ await fs.mkdir(dest, { recursive: true });
10
+ const entries = await fs.readdir(src, { withFileTypes: true });
11
+ for (const entry of entries) {
12
+ const srcPath = path.join(src, entry.name);
13
+ const destPath = path.join(dest, entry.name);
14
+ if (entry.isDirectory()) {
15
+ await copyDirectory(srcPath, destPath);
16
+ }
17
+ else {
18
+ await fs.copyFile(srcPath, destPath);
19
+ }
20
+ }
21
+ }
22
+ /**
23
+ * Recursively chmod all files in a directory tree.
24
+ */
25
+ export async function chmodRecursive(dir, mode) {
26
+ const entries = await fs.readdir(dir, { withFileTypes: true });
27
+ for (const entry of entries) {
28
+ const fullPath = path.join(dir, entry.name);
29
+ if (entry.isDirectory()) {
30
+ await chmodRecursive(fullPath, mode);
31
+ }
32
+ else if (entry.isFile()) {
33
+ await fs.chmod(fullPath, mode);
34
+ }
35
+ }
36
+ }
37
+ /**
38
+ * Add DevFlow marketplace to Claude CLI.
39
+ * Idempotent — safe to call multiple times.
40
+ */
41
+ function addMarketplaceViaCli() {
42
+ try {
43
+ execSync('claude plugin marketplace add dean0x/devflow', { stdio: 'pipe' });
44
+ return true;
45
+ }
46
+ catch {
47
+ return false;
48
+ }
49
+ }
50
+ /**
51
+ * Install a single plugin via Claude CLI.
52
+ */
53
+ function installPluginViaCli(pluginName, scope) {
54
+ try {
55
+ const cliScope = scope === 'local' ? 'project' : 'user';
56
+ execSync(`claude plugin install ${pluginName}@dean0x-devflow --scope ${cliScope}`, {
57
+ stdio: 'pipe',
58
+ });
59
+ return true;
60
+ }
61
+ catch {
62
+ return false;
63
+ }
64
+ }
65
+ /**
66
+ * Install plugins via Claude CLI native plugin system.
67
+ * Returns true if all plugins installed successfully.
68
+ */
69
+ export function installViaCli(plugins, scope, spinner) {
70
+ spinner.message('Adding DevFlow marketplace...');
71
+ const marketplaceAdded = addMarketplaceViaCli();
72
+ if (!marketplaceAdded)
73
+ return false;
74
+ spinner.message('Installing plugins via Claude CLI...');
75
+ for (const plugin of plugins) {
76
+ if (!installPluginViaCli(plugin.name, scope))
77
+ return false;
78
+ }
79
+ spinner.stop('Plugins installed via Claude CLI');
80
+ return true;
81
+ }
82
+ /**
83
+ * Install plugins via manual file copy.
84
+ * Handles cleanup of old monolithic structure, deduplication of shared assets,
85
+ * and script installation with executable permissions.
86
+ */
87
+ export async function installViaFileCopy(options) {
88
+ const { plugins, claudeDir, pluginsDir, rootDir, devflowDir, skillsMap, agentsMap, isPartialInstall, teamsEnabled, spinner, } = options;
89
+ // Clean old DevFlow files before installing (only for full install)
90
+ if (!isPartialInstall) {
91
+ const oldDirs = [
92
+ path.join(claudeDir, 'commands', 'devflow'),
93
+ path.join(claudeDir, 'agents', 'devflow'),
94
+ ];
95
+ for (const dir of oldDirs) {
96
+ try {
97
+ await fs.rm(dir, { recursive: true, force: true });
98
+ }
99
+ catch { /* ignore */ }
100
+ }
101
+ const allSkills = new Set();
102
+ for (const plugin of DEVFLOW_PLUGINS) {
103
+ for (const skill of plugin.skills) {
104
+ allSkills.add(skill);
105
+ }
106
+ }
107
+ for (const skill of allSkills) {
108
+ try {
109
+ await fs.rm(path.join(claudeDir, 'skills', skill), { recursive: true, force: true });
110
+ }
111
+ catch { /* ignore */ }
112
+ }
113
+ }
114
+ // Install each selected plugin (with deduplication)
115
+ for (const plugin of plugins) {
116
+ const pluginSourceDir = path.join(pluginsDir, plugin.name);
117
+ // Install commands (variant-aware: pick -teams.md or base .md)
118
+ const commandsSource = path.join(pluginSourceDir, 'commands');
119
+ const commandsTarget = path.join(claudeDir, 'commands', 'devflow');
120
+ try {
121
+ const allFiles = await fs.readdir(commandsSource);
122
+ const mdFiles = allFiles.filter(f => f.endsWith('.md'));
123
+ const teamsVariants = new Set(mdFiles.filter(f => f.endsWith('-teams.md')));
124
+ const baseCommands = mdFiles.filter(f => !teamsVariants.has(f));
125
+ if (baseCommands.length > 0 || teamsVariants.size > 0) {
126
+ await fs.mkdir(commandsTarget, { recursive: true });
127
+ for (const file of baseCommands) {
128
+ const teamsFile = file.replace('.md', '-teams.md');
129
+ const sourceFile = (teamsEnabled && teamsVariants.has(teamsFile)) ? teamsFile : file;
130
+ await fs.copyFile(path.join(commandsSource, sourceFile), path.join(commandsTarget, file));
131
+ }
132
+ }
133
+ }
134
+ catch { /* no commands directory */ }
135
+ // Install agents (deduplicated)
136
+ const agentsSource = path.join(pluginSourceDir, 'agents');
137
+ const agentsTarget = path.join(claudeDir, 'agents', 'devflow');
138
+ try {
139
+ const files = await fs.readdir(agentsSource);
140
+ if (files.length > 0) {
141
+ await fs.mkdir(agentsTarget, { recursive: true });
142
+ for (const file of files) {
143
+ const agentName = path.basename(file, '.md');
144
+ if (agentsMap.get(agentName) === plugin.name) {
145
+ await fs.copyFile(path.join(agentsSource, file), path.join(agentsTarget, file));
146
+ }
147
+ }
148
+ }
149
+ }
150
+ catch { /* no agents directory */ }
151
+ // Install skills (deduplicated)
152
+ const skillsSource = path.join(pluginSourceDir, 'skills');
153
+ try {
154
+ const skillDirs = await fs.readdir(skillsSource, { withFileTypes: true });
155
+ for (const skillDir of skillDirs) {
156
+ if (skillDir.isDirectory()) {
157
+ if (skillsMap.get(skillDir.name) === plugin.name) {
158
+ const skillTarget = path.join(claudeDir, 'skills', skillDir.name);
159
+ await copyDirectory(path.join(skillsSource, skillDir.name), skillTarget);
160
+ }
161
+ }
162
+ }
163
+ }
164
+ catch { /* no skills directory */ }
165
+ }
166
+ // Install scripts (always from root scripts/ directory)
167
+ const scriptsSource = path.join(rootDir, 'scripts');
168
+ const scriptsTarget = path.join(devflowDir, 'scripts');
169
+ try {
170
+ await fs.mkdir(scriptsTarget, { recursive: true });
171
+ await copyDirectory(scriptsSource, scriptsTarget);
172
+ await chmodRecursive(scriptsTarget, 0o755);
173
+ }
174
+ catch { /* scripts may not exist */ }
175
+ spinner.stop('Components installed via file copy');
176
+ }
177
+ //# sourceMappingURL=installer.js.map
@@ -1,3 +1,12 @@
1
+ /**
2
+ * Get the OS-specific path for Claude Code managed settings.
3
+ * Managed settings have highest precedence and cannot be overridden by users.
4
+ * - macOS: /Library/Application Support/ClaudeCode/managed-settings.json
5
+ * - Linux: /etc/claude-code/managed-settings.json
6
+ *
7
+ * @throws {Error} On unsupported platforms (Windows)
8
+ */
9
+ export declare function getManagedSettingsPath(): string;
1
10
  /**
2
11
  * Get home directory with proper fallback and validation
3
12
  * Priority: process.env.HOME > os.homedir()
@@ -28,5 +37,6 @@ export declare function getDevFlowDirectory(): string;
28
37
  export declare function getInstallationPaths(scope: 'user' | 'local'): Promise<{
29
38
  claudeDir: string;
30
39
  devflowDir: string;
40
+ gitRoot: string | null;
31
41
  }>;
32
42
  //# sourceMappingURL=paths.d.ts.map
@@ -1,6 +1,24 @@
1
- import { homedir } from 'os';
1
+ import { homedir, platform } from 'os';
2
2
  import * as path from 'path';
3
3
  import { getGitRoot } from './git.js';
4
+ /**
5
+ * Get the OS-specific path for Claude Code managed settings.
6
+ * Managed settings have highest precedence and cannot be overridden by users.
7
+ * - macOS: /Library/Application Support/ClaudeCode/managed-settings.json
8
+ * - Linux: /etc/claude-code/managed-settings.json
9
+ *
10
+ * @throws {Error} On unsupported platforms (Windows)
11
+ */
12
+ export function getManagedSettingsPath() {
13
+ const os = platform();
14
+ if (os === 'darwin') {
15
+ return '/Library/Application Support/ClaudeCode/managed-settings.json';
16
+ }
17
+ if (os === 'linux') {
18
+ return '/etc/claude-code/managed-settings.json';
19
+ }
20
+ throw new Error(`Managed settings not supported on platform: ${os}`);
21
+ }
4
22
  /**
5
23
  * Get home directory with proper fallback and validation
6
24
  * Priority: process.env.HOME > os.homedir()
@@ -68,7 +86,8 @@ export async function getInstallationPaths(scope) {
68
86
  if (scope === 'user') {
69
87
  return {
70
88
  claudeDir: getClaudeDirectory(),
71
- devflowDir: getDevFlowDirectory()
89
+ devflowDir: getDevFlowDirectory(),
90
+ gitRoot: null,
72
91
  };
73
92
  }
74
93
  else {
@@ -79,7 +98,8 @@ export async function getInstallationPaths(scope) {
79
98
  }
80
99
  return {
81
100
  claudeDir: path.join(gitRoot, '.claude'),
82
- devflowDir: path.join(gitRoot, '.devflow')
101
+ devflowDir: path.join(gitRoot, '.devflow'),
102
+ gitRoot,
83
103
  };
84
104
  }
85
105
  }
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Replace ${DEVFLOW_DIR} placeholders in a settings template.
3
+ */
4
+ export declare function substituteSettingsTemplate(template: string, devflowDir: string): string;
5
+ /**
6
+ * Add Agent Teams configuration to settings JSON.
7
+ * Sets teammateMode and CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS env var.
8
+ */
9
+ export declare function applyTeamsConfig(settingsJson: string): string;
10
+ /**
11
+ * Remove Agent Teams configuration from settings JSON.
12
+ * Strips teammateMode and CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS env var.
13
+ */
14
+ export declare function stripTeamsConfig(settingsJson: string): string;
15
+ /**
16
+ * Compute which entries need appending to a .gitignore file.
17
+ * Returns only entries not already present.
18
+ */
19
+ export declare function computeGitignoreAppend(existingContent: string, entries: string[]): string[];
20
+ /**
21
+ * Merge DevFlow deny entries into an existing managed settings object.
22
+ * Preserves existing entries, deduplicates, and returns the merged JSON string.
23
+ */
24
+ export declare function mergeDenyList(existingJson: string, newDenyEntries: string[]): string;
25
+ /**
26
+ * Attempt to install managed settings (security deny list) to the system path.
27
+ * Managed settings have highest precedence in Claude Code and cannot be overridden.
28
+ *
29
+ * Strategy:
30
+ * 1. Try direct write (works if running as root or directory is writable)
31
+ * 2. If EACCES in TTY, offer to retry with sudo
32
+ * 3. Returns true if managed settings were written, false if caller should fall back
33
+ */
34
+ export declare function installManagedSettings(rootDir: string, verbose: boolean): Promise<boolean>;
35
+ /**
36
+ * Remove DevFlow deny entries from managed settings.
37
+ * If only DevFlow entries remain, deletes the file entirely.
38
+ *
39
+ * Mirrors installManagedSettings strategy:
40
+ * 1. Try direct write/delete
41
+ * 2. If EACCES and TTY, ask user before sudo
42
+ * 3. Non-TTY: return false (caller logs preservation message)
43
+ */
44
+ export declare function removeManagedSettings(rootDir: string, verbose: boolean): Promise<boolean>;
45
+ export type SecurityMode = 'managed' | 'user';
46
+ /**
47
+ * Install or update settings.json with DevFlow configuration.
48
+ * Prompts interactively in TTY mode when settings already exist.
49
+ * In non-TTY mode, skips override (safe default).
50
+ *
51
+ * When securityMode is 'managed', the deny list goes to system-level managed
52
+ * settings and is excluded from user settings.json. When 'user', the deny list
53
+ * is included in settings.json (original behavior).
54
+ */
55
+ export declare function installSettings(claudeDir: string, rootDir: string, devflowDir: string, verbose: boolean, teamsEnabled?: boolean, securityMode?: SecurityMode): Promise<void>;
56
+ /**
57
+ * Create .claudeignore in git repository root (skip if already exists).
58
+ */
59
+ export declare function installClaudeignore(gitRoot: string, rootDir: string, verbose: boolean): Promise<void>;
60
+ /**
61
+ * Update .gitignore with DevFlow entries (for local scope installs).
62
+ */
63
+ export declare function updateGitignore(gitRoot: string, verbose: boolean): Promise<void>;
64
+ /**
65
+ * Create .docs/ directory structure for DevFlow artifacts.
66
+ */
67
+ export declare function createDocsStructure(verbose: boolean): Promise<void>;
68
+ /**
69
+ * Create .memory/ directory for working memory files.
70
+ * Separate from .docs/ which is for reviews/releases.
71
+ */
72
+ export declare function createMemoryDir(verbose: boolean, cwd?: string): Promise<void>;
73
+ /**
74
+ * Migrate memory files from .docs/ to .memory/.
75
+ * One-time migration for existing users. Skips if destination exists (no clobber).
76
+ * Also cleans up ephemeral files from .docs/.
77
+ * Returns count of migrated files.
78
+ */
79
+ export declare function migrateMemoryFiles(verbose: boolean, cwd?: string): Promise<number>;
80
+ //# sourceMappingURL=post-install.d.ts.map