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,162 @@
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-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-audit-claude',
59
+ description: 'Audit CLAUDE.md files against Anthropic best practices',
60
+ commands: ['/audit-claude'],
61
+ agents: ['claude-md-auditor'],
62
+ skills: [],
63
+ optional: true,
64
+ },
65
+ ];
66
+ /**
67
+ * Deprecated command names from old installations.
68
+ * Used during init to clean up stale command files on upgrade.
69
+ */
70
+ export const LEGACY_COMMAND_NAMES = [
71
+ 'review',
72
+ ];
73
+ /**
74
+ * Deprecated skill names from old installations (prefixed with devflow-).
75
+ * Used during uninstall to clean up legacy installs.
76
+ */
77
+ export const LEGACY_SKILL_NAMES = [
78
+ 'devflow-core-patterns',
79
+ 'devflow-review-methodology',
80
+ 'devflow-docs-framework',
81
+ 'devflow-git-safety',
82
+ 'devflow-github-patterns',
83
+ 'devflow-implementation-patterns',
84
+ 'devflow-codebase-navigation',
85
+ 'devflow-test-design',
86
+ 'devflow-code-smell',
87
+ 'devflow-commit',
88
+ 'devflow-pull-request',
89
+ 'devflow-input-validation',
90
+ 'devflow-self-review',
91
+ 'devflow-typescript',
92
+ 'devflow-react',
93
+ 'devflow-architecture-patterns',
94
+ 'devflow-complexity-patterns',
95
+ 'devflow-consistency-patterns',
96
+ 'devflow-database-patterns',
97
+ 'devflow-dependencies-patterns',
98
+ 'devflow-documentation-patterns',
99
+ 'devflow-performance-patterns',
100
+ 'devflow-regression-patterns',
101
+ 'devflow-security-patterns',
102
+ 'devflow-tests-patterns',
103
+ 'devflow-pattern-check',
104
+ 'devflow-error-handling',
105
+ 'devflow-debug',
106
+ 'devflow-accessibility',
107
+ 'devflow-frontend-design',
108
+ 'devflow-agent-teams',
109
+ // v1.0.0 consolidation: old unprefixed names from pre-v1.0.0 installs
110
+ 'codebase-navigation',
111
+ 'test-design',
112
+ 'code-smell',
113
+ 'commit',
114
+ 'pull-request',
115
+ 'tests-patterns',
116
+ ];
117
+ /**
118
+ * Derive unique skill names from all plugins.
119
+ */
120
+ export function getAllSkillNames() {
121
+ const skills = new Set();
122
+ for (const plugin of DEVFLOW_PLUGINS) {
123
+ for (const skill of plugin.skills) {
124
+ skills.add(skill);
125
+ }
126
+ }
127
+ return [...skills];
128
+ }
129
+ /**
130
+ * Derive unique agent names from all plugins.
131
+ */
132
+ export function getAllAgentNames() {
133
+ const agents = new Set();
134
+ for (const plugin of DEVFLOW_PLUGINS) {
135
+ for (const agent of plugin.agents) {
136
+ agents.add(agent);
137
+ }
138
+ }
139
+ return [...agents];
140
+ }
141
+ /**
142
+ * Build maps of unique assets to their source plugin (first plugin that declares them).
143
+ * This ensures each skill/agent is copied only once during installation.
144
+ */
145
+ export function buildAssetMaps(plugins) {
146
+ const skillsMap = new Map();
147
+ const agentsMap = new Map();
148
+ for (const plugin of plugins) {
149
+ for (const skill of plugin.skills) {
150
+ if (!skillsMap.has(skill)) {
151
+ skillsMap.set(skill, plugin.name);
152
+ }
153
+ }
154
+ for (const agent of plugin.agents) {
155
+ if (!agentsMap.has(agent)) {
156
+ agentsMap.set(agent, plugin.name);
157
+ }
158
+ }
159
+ }
160
+ return { skillsMap, agentsMap };
161
+ }
162
+ //# 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,68 @@
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
+ //# sourceMappingURL=post-install.d.ts.map