kirograph 0.17.0 → 0.20.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 (815) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +105 -1822
  3. package/dist/architecture/layers/dart.d.ts +10 -0
  4. package/dist/architecture/layers/dart.d.ts.map +1 -0
  5. package/dist/architecture/layers/dart.js +112 -0
  6. package/dist/architecture/layers/dart.js.map +7 -0
  7. package/dist/architecture/layers/elixir.d.ts +6 -0
  8. package/dist/architecture/layers/elixir.d.ts.map +1 -0
  9. package/dist/architecture/layers/index.d.ts.map +1 -1
  10. package/dist/architecture/layers/index.js +3 -1
  11. package/dist/architecture/layers/index.js.map +2 -2
  12. package/dist/architecture/layers/ocaml.d.ts +6 -0
  13. package/dist/architecture/layers/ocaml.d.ts.map +1 -0
  14. package/dist/architecture/layers/scala.d.ts +6 -0
  15. package/dist/architecture/layers/scala.d.ts.map +1 -0
  16. package/dist/architecture/layers/solidity.d.ts +6 -0
  17. package/dist/architecture/layers/solidity.d.ts.map +1 -0
  18. package/dist/architecture/layers/vue.d.ts +6 -0
  19. package/dist/architecture/layers/vue.d.ts.map +1 -0
  20. package/dist/architecture/manifest/elm.d.ts +3 -0
  21. package/dist/architecture/manifest/elm.d.ts.map +1 -0
  22. package/dist/architecture/manifest/index.d.ts.map +1 -1
  23. package/dist/architecture/manifest/ocaml.d.ts +3 -0
  24. package/dist/architecture/manifest/ocaml.d.ts.map +1 -0
  25. package/dist/architecture/manifest/scala.d.ts +3 -0
  26. package/dist/architecture/manifest/scala.d.ts.map +1 -0
  27. package/dist/bin/banner.d.ts.map +1 -1
  28. package/dist/bin/banner.js +74 -6
  29. package/dist/bin/banner.js.map +2 -2
  30. package/dist/bin/commands/affected.d.ts.map +1 -1
  31. package/dist/bin/commands/attack-surface.d.ts +3 -0
  32. package/dist/bin/commands/attack-surface.d.ts.map +1 -0
  33. package/dist/bin/commands/attack-surface.js +164 -0
  34. package/dist/bin/commands/attack-surface.js.map +7 -0
  35. package/dist/bin/commands/benchmark.d.ts +9 -0
  36. package/dist/bin/commands/benchmark.d.ts.map +1 -0
  37. package/dist/bin/commands/benchmark.js +206 -0
  38. package/dist/bin/commands/benchmark.js.map +7 -0
  39. package/dist/bin/commands/budget.d.ts +6 -0
  40. package/dist/bin/commands/budget.d.ts.map +1 -0
  41. package/dist/bin/commands/budget.js +70 -0
  42. package/dist/bin/commands/budget.js.map +7 -0
  43. package/dist/bin/commands/caveman.d.ts +7 -0
  44. package/dist/bin/commands/caveman.d.ts.map +1 -0
  45. package/dist/bin/commands/communities.d.ts +3 -0
  46. package/dist/bin/commands/communities.d.ts.map +1 -0
  47. package/dist/bin/commands/communities.js +77 -0
  48. package/dist/bin/commands/communities.js.map +7 -0
  49. package/dist/bin/commands/compression.d.ts +7 -0
  50. package/dist/bin/commands/compression.d.ts.map +1 -0
  51. package/dist/bin/commands/context.d.ts.map +1 -1
  52. package/dist/bin/commands/data.d.ts +3 -0
  53. package/dist/bin/commands/data.d.ts.map +1 -0
  54. package/dist/bin/commands/dead-code.d.ts +3 -0
  55. package/dist/bin/commands/dead-code.d.ts.map +1 -0
  56. package/dist/bin/commands/dep-confusion.d.ts +3 -0
  57. package/dist/bin/commands/dep-confusion.d.ts.map +1 -0
  58. package/dist/bin/commands/dep-confusion.js +119 -0
  59. package/dist/bin/commands/dep-confusion.js.map +7 -0
  60. package/dist/bin/commands/docs.d.ts +3 -0
  61. package/dist/bin/commands/docs.d.ts.map +1 -0
  62. package/dist/bin/commands/exec.d.ts +11 -0
  63. package/dist/bin/commands/exec.d.ts.map +1 -0
  64. package/dist/bin/commands/export.d.ts +3 -0
  65. package/dist/bin/commands/export.d.ts.map +1 -0
  66. package/dist/bin/commands/export.js +304 -10
  67. package/dist/bin/commands/export.js.map +2 -2
  68. package/dist/bin/commands/flows.d.ts +3 -0
  69. package/dist/bin/commands/flows.d.ts.map +1 -0
  70. package/dist/bin/commands/flows.js +97 -0
  71. package/dist/bin/commands/flows.js.map +7 -0
  72. package/dist/bin/commands/gain.d.ts +6 -0
  73. package/dist/bin/commands/gain.d.ts.map +1 -0
  74. package/dist/bin/commands/help.d.ts +7 -0
  75. package/dist/bin/commands/help.d.ts.map +1 -1
  76. package/dist/bin/commands/help.js +399 -101
  77. package/dist/bin/commands/help.js.map +2 -2
  78. package/dist/bin/commands/hotspots.d.ts +3 -0
  79. package/dist/bin/commands/hotspots.d.ts.map +1 -0
  80. package/dist/bin/commands/hotspots.js +94 -1
  81. package/dist/bin/commands/hotspots.js.map +3 -3
  82. package/dist/bin/commands/install.d.ts.map +1 -1
  83. package/dist/bin/commands/install.js +90 -8
  84. package/dist/bin/commands/install.js.map +2 -2
  85. package/dist/bin/commands/licenses.d.ts +3 -0
  86. package/dist/bin/commands/licenses.d.ts.map +1 -0
  87. package/dist/bin/commands/licenses.js +201 -0
  88. package/dist/bin/commands/licenses.js.map +7 -0
  89. package/dist/bin/commands/memory.d.ts +16 -0
  90. package/dist/bin/commands/memory.d.ts.map +1 -0
  91. package/dist/bin/commands/memory.js +151 -4
  92. package/dist/bin/commands/memory.js.map +2 -2
  93. package/dist/bin/commands/path.d.ts +3 -0
  94. package/dist/bin/commands/path.d.ts.map +1 -0
  95. package/dist/bin/commands/pattern.d.ts +3 -0
  96. package/dist/bin/commands/pattern.d.ts.map +1 -0
  97. package/dist/bin/commands/pattern.js +592 -0
  98. package/dist/bin/commands/pattern.js.map +7 -0
  99. package/dist/bin/commands/query.d.ts.map +1 -1
  100. package/dist/bin/commands/reachability.d.ts +3 -0
  101. package/dist/bin/commands/reachability.d.ts.map +1 -0
  102. package/dist/bin/commands/reachability.js +160 -0
  103. package/dist/bin/commands/reachability.js.map +7 -0
  104. package/dist/bin/commands/read.d.ts +6 -0
  105. package/dist/bin/commands/read.d.ts.map +1 -0
  106. package/dist/bin/commands/read.js +100 -0
  107. package/dist/bin/commands/read.js.map +7 -0
  108. package/dist/bin/commands/refactor.d.ts +3 -0
  109. package/dist/bin/commands/refactor.d.ts.map +1 -0
  110. package/dist/bin/commands/refactor.js +116 -0
  111. package/dist/bin/commands/refactor.js.map +7 -0
  112. package/dist/bin/commands/remediation.d.ts +3 -0
  113. package/dist/bin/commands/remediation.d.ts.map +1 -0
  114. package/dist/bin/commands/remediation.js +133 -0
  115. package/dist/bin/commands/remediation.js.map +7 -0
  116. package/dist/bin/commands/sbom.d.ts +3 -0
  117. package/dist/bin/commands/sbom.d.ts.map +1 -0
  118. package/dist/bin/commands/sbom.js +76 -0
  119. package/dist/bin/commands/sbom.js.map +7 -0
  120. package/dist/bin/commands/security-ci-report.d.ts +9 -0
  121. package/dist/bin/commands/security-ci-report.d.ts.map +1 -0
  122. package/dist/bin/commands/security-ci-report.js +267 -0
  123. package/dist/bin/commands/security-ci-report.js.map +7 -0
  124. package/dist/bin/commands/security-export.d.ts +2 -0
  125. package/dist/bin/commands/security-export.d.ts.map +1 -0
  126. package/dist/bin/commands/security-export.js +1349 -0
  127. package/dist/bin/commands/security-export.js.map +7 -0
  128. package/dist/bin/commands/security-flows.d.ts +3 -0
  129. package/dist/bin/commands/security-flows.d.ts.map +1 -0
  130. package/dist/bin/commands/security-flows.js +126 -0
  131. package/dist/bin/commands/security-flows.js.map +7 -0
  132. package/dist/bin/commands/security-secrets.d.ts +3 -0
  133. package/dist/bin/commands/security-secrets.d.ts.map +1 -0
  134. package/dist/bin/commands/security-secrets.js +170 -0
  135. package/dist/bin/commands/security-secrets.js.map +7 -0
  136. package/dist/bin/commands/security.d.ts +3 -0
  137. package/dist/bin/commands/security.d.ts.map +1 -0
  138. package/dist/bin/commands/security.js +208 -0
  139. package/dist/bin/commands/security.js.map +7 -0
  140. package/dist/bin/commands/snapshot.d.ts +3 -0
  141. package/dist/bin/commands/snapshot.d.ts.map +1 -0
  142. package/dist/bin/commands/staleness.d.ts +3 -0
  143. package/dist/bin/commands/staleness.d.ts.map +1 -0
  144. package/dist/bin/commands/staleness.js +144 -0
  145. package/dist/bin/commands/staleness.js.map +7 -0
  146. package/dist/bin/commands/status.d.ts.map +1 -1
  147. package/dist/bin/commands/status.js +129 -2
  148. package/dist/bin/commands/status.js.map +2 -2
  149. package/dist/bin/commands/supply-chain.d.ts +3 -0
  150. package/dist/bin/commands/supply-chain.d.ts.map +1 -0
  151. package/dist/bin/commands/supply-chain.js +138 -0
  152. package/dist/bin/commands/supply-chain.js.map +7 -0
  153. package/dist/bin/commands/surprising.d.ts +3 -0
  154. package/dist/bin/commands/surprising.d.ts.map +1 -0
  155. package/dist/bin/commands/sync.d.ts.map +1 -1
  156. package/dist/bin/commands/uninit.d.ts.map +1 -1
  157. package/dist/bin/commands/uninit.js +109 -60
  158. package/dist/bin/commands/uninit.js.map +2 -2
  159. package/dist/bin/commands/utils.d.ts +5 -0
  160. package/dist/bin/commands/utils.d.ts.map +1 -1
  161. package/dist/bin/commands/vex.d.ts +3 -0
  162. package/dist/bin/commands/vex.d.ts.map +1 -0
  163. package/dist/bin/commands/vex.js +76 -0
  164. package/dist/bin/commands/vex.js.map +7 -0
  165. package/dist/bin/commands/vuln-suppress.d.ts +3 -0
  166. package/dist/bin/commands/vuln-suppress.d.ts.map +1 -0
  167. package/dist/bin/commands/vuln-suppress.js +95 -0
  168. package/dist/bin/commands/vuln-suppress.js.map +7 -0
  169. package/dist/bin/commands/vulns.d.ts +3 -0
  170. package/dist/bin/commands/vulns.d.ts.map +1 -0
  171. package/dist/bin/commands/vulns.js +382 -0
  172. package/dist/bin/commands/vulns.js.map +7 -0
  173. package/dist/bin/installer/archive.d.ts +47 -0
  174. package/dist/bin/installer/archive.d.ts.map +1 -0
  175. package/dist/bin/installer/auto-detect.d.ts +16 -0
  176. package/dist/bin/installer/auto-detect.d.ts.map +1 -0
  177. package/dist/bin/installer/auto-detect.js +125 -0
  178. package/dist/bin/installer/auto-detect.js.map +7 -0
  179. package/dist/bin/installer/caveman.d.ts +12 -0
  180. package/dist/bin/installer/caveman.d.ts.map +1 -0
  181. package/dist/bin/installer/cli-agent.d.ts +7 -2
  182. package/dist/bin/installer/cli-agent.d.ts.map +1 -1
  183. package/dist/bin/installer/cli-agent.js +32 -5
  184. package/dist/bin/installer/cli-agent.js.map +2 -2
  185. package/dist/bin/installer/common.d.ts +36 -0
  186. package/dist/bin/installer/common.d.ts.map +1 -0
  187. package/dist/bin/installer/common.js +48 -0
  188. package/dist/bin/installer/common.js.map +2 -2
  189. package/dist/bin/installer/config-prompt.d.ts +1 -1
  190. package/dist/bin/installer/config-prompt.d.ts.map +1 -1
  191. package/dist/bin/installer/config-prompt.js +85 -2
  192. package/dist/bin/installer/config-prompt.js.map +2 -2
  193. package/dist/bin/installer/dashboard.d.ts.map +1 -1
  194. package/dist/bin/installer/detect.d.ts +30 -0
  195. package/dist/bin/installer/detect.d.ts.map +1 -0
  196. package/dist/bin/installer/detect.js +309 -0
  197. package/dist/bin/installer/detect.js.map +7 -0
  198. package/dist/bin/installer/hooks.d.ts +4 -1
  199. package/dist/bin/installer/hooks.d.ts.map +1 -1
  200. package/dist/bin/installer/hooks.js +34 -0
  201. package/dist/bin/installer/hooks.js.map +2 -2
  202. package/dist/bin/installer/index.d.ts +5 -4
  203. package/dist/bin/installer/index.d.ts.map +1 -1
  204. package/dist/bin/installer/index.js +46 -8
  205. package/dist/bin/installer/index.js.map +2 -2
  206. package/dist/bin/installer/instructions.d.ts +14 -0
  207. package/dist/bin/installer/instructions.d.ts.map +1 -0
  208. package/dist/bin/installer/instructions.js +209 -3
  209. package/dist/bin/installer/instructions.js.map +2 -2
  210. package/dist/bin/installer/mcp.d.ts.map +1 -1
  211. package/dist/bin/installer/prompts.d.ts +17 -0
  212. package/dist/bin/installer/prompts.d.ts.map +1 -1
  213. package/dist/bin/installer/qdrant-dashboard.d.ts.map +1 -1
  214. package/dist/bin/installer/steering.d.ts +14 -2
  215. package/dist/bin/installer/steering.d.ts.map +1 -1
  216. package/dist/bin/installer/steering.js +488 -0
  217. package/dist/bin/installer/steering.js.map +2 -2
  218. package/dist/bin/installer/targets/aider.d.ts +6 -0
  219. package/dist/bin/installer/targets/aider.d.ts.map +1 -0
  220. package/dist/bin/installer/targets/aider.js +3 -3
  221. package/dist/bin/installer/targets/aider.js.map +2 -2
  222. package/dist/bin/installer/targets/amp.d.ts +6 -0
  223. package/dist/bin/installer/targets/amp.d.ts.map +1 -0
  224. package/dist/bin/installer/targets/amp.js +3 -3
  225. package/dist/bin/installer/targets/amp.js.map +2 -2
  226. package/dist/bin/installer/targets/antigravity.d.ts +13 -0
  227. package/dist/bin/installer/targets/antigravity.d.ts.map +1 -0
  228. package/dist/bin/installer/targets/antigravity.js +35 -6
  229. package/dist/bin/installer/targets/antigravity.js.map +2 -2
  230. package/dist/bin/installer/targets/augment.d.ts +6 -0
  231. package/dist/bin/installer/targets/augment.d.ts.map +1 -0
  232. package/dist/bin/installer/targets/augment.js +3 -3
  233. package/dist/bin/installer/targets/augment.js.map +2 -2
  234. package/dist/bin/installer/targets/claude.d.ts +6 -0
  235. package/dist/bin/installer/targets/claude.d.ts.map +1 -0
  236. package/dist/bin/installer/targets/claude.js +49 -5
  237. package/dist/bin/installer/targets/claude.js.map +2 -2
  238. package/dist/bin/installer/targets/cline.d.ts +13 -0
  239. package/dist/bin/installer/targets/cline.d.ts.map +1 -0
  240. package/dist/bin/installer/targets/cline.js +32 -6
  241. package/dist/bin/installer/targets/cline.js.map +2 -2
  242. package/dist/bin/installer/targets/codex.d.ts +6 -0
  243. package/dist/bin/installer/targets/codex.d.ts.map +1 -0
  244. package/dist/bin/installer/targets/codex.js +64 -12
  245. package/dist/bin/installer/targets/codex.js.map +2 -2
  246. package/dist/bin/installer/targets/continue.d.ts +12 -0
  247. package/dist/bin/installer/targets/continue.d.ts.map +1 -0
  248. package/dist/bin/installer/targets/continue.js +2 -2
  249. package/dist/bin/installer/targets/continue.js.map +2 -2
  250. package/dist/bin/installer/targets/copilot-cli.d.ts +12 -0
  251. package/dist/bin/installer/targets/copilot-cli.d.ts.map +1 -0
  252. package/dist/bin/installer/targets/copilot-cli.js +101 -0
  253. package/dist/bin/installer/targets/copilot-cli.js.map +7 -0
  254. package/dist/bin/installer/targets/copilot.d.ts +6 -0
  255. package/dist/bin/installer/targets/copilot.d.ts.map +1 -0
  256. package/dist/bin/installer/targets/copilot.js +31 -5
  257. package/dist/bin/installer/targets/copilot.js.map +2 -2
  258. package/dist/bin/installer/targets/cursor.d.ts +6 -0
  259. package/dist/bin/installer/targets/cursor.d.ts.map +1 -0
  260. package/dist/bin/installer/targets/cursor.js +4 -4
  261. package/dist/bin/installer/targets/cursor.js.map +2 -2
  262. package/dist/bin/installer/targets/devin.d.ts +13 -0
  263. package/dist/bin/installer/targets/devin.d.ts.map +1 -0
  264. package/dist/bin/installer/targets/devin.js +2 -2
  265. package/dist/bin/installer/targets/devin.js.map +2 -2
  266. package/dist/bin/installer/targets/gemini-cli.d.ts +16 -0
  267. package/dist/bin/installer/targets/gemini-cli.d.ts.map +1 -0
  268. package/dist/bin/installer/targets/gemini-cli.js +2 -2
  269. package/dist/bin/installer/targets/gemini-cli.js.map +2 -2
  270. package/dist/bin/installer/targets/generic.d.ts +59 -0
  271. package/dist/bin/installer/targets/generic.d.ts.map +1 -0
  272. package/dist/bin/installer/targets/generic.js +2 -14
  273. package/dist/bin/installer/targets/generic.js.map +2 -2
  274. package/dist/bin/installer/targets/goose.d.ts +6 -0
  275. package/dist/bin/installer/targets/goose.d.ts.map +1 -0
  276. package/dist/bin/installer/targets/goose.js +3 -3
  277. package/dist/bin/installer/targets/goose.js.map +2 -2
  278. package/dist/bin/installer/targets/index.d.ts +11 -0
  279. package/dist/bin/installer/targets/index.d.ts.map +1 -0
  280. package/dist/bin/installer/targets/index.js +250 -0
  281. package/dist/bin/installer/targets/index.js.map +2 -2
  282. package/dist/bin/installer/targets/junie.d.ts +13 -0
  283. package/dist/bin/installer/targets/junie.d.ts.map +1 -0
  284. package/dist/bin/installer/targets/junie.js +2 -2
  285. package/dist/bin/installer/targets/junie.js.map +2 -2
  286. package/dist/bin/installer/targets/kilo.d.ts +12 -0
  287. package/dist/bin/installer/targets/kilo.d.ts.map +1 -0
  288. package/dist/bin/installer/targets/kilo.js +2 -2
  289. package/dist/bin/installer/targets/kilo.js.map +2 -2
  290. package/dist/bin/installer/targets/kiro.d.ts +5 -0
  291. package/dist/bin/installer/targets/kiro.d.ts.map +1 -0
  292. package/dist/bin/installer/targets/kiro.js +4 -4
  293. package/dist/bin/installer/targets/kiro.js.map +2 -2
  294. package/dist/bin/installer/targets/opencode.d.ts +13 -0
  295. package/dist/bin/installer/targets/opencode.d.ts.map +1 -0
  296. package/dist/bin/installer/targets/opencode.js +2 -2
  297. package/dist/bin/installer/targets/opencode.js.map +2 -2
  298. package/dist/bin/installer/targets/openhands.d.ts +6 -0
  299. package/dist/bin/installer/targets/openhands.d.ts.map +1 -0
  300. package/dist/bin/installer/targets/openhands.js +3 -3
  301. package/dist/bin/installer/targets/openhands.js.map +2 -2
  302. package/dist/bin/installer/targets/qoder.d.ts +12 -0
  303. package/dist/bin/installer/targets/qoder.d.ts.map +1 -0
  304. package/dist/bin/installer/targets/qoder.js +91 -0
  305. package/dist/bin/installer/targets/qoder.js.map +7 -0
  306. package/dist/bin/installer/targets/qwen.d.ts +12 -0
  307. package/dist/bin/installer/targets/qwen.d.ts.map +1 -0
  308. package/dist/bin/installer/targets/qwen.js +96 -0
  309. package/dist/bin/installer/targets/qwen.js.map +7 -0
  310. package/dist/bin/installer/targets/replit.d.ts +6 -0
  311. package/dist/bin/installer/targets/replit.d.ts.map +1 -0
  312. package/dist/bin/installer/targets/replit.js +3 -3
  313. package/dist/bin/installer/targets/replit.js.map +2 -2
  314. package/dist/bin/installer/targets/roo.d.ts +13 -0
  315. package/dist/bin/installer/targets/roo.d.ts.map +1 -0
  316. package/dist/bin/installer/targets/roo.js +2 -2
  317. package/dist/bin/installer/targets/roo.js.map +2 -2
  318. package/dist/bin/installer/targets/tabnine.d.ts +6 -0
  319. package/dist/bin/installer/targets/tabnine.d.ts.map +1 -0
  320. package/dist/bin/installer/targets/tabnine.js +3 -3
  321. package/dist/bin/installer/targets/tabnine.js.map +2 -2
  322. package/dist/bin/installer/targets/trae.d.ts +6 -0
  323. package/dist/bin/installer/targets/trae.d.ts.map +1 -0
  324. package/dist/bin/installer/targets/trae.js +5 -5
  325. package/dist/bin/installer/targets/trae.js.map +2 -2
  326. package/dist/bin/installer/targets/warp.d.ts +12 -0
  327. package/dist/bin/installer/targets/warp.d.ts.map +1 -0
  328. package/dist/bin/installer/targets/warp.js +2 -2
  329. package/dist/bin/installer/targets/warp.js.map +2 -2
  330. package/dist/bin/installer/targets/windsurf.d.ts +13 -0
  331. package/dist/bin/installer/targets/windsurf.d.ts.map +1 -0
  332. package/dist/bin/installer/targets/windsurf.js +35 -6
  333. package/dist/bin/installer/targets/windsurf.js.map +2 -2
  334. package/dist/bin/kirograph.js +74 -6
  335. package/dist/bin/kirograph.js.map +3 -3
  336. package/dist/bin/progress.d.ts +16 -1
  337. package/dist/bin/progress.d.ts.map +1 -1
  338. package/dist/compression/filters/aws.d.ts +9 -0
  339. package/dist/compression/filters/aws.d.ts.map +1 -0
  340. package/dist/compression/filters/docker.d.ts +6 -0
  341. package/dist/compression/filters/docker.d.ts.map +1 -0
  342. package/dist/compression/filters/files.d.ts +6 -0
  343. package/dist/compression/filters/files.d.ts.map +1 -0
  344. package/dist/compression/filters/generic.d.ts +7 -0
  345. package/dist/compression/filters/generic.d.ts.map +1 -0
  346. package/dist/compression/filters/git.d.ts +6 -0
  347. package/dist/compression/filters/git.d.ts.map +1 -0
  348. package/dist/compression/filters/github.d.ts +6 -0
  349. package/dist/compression/filters/github.d.ts.map +1 -0
  350. package/dist/compression/filters/lint.d.ts +6 -0
  351. package/dist/compression/filters/lint.d.ts.map +1 -0
  352. package/dist/compression/filters/misc.d.ts +6 -0
  353. package/dist/compression/filters/misc.d.ts.map +1 -0
  354. package/dist/compression/filters/package.d.ts +6 -0
  355. package/dist/compression/filters/package.d.ts.map +1 -0
  356. package/dist/compression/filters/test.d.ts +6 -0
  357. package/dist/compression/filters/test.d.ts.map +1 -0
  358. package/dist/compression/index.d.ts +29 -0
  359. package/dist/compression/index.d.ts.map +1 -0
  360. package/dist/compression/naive-cost.d.ts +26 -0
  361. package/dist/compression/naive-cost.d.ts.map +1 -0
  362. package/dist/compression/tracker.d.ts +155 -0
  363. package/dist/compression/tracker.d.ts.map +1 -0
  364. package/dist/compression/tracker.js +80 -0
  365. package/dist/compression/tracker.js.map +2 -2
  366. package/dist/compression/types.d.ts +49 -0
  367. package/dist/compression/types.d.ts.map +1 -0
  368. package/dist/config.d.ts +90 -0
  369. package/dist/config.d.ts.map +1 -1
  370. package/dist/config.js +144 -3
  371. package/dist/config.js.map +2 -2
  372. package/dist/core/lock-manager.d.ts +2 -0
  373. package/dist/core/lock-manager.d.ts.map +1 -1
  374. package/dist/core/pipeline.d.ts +4 -1
  375. package/dist/core/pipeline.d.ts.map +1 -1
  376. package/dist/core/pipeline.js +78 -2
  377. package/dist/core/pipeline.js.map +2 -2
  378. package/dist/core/snapshot.d.ts +58 -0
  379. package/dist/core/snapshot.d.ts.map +1 -0
  380. package/dist/data/filters.d.ts +23 -0
  381. package/dist/data/filters.d.ts.map +1 -0
  382. package/dist/data/indexer.d.ts +25 -0
  383. package/dist/data/indexer.d.ts.map +1 -0
  384. package/dist/data/linker.d.ts +37 -0
  385. package/dist/data/linker.d.ts.map +1 -0
  386. package/dist/data/lint.d.ts +27 -0
  387. package/dist/data/lint.d.ts.map +1 -0
  388. package/dist/data/parsers/csv.d.ts +11 -0
  389. package/dist/data/parsers/csv.d.ts.map +1 -0
  390. package/dist/data/parsers/excel.d.ts +10 -0
  391. package/dist/data/parsers/excel.d.ts.map +1 -0
  392. package/dist/data/parsers/index.d.ts +28 -0
  393. package/dist/data/parsers/index.d.ts.map +1 -0
  394. package/dist/data/parsers/json-array.d.ts +9 -0
  395. package/dist/data/parsers/json-array.d.ts.map +1 -0
  396. package/dist/data/parsers/jsonl.d.ts +9 -0
  397. package/dist/data/parsers/jsonl.d.ts.map +1 -0
  398. package/dist/data/parsers/parquet.d.ts +10 -0
  399. package/dist/data/parsers/parquet.d.ts.map +1 -0
  400. package/dist/data/profiler.d.ts +29 -0
  401. package/dist/data/profiler.d.ts.map +1 -0
  402. package/dist/data/queries.d.ts +95 -0
  403. package/dist/data/queries.d.ts.map +1 -0
  404. package/dist/data/types.d.ts +103 -0
  405. package/dist/data/types.d.ts.map +1 -0
  406. package/dist/db/database.d.ts +57 -0
  407. package/dist/db/database.d.ts.map +1 -1
  408. package/dist/db/database.js +75 -5
  409. package/dist/db/database.js.map +2 -2
  410. package/dist/db/memory-schema.sql +5 -1
  411. package/dist/db/patterns-schema.sql +23 -0
  412. package/dist/db/schema.sql +3 -1
  413. package/dist/db/security-schema.sql +72 -0
  414. package/dist/docs/formats/asciidoc.d.ts +9 -0
  415. package/dist/docs/formats/asciidoc.d.ts.map +1 -0
  416. package/dist/docs/formats/html.d.ts +10 -0
  417. package/dist/docs/formats/html.d.ts.map +1 -0
  418. package/dist/docs/formats/index.d.ts +31 -0
  419. package/dist/docs/formats/index.d.ts.map +1 -0
  420. package/dist/docs/formats/markdown.d.ts +11 -0
  421. package/dist/docs/formats/markdown.d.ts.map +1 -0
  422. package/dist/docs/formats/openapi.d.ts +17 -0
  423. package/dist/docs/formats/openapi.d.ts.map +1 -0
  424. package/dist/docs/formats/org.d.ts +9 -0
  425. package/dist/docs/formats/org.d.ts.map +1 -0
  426. package/dist/docs/formats/plaintext.d.ts +11 -0
  427. package/dist/docs/formats/plaintext.d.ts.map +1 -0
  428. package/dist/docs/formats/rdoc.d.ts +10 -0
  429. package/dist/docs/formats/rdoc.d.ts.map +1 -0
  430. package/dist/docs/formats/rst.d.ts +11 -0
  431. package/dist/docs/formats/rst.d.ts.map +1 -0
  432. package/dist/docs/indexer.d.ts +49 -0
  433. package/dist/docs/indexer.d.ts.map +1 -0
  434. package/dist/docs/linker.d.ts +30 -0
  435. package/dist/docs/linker.d.ts.map +1 -0
  436. package/dist/docs/lint.d.ts +27 -0
  437. package/dist/docs/lint.d.ts.map +1 -0
  438. package/dist/docs/queries.d.ts +78 -0
  439. package/dist/docs/queries.d.ts.map +1 -0
  440. package/dist/docs/section-id.d.ts +48 -0
  441. package/dist/docs/section-id.d.ts.map +1 -0
  442. package/dist/docs/summarizer.d.ts +13 -0
  443. package/dist/docs/summarizer.d.ts.map +1 -0
  444. package/dist/docs/types.d.ts +71 -0
  445. package/dist/docs/types.d.ts.map +1 -0
  446. package/dist/docs/vectors.d.ts +54 -0
  447. package/dist/docs/vectors.d.ts.map +1 -0
  448. package/dist/extraction/extractor.d.ts +1 -1
  449. package/dist/extraction/extractor.d.ts.map +1 -1
  450. package/dist/extraction/extractor.js +81 -0
  451. package/dist/extraction/extractor.js.map +2 -2
  452. package/dist/extraction/grammars.d.ts +6 -0
  453. package/dist/extraction/grammars.d.ts.map +1 -1
  454. package/dist/extraction/grammars.js +32 -8
  455. package/dist/extraction/grammars.js.map +2 -2
  456. package/dist/extraction/languages.d.ts.map +1 -1
  457. package/dist/extraction/languages.js +43 -1
  458. package/dist/extraction/languages.js.map +2 -2
  459. package/dist/extraction/notebook.d.ts +14 -0
  460. package/dist/extraction/notebook.d.ts.map +1 -0
  461. package/dist/extraction/notebook.js +300 -0
  462. package/dist/extraction/notebook.js.map +7 -0
  463. package/dist/extraction/wasm/tree-sitter-astro.wasm +0 -0
  464. package/dist/extraction/wasm/tree-sitter-gdscript.wasm +0 -0
  465. package/dist/extraction/wasm/tree-sitter-julia.wasm +0 -0
  466. package/dist/extraction/wasm/tree-sitter-nix.wasm +0 -0
  467. package/dist/extraction/wasm/tree-sitter-perl.wasm +0 -0
  468. package/dist/extraction/wasm/tree-sitter-powershell.wasm +0 -0
  469. package/dist/extraction/wasm/tree-sitter-r.wasm +0 -0
  470. package/dist/extraction/wasm/tree-sitter-sql.wasm +0 -0
  471. package/dist/extraction/wasm/tree-sitter-verilog.wasm +0 -0
  472. package/dist/frameworks/amplify.d.ts +9 -0
  473. package/dist/frameworks/amplify.d.ts.map +1 -0
  474. package/dist/frameworks/angular.d.ts +9 -0
  475. package/dist/frameworks/angular.d.ts.map +1 -0
  476. package/dist/frameworks/ansible.d.ts +8 -0
  477. package/dist/frameworks/ansible.d.ts.map +1 -0
  478. package/dist/frameworks/cloudformation.d.ts +9 -0
  479. package/dist/frameworks/cloudformation.d.ts.map +1 -0
  480. package/dist/frameworks/docker.d.ts +9 -0
  481. package/dist/frameworks/docker.d.ts.map +1 -0
  482. package/dist/frameworks/elixir.d.ts +6 -0
  483. package/dist/frameworks/elixir.d.ts.map +1 -0
  484. package/dist/frameworks/flutter.d.ts +12 -0
  485. package/dist/frameworks/flutter.d.ts.map +1 -0
  486. package/dist/frameworks/flutter.js +130 -0
  487. package/dist/frameworks/flutter.js.map +7 -0
  488. package/dist/frameworks/iac.d.ts +10 -0
  489. package/dist/frameworks/iac.d.ts.map +1 -0
  490. package/dist/frameworks/index.d.ts +14 -0
  491. package/dist/frameworks/index.d.ts.map +1 -1
  492. package/dist/frameworks/index.js +7 -1
  493. package/dist/frameworks/index.js.map +3 -3
  494. package/dist/frameworks/kubernetes.d.ts +9 -0
  495. package/dist/frameworks/kubernetes.d.ts.map +1 -0
  496. package/dist/frameworks/pulumi.d.ts +9 -0
  497. package/dist/frameworks/pulumi.d.ts.map +1 -0
  498. package/dist/frameworks/scala.d.ts +6 -0
  499. package/dist/frameworks/scala.d.ts.map +1 -0
  500. package/dist/frameworks/solidity.d.ts +6 -0
  501. package/dist/frameworks/solidity.d.ts.map +1 -0
  502. package/dist/frameworks/terraform.d.ts +14 -0
  503. package/dist/frameworks/terraform.d.ts.map +1 -0
  504. package/dist/frameworks/vue.d.ts +7 -0
  505. package/dist/frameworks/vue.d.ts.map +1 -0
  506. package/dist/graph/communities.d.ts +43 -0
  507. package/dist/graph/communities.d.ts.map +1 -0
  508. package/dist/graph/communities.js +317 -0
  509. package/dist/graph/communities.js.map +7 -0
  510. package/dist/graph/flows.d.ts +55 -0
  511. package/dist/graph/flows.d.ts.map +1 -0
  512. package/dist/graph/flows.js +138 -0
  513. package/dist/graph/flows.js.map +7 -0
  514. package/dist/graph/refactor.d.ts +43 -0
  515. package/dist/graph/refactor.d.ts.map +1 -0
  516. package/dist/graph/refactor.js +155 -0
  517. package/dist/graph/refactor.js.map +7 -0
  518. package/dist/index.d.ts +36 -4
  519. package/dist/index.d.ts.map +1 -1
  520. package/dist/index.js +1 -1
  521. package/dist/index.js.map +2 -2
  522. package/dist/mcp/cache.d.ts +69 -0
  523. package/dist/mcp/cache.d.ts.map +1 -0
  524. package/dist/mcp/cache.js +172 -0
  525. package/dist/mcp/cache.js.map +7 -0
  526. package/dist/mcp/read-modes.d.ts +31 -0
  527. package/dist/mcp/read-modes.d.ts.map +1 -0
  528. package/dist/mcp/read-modes.js +295 -0
  529. package/dist/mcp/read-modes.js.map +7 -0
  530. package/dist/mcp/server.d.ts +1 -0
  531. package/dist/mcp/server.d.ts.map +1 -1
  532. package/dist/mcp/server.js +17 -3
  533. package/dist/mcp/server.js.map +2 -2
  534. package/dist/mcp/tool-names.d.ts +2 -0
  535. package/dist/mcp/tool-names.d.ts.map +1 -0
  536. package/dist/mcp/tool-names.js +24 -1
  537. package/dist/mcp/tool-names.js.map +2 -2
  538. package/dist/mcp/tools.d.ts +12 -0
  539. package/dist/mcp/tools.d.ts.map +1 -1
  540. package/dist/mcp/tools.js +1560 -4
  541. package/dist/mcp/tools.js.map +3 -3
  542. package/dist/memory/compress.d.ts +19 -0
  543. package/dist/memory/compress.d.ts.map +1 -0
  544. package/dist/memory/database.d.ts +92 -0
  545. package/dist/memory/database.d.ts.map +1 -0
  546. package/dist/memory/database.js +70 -2
  547. package/dist/memory/database.js.map +2 -2
  548. package/dist/memory/index.d.ts +71 -0
  549. package/dist/memory/index.d.ts.map +1 -0
  550. package/dist/memory/index.js +12 -2
  551. package/dist/memory/index.js.map +2 -2
  552. package/dist/memory/symbols.d.ts +21 -0
  553. package/dist/memory/symbols.d.ts.map +1 -0
  554. package/dist/memory/types.d.ts +78 -0
  555. package/dist/memory/types.d.ts.map +1 -0
  556. package/dist/memory/types.js.map +1 -1
  557. package/dist/memory/vectors.d.ts +43 -0
  558. package/dist/memory/vectors.d.ts.map +1 -0
  559. package/dist/patterns/graph.d.ts +16 -0
  560. package/dist/patterns/graph.d.ts.map +1 -0
  561. package/dist/patterns/graph.js +45 -0
  562. package/dist/patterns/graph.js.map +7 -0
  563. package/dist/patterns/index.d.ts +4 -0
  564. package/dist/patterns/index.d.ts.map +1 -0
  565. package/dist/patterns/index.js +39 -0
  566. package/dist/patterns/index.js.map +7 -0
  567. package/dist/patterns/indexer.d.ts +15 -0
  568. package/dist/patterns/indexer.d.ts.map +1 -0
  569. package/dist/patterns/indexer.js +97 -0
  570. package/dist/patterns/indexer.js.map +7 -0
  571. package/dist/patterns/library/command-injection-go.yaml +11 -0
  572. package/dist/patterns/library/dangerous-eval-js.yaml +14 -0
  573. package/dist/patterns/library/dangerous-exec-py.yaml +13 -0
  574. package/dist/patterns/library/dangerous-reflection-java.yaml +8 -0
  575. package/dist/patterns/library/path-traversal-go.yaml +11 -0
  576. package/dist/patterns/library/path-traversal-py.yaml +12 -0
  577. package/dist/patterns/library/path-traversal-readfile-js.yaml +14 -0
  578. package/dist/patterns/library/prototype-pollution-js.yaml +12 -0
  579. package/dist/patterns/library/sql-injection-concat-js.yaml +12 -0
  580. package/dist/patterns/library/sql-injection-java.yaml +13 -0
  581. package/dist/patterns/library/sql-injection-py.yaml +12 -0
  582. package/dist/patterns/library/sql-injection-template-js.yaml +13 -0
  583. package/dist/patterns/library/weak-crypto-md5-js.yaml +13 -0
  584. package/dist/patterns/library/weak-crypto-py.yaml +13 -0
  585. package/dist/patterns/loader.d.ts +18 -0
  586. package/dist/patterns/loader.d.ts.map +1 -0
  587. package/dist/patterns/loader.js +277 -0
  588. package/dist/patterns/loader.js.map +7 -0
  589. package/dist/patterns/runner.d.ts +42 -0
  590. package/dist/patterns/runner.d.ts.map +1 -0
  591. package/dist/patterns/runner.js +277 -0
  592. package/dist/patterns/runner.js.map +7 -0
  593. package/dist/patterns/types.d.ts +27 -0
  594. package/dist/patterns/types.d.ts.map +1 -0
  595. package/dist/patterns/types.js +34 -0
  596. package/dist/patterns/types.js.map +7 -0
  597. package/dist/resolution/bridges/android-rn.d.ts +13 -0
  598. package/dist/resolution/bridges/android-rn.d.ts.map +1 -0
  599. package/dist/resolution/bridges/android-rn.js +298 -0
  600. package/dist/resolution/bridges/android-rn.js.map +7 -0
  601. package/dist/resolution/bridges/expo-modules.d.ts +10 -0
  602. package/dist/resolution/bridges/expo-modules.d.ts.map +1 -0
  603. package/dist/resolution/bridges/expo-modules.js +155 -0
  604. package/dist/resolution/bridges/expo-modules.js.map +7 -0
  605. package/dist/resolution/bridges/flutter-channel.d.ts +14 -0
  606. package/dist/resolution/bridges/flutter-channel.d.ts.map +1 -0
  607. package/dist/resolution/bridges/flutter-channel.js +385 -0
  608. package/dist/resolution/bridges/flutter-channel.js.map +7 -0
  609. package/dist/resolution/bridges/index.d.ts +40 -0
  610. package/dist/resolution/bridges/index.d.ts.map +1 -0
  611. package/dist/resolution/bridges/index.js +80 -0
  612. package/dist/resolution/bridges/index.js.map +7 -0
  613. package/dist/resolution/bridges/native-events.d.ts +10 -0
  614. package/dist/resolution/bridges/native-events.d.ts.map +1 -0
  615. package/dist/resolution/bridges/native-events.js +188 -0
  616. package/dist/resolution/bridges/native-events.js.map +7 -0
  617. package/dist/resolution/bridges/native-views.d.ts +13 -0
  618. package/dist/resolution/bridges/native-views.d.ts.map +1 -0
  619. package/dist/resolution/bridges/native-views.js +244 -0
  620. package/dist/resolution/bridges/native-views.js.map +7 -0
  621. package/dist/resolution/bridges/react-native.d.ts +9 -0
  622. package/dist/resolution/bridges/react-native.d.ts.map +1 -0
  623. package/dist/resolution/bridges/react-native.js +161 -0
  624. package/dist/resolution/bridges/react-native.js.map +7 -0
  625. package/dist/resolution/bridges/swift-objc.d.ts +14 -0
  626. package/dist/resolution/bridges/swift-objc.d.ts.map +1 -0
  627. package/dist/resolution/bridges/swift-objc.js +227 -0
  628. package/dist/resolution/bridges/swift-objc.js.map +7 -0
  629. package/dist/resolution/bridges/turbomodules.d.ts +10 -0
  630. package/dist/resolution/bridges/turbomodules.d.ts.map +1 -0
  631. package/dist/resolution/bridges/turbomodules.js +216 -0
  632. package/dist/resolution/bridges/turbomodules.js.map +7 -0
  633. package/dist/resolution/index.d.ts +28 -3
  634. package/dist/resolution/index.d.ts.map +1 -1
  635. package/dist/resolution/index.js +61 -2
  636. package/dist/resolution/index.js.map +2 -2
  637. package/dist/security/attack-surface.d.ts +46 -0
  638. package/dist/security/attack-surface.d.ts.map +1 -0
  639. package/dist/security/attack-surface.js +206 -0
  640. package/dist/security/attack-surface.js.map +7 -0
  641. package/dist/security/context-warnings.d.ts +40 -0
  642. package/dist/security/context-warnings.d.ts.map +1 -0
  643. package/dist/security/context-warnings.js +123 -0
  644. package/dist/security/context-warnings.js.map +7 -0
  645. package/dist/security/data-flows.d.ts +33 -0
  646. package/dist/security/data-flows.d.ts.map +1 -0
  647. package/dist/security/data-flows.js +286 -0
  648. package/dist/security/data-flows.js.map +7 -0
  649. package/dist/security/dep-confusion.d.ts +23 -0
  650. package/dist/security/dep-confusion.d.ts.map +1 -0
  651. package/dist/security/dep-confusion.js +255 -0
  652. package/dist/security/dep-confusion.js.map +7 -0
  653. package/dist/security/errors.d.ts +16 -0
  654. package/dist/security/errors.d.ts.map +1 -0
  655. package/dist/security/errors.js +51 -0
  656. package/dist/security/errors.js.map +7 -0
  657. package/dist/security/export/fix-suggestions.d.ts +21 -0
  658. package/dist/security/export/fix-suggestions.d.ts.map +1 -0
  659. package/dist/security/export/fix-suggestions.js +58 -0
  660. package/dist/security/export/fix-suggestions.js.map +7 -0
  661. package/dist/security/export/sbom.d.ts +33 -0
  662. package/dist/security/export/sbom.d.ts.map +1 -0
  663. package/dist/security/export/sbom.js +230 -0
  664. package/dist/security/export/sbom.js.map +7 -0
  665. package/dist/security/export/serialization.d.ts +62 -0
  666. package/dist/security/export/serialization.d.ts.map +1 -0
  667. package/dist/security/export/serialization.js +142 -0
  668. package/dist/security/export/serialization.js.map +7 -0
  669. package/dist/security/export/vex.d.ts +58 -0
  670. package/dist/security/export/vex.d.ts.map +1 -0
  671. package/dist/security/export/vex.js +220 -0
  672. package/dist/security/export/vex.js.map +7 -0
  673. package/dist/security/index.d.ts +21 -0
  674. package/dist/security/index.d.ts.map +1 -0
  675. package/dist/security/index.js +67 -0
  676. package/dist/security/index.js.map +7 -0
  677. package/dist/security/integrator.d.ts +63 -0
  678. package/dist/security/integrator.d.ts.map +1 -0
  679. package/dist/security/integrator.js +491 -0
  680. package/dist/security/integrator.js.map +7 -0
  681. package/dist/security/license.d.ts +33 -0
  682. package/dist/security/license.d.ts.map +1 -0
  683. package/dist/security/license.js +70 -0
  684. package/dist/security/license.js.map +7 -0
  685. package/dist/security/manifest/adapter.d.ts +92 -0
  686. package/dist/security/manifest/adapter.d.ts.map +1 -0
  687. package/dist/security/manifest/adapter.js +243 -0
  688. package/dist/security/manifest/adapter.js.map +7 -0
  689. package/dist/security/manifest/parser.d.ts +73 -0
  690. package/dist/security/manifest/parser.d.ts.map +1 -0
  691. package/dist/security/manifest/parser.js +376 -0
  692. package/dist/security/manifest/parser.js.map +7 -0
  693. package/dist/security/manifest/plugins/cargo.d.ts +11 -0
  694. package/dist/security/manifest/plugins/cargo.d.ts.map +1 -0
  695. package/dist/security/manifest/plugins/cargo.js +233 -0
  696. package/dist/security/manifest/plugins/cargo.js.map +7 -0
  697. package/dist/security/manifest/plugins/composer.d.ts +11 -0
  698. package/dist/security/manifest/plugins/composer.d.ts.map +1 -0
  699. package/dist/security/manifest/plugins/composer.js +152 -0
  700. package/dist/security/manifest/plugins/composer.js.map +7 -0
  701. package/dist/security/manifest/plugins/go.d.ts +12 -0
  702. package/dist/security/manifest/plugins/go.d.ts.map +1 -0
  703. package/dist/security/manifest/plugins/go.js +146 -0
  704. package/dist/security/manifest/plugins/go.js.map +7 -0
  705. package/dist/security/manifest/plugins/gradle.d.ts +12 -0
  706. package/dist/security/manifest/plugins/gradle.d.ts.map +1 -0
  707. package/dist/security/manifest/plugins/gradle.js +159 -0
  708. package/dist/security/manifest/plugins/gradle.js.map +7 -0
  709. package/dist/security/manifest/plugins/hex.d.ts +11 -0
  710. package/dist/security/manifest/plugins/hex.d.ts.map +1 -0
  711. package/dist/security/manifest/plugins/hex.js +159 -0
  712. package/dist/security/manifest/plugins/hex.js.map +7 -0
  713. package/dist/security/manifest/plugins/maven.d.ts +11 -0
  714. package/dist/security/manifest/plugins/maven.d.ts.map +1 -0
  715. package/dist/security/manifest/plugins/maven.js +128 -0
  716. package/dist/security/manifest/plugins/maven.js.map +7 -0
  717. package/dist/security/manifest/plugins/npm.d.ts +11 -0
  718. package/dist/security/manifest/plugins/npm.d.ts.map +1 -0
  719. package/dist/security/manifest/plugins/npm.js +284 -0
  720. package/dist/security/manifest/plugins/npm.js.map +7 -0
  721. package/dist/security/manifest/plugins/nuget.d.ts +12 -0
  722. package/dist/security/manifest/plugins/nuget.d.ts.map +1 -0
  723. package/dist/security/manifest/plugins/nuget.js +186 -0
  724. package/dist/security/manifest/plugins/nuget.js.map +7 -0
  725. package/dist/security/manifest/plugins/pip.d.ts +11 -0
  726. package/dist/security/manifest/plugins/pip.d.ts.map +1 -0
  727. package/dist/security/manifest/plugins/pip.js +123 -0
  728. package/dist/security/manifest/plugins/pip.js.map +7 -0
  729. package/dist/security/manifest/plugins/pubspec.d.ts +11 -0
  730. package/dist/security/manifest/plugins/pubspec.d.ts.map +1 -0
  731. package/dist/security/manifest/plugins/pubspec.js +212 -0
  732. package/dist/security/manifest/plugins/pubspec.js.map +7 -0
  733. package/dist/security/manifest/plugins/pyproject.d.ts +3 -0
  734. package/dist/security/manifest/plugins/pyproject.d.ts.map +1 -0
  735. package/dist/security/manifest/plugins/pyproject.js +261 -0
  736. package/dist/security/manifest/plugins/pyproject.js.map +7 -0
  737. package/dist/security/manifest/plugins/rubygems.d.ts +11 -0
  738. package/dist/security/manifest/plugins/rubygems.d.ts.map +1 -0
  739. package/dist/security/manifest/plugins/rubygems.js +185 -0
  740. package/dist/security/manifest/plugins/rubygems.js.map +7 -0
  741. package/dist/security/manifest/plugins/swift.d.ts +11 -0
  742. package/dist/security/manifest/plugins/swift.d.ts.map +1 -0
  743. package/dist/security/manifest/plugins/swift.js +200 -0
  744. package/dist/security/manifest/plugins/swift.js.map +7 -0
  745. package/dist/security/owasp.d.ts +16 -0
  746. package/dist/security/owasp.d.ts.map +1 -0
  747. package/dist/security/owasp.js +104 -0
  748. package/dist/security/owasp.js.map +7 -0
  749. package/dist/security/pipeline.d.ts +37 -0
  750. package/dist/security/pipeline.d.ts.map +1 -0
  751. package/dist/security/pipeline.js +125 -0
  752. package/dist/security/pipeline.js.map +7 -0
  753. package/dist/security/reachability.d.ts +67 -0
  754. package/dist/security/reachability.d.ts.map +1 -0
  755. package/dist/security/reachability.js +276 -0
  756. package/dist/security/reachability.js.map +7 -0
  757. package/dist/security/remediation.d.ts +51 -0
  758. package/dist/security/remediation.d.ts.map +1 -0
  759. package/dist/security/remediation.js +126 -0
  760. package/dist/security/remediation.js.map +7 -0
  761. package/dist/security/secrets.d.ts +38 -0
  762. package/dist/security/secrets.d.ts.map +1 -0
  763. package/dist/security/secrets.js +176 -0
  764. package/dist/security/secrets.js.map +7 -0
  765. package/dist/security/staleness.d.ts +43 -0
  766. package/dist/security/staleness.d.ts.map +1 -0
  767. package/dist/security/staleness.js +231 -0
  768. package/dist/security/staleness.js.map +7 -0
  769. package/dist/security/supply-chain.d.ts +34 -0
  770. package/dist/security/supply-chain.d.ts.map +1 -0
  771. package/dist/security/supply-chain.js +301 -0
  772. package/dist/security/supply-chain.js.map +7 -0
  773. package/dist/security/suppressions.d.ts +18 -0
  774. package/dist/security/suppressions.d.ts.map +1 -0
  775. package/dist/security/suppressions.js +106 -0
  776. package/dist/security/suppressions.js.map +7 -0
  777. package/dist/security/types.d.ts +144 -0
  778. package/dist/security/types.d.ts.map +1 -0
  779. package/dist/security/types.js +17 -0
  780. package/dist/security/types.js.map +7 -0
  781. package/dist/security/vuln/client.d.ts +90 -0
  782. package/dist/security/vuln/client.d.ts.map +1 -0
  783. package/dist/security/vuln/client.js +355 -0
  784. package/dist/security/vuln/client.js.map +7 -0
  785. package/dist/security/vuln/epss-client.d.ts +26 -0
  786. package/dist/security/vuln/epss-client.d.ts.map +1 -0
  787. package/dist/security/vuln/epss-client.js +95 -0
  788. package/dist/security/vuln/epss-client.js.map +7 -0
  789. package/dist/security/vuln/index.d.ts +6 -0
  790. package/dist/security/vuln/index.d.ts.map +1 -0
  791. package/dist/security/vuln/index.js +29 -0
  792. package/dist/security/vuln/index.js.map +7 -0
  793. package/dist/security/vuln/osv-adapter.d.ts +58 -0
  794. package/dist/security/vuln/osv-adapter.d.ts.map +1 -0
  795. package/dist/security/vuln/osv-adapter.js +321 -0
  796. package/dist/security/vuln/osv-adapter.js.map +7 -0
  797. package/dist/security/vuln/types.d.ts +29 -0
  798. package/dist/security/vuln/types.d.ts.map +1 -0
  799. package/dist/security/vuln/types.js +17 -0
  800. package/dist/security/vuln/types.js.map +7 -0
  801. package/dist/sync/index.d.ts +4 -2
  802. package/dist/sync/index.d.ts.map +1 -1
  803. package/dist/types.d.ts +10 -4
  804. package/dist/types.d.ts.map +1 -1
  805. package/dist/types.js.map +2 -2
  806. package/dist/vectors/index.d.ts +11 -3
  807. package/dist/vectors/index.d.ts.map +1 -1
  808. package/dist/vectors/qdrant-index.d.ts +10 -3
  809. package/dist/vectors/qdrant-index.d.ts.map +1 -1
  810. package/dist/vectors/typesense-index.d.ts.map +1 -1
  811. package/dist/watchmen/index.js +83 -0
  812. package/dist/watchmen/index.js.map +7 -0
  813. package/dist/watchmen/synthesize.js +475 -0
  814. package/dist/watchmen/synthesize.js.map +7 -0
  815. package/package.json +6 -2
@@ -24,6 +24,31 @@ module.exports = __toCommonJS(targets_exports);
24
24
  var import_kiro = require("./kiro");
25
25
  var import_claude = require("./claude");
26
26
  var import_codex = require("./codex");
27
+ var import_cursor = require("./cursor");
28
+ var import_antigravity = require("./antigravity");
29
+ var import_opencode = require("./opencode");
30
+ var import_windsurf = require("./windsurf");
31
+ var import_cline = require("./cline");
32
+ var import_copilot = require("./copilot");
33
+ var import_copilot_cli = require("./copilot-cli");
34
+ var import_junie = require("./junie");
35
+ var import_gemini_cli = require("./gemini-cli");
36
+ var import_continue = require("./continue");
37
+ var import_roo = require("./roo");
38
+ var import_warp = require("./warp");
39
+ var import_aider = require("./aider");
40
+ var import_trae = require("./trae");
41
+ var import_augment = require("./augment");
42
+ var import_kilo = require("./kilo");
43
+ var import_amp = require("./amp");
44
+ var import_devin = require("./devin");
45
+ var import_replit = require("./replit");
46
+ var import_goose = require("./goose");
47
+ var import_openhands = require("./openhands");
48
+ var import_tabnine = require("./tabnine");
49
+ var import_generic = require("./generic");
50
+ var import_qoder = require("./qoder");
51
+ var import_qwen = require("./qwen");
27
52
  function getTargetInstaller(target) {
28
53
  if (target === "claude") {
29
54
  return {
@@ -43,6 +68,231 @@ function getTargetInstaller(target) {
43
68
  uninit: import_codex.uninitCodex
44
69
  };
45
70
  }
71
+ if (target === "cursor") {
72
+ return {
73
+ label: "Cursor",
74
+ installEarly: import_cursor.installCursorEarly,
75
+ installLate: import_cursor.installCursorLate,
76
+ printNextSteps: import_cursor.printCursorNextSteps,
77
+ uninit: import_cursor.uninitCursor
78
+ };
79
+ }
80
+ if (target === "antigravity") {
81
+ return {
82
+ label: "Antigravity",
83
+ installEarly: import_antigravity.installAntigravityEarly,
84
+ installLate: import_antigravity.installAntigravityLate,
85
+ printNextSteps: import_antigravity.printAntigravityNextSteps,
86
+ uninit: import_antigravity.uninitAntigravity
87
+ };
88
+ }
89
+ if (target === "opencode") {
90
+ return {
91
+ label: "OpenCode",
92
+ installEarly: import_opencode.installOpenCodeEarly,
93
+ installLate: import_opencode.installOpenCodeLate,
94
+ printNextSteps: import_opencode.printOpenCodeNextSteps,
95
+ uninit: import_opencode.uninitOpenCode
96
+ };
97
+ }
98
+ if (target === "windsurf") {
99
+ return {
100
+ label: "Windsurf",
101
+ installEarly: import_windsurf.installWindsurfEarly,
102
+ installLate: import_windsurf.installWindsurfLate,
103
+ printNextSteps: import_windsurf.printWindsurfNextSteps,
104
+ uninit: import_windsurf.uninitWindsurf
105
+ };
106
+ }
107
+ if (target === "cline") {
108
+ return {
109
+ label: "Cline",
110
+ installEarly: import_cline.installClineEarly,
111
+ installLate: import_cline.installClineLate,
112
+ printNextSteps: import_cline.printClineNextSteps,
113
+ uninit: import_cline.uninitCline
114
+ };
115
+ }
116
+ if (target === "copilot") {
117
+ return {
118
+ label: "GitHub Copilot",
119
+ installEarly: import_copilot.installCopilotEarly,
120
+ installLate: import_copilot.installCopilotLate,
121
+ printNextSteps: import_copilot.printCopilotNextSteps,
122
+ uninit: import_copilot.uninitCopilot
123
+ };
124
+ }
125
+ if (target === "copilot-cli") {
126
+ return {
127
+ label: "GitHub Copilot CLI",
128
+ installEarly: import_copilot_cli.installCopilotCliEarly,
129
+ installLate: import_copilot_cli.installCopilotCliLate,
130
+ printNextSteps: import_copilot_cli.printCopilotCliNextSteps,
131
+ uninit: import_copilot_cli.uninitCopilotCli
132
+ };
133
+ }
134
+ if (target === "junie") {
135
+ return {
136
+ label: "JetBrains Junie",
137
+ installEarly: import_junie.installJunieEarly,
138
+ installLate: import_junie.installJunieLate,
139
+ printNextSteps: import_junie.printJunieNextSteps,
140
+ uninit: import_junie.uninitJunie
141
+ };
142
+ }
143
+ if (target === "gemini-cli") {
144
+ return {
145
+ label: "Gemini CLI",
146
+ installEarly: import_gemini_cli.installGeminiCliEarly,
147
+ installLate: import_gemini_cli.installGeminiCliLate,
148
+ printNextSteps: import_gemini_cli.printGeminiCliNextSteps,
149
+ uninit: import_gemini_cli.uninitGeminiCli
150
+ };
151
+ }
152
+ if (target === "continue") {
153
+ return {
154
+ label: "Continue",
155
+ installEarly: import_continue.installContinueEarly,
156
+ installLate: import_continue.installContinueLate,
157
+ printNextSteps: import_continue.printContinueNextSteps,
158
+ uninit: import_continue.uninitContinue
159
+ };
160
+ }
161
+ if (target === "roo") {
162
+ return {
163
+ label: "Roo Code",
164
+ installEarly: import_roo.installRooEarly,
165
+ installLate: import_roo.installRooLate,
166
+ printNextSteps: import_roo.printRooNextSteps,
167
+ uninit: import_roo.uninitRoo
168
+ };
169
+ }
170
+ if (target === "warp") {
171
+ return {
172
+ label: "Warp",
173
+ installEarly: import_warp.installWarpEarly,
174
+ installLate: import_warp.installWarpLate,
175
+ printNextSteps: import_warp.printWarpNextSteps,
176
+ uninit: import_warp.uninitWarp
177
+ };
178
+ }
179
+ if (target === "aider") {
180
+ return {
181
+ label: "Aider",
182
+ installEarly: import_aider.installAiderEarly,
183
+ installLate: import_aider.installAiderLate,
184
+ printNextSteps: import_aider.printAiderNextSteps,
185
+ uninit: import_aider.uninitAider
186
+ };
187
+ }
188
+ if (target === "trae") {
189
+ return {
190
+ label: "Trae",
191
+ installEarly: import_trae.installTraeEarly,
192
+ installLate: import_trae.installTraeLate,
193
+ printNextSteps: import_trae.printTraeNextSteps,
194
+ uninit: import_trae.uninitTrae
195
+ };
196
+ }
197
+ if (target === "augment") {
198
+ return {
199
+ label: "Augment Code",
200
+ installEarly: import_augment.installAugmentEarly,
201
+ installLate: import_augment.installAugmentLate,
202
+ printNextSteps: import_augment.printAugmentNextSteps,
203
+ uninit: import_augment.uninitAugment
204
+ };
205
+ }
206
+ if (target === "kilo") {
207
+ return {
208
+ label: "Kilo Code",
209
+ installEarly: import_kilo.installKiloEarly,
210
+ installLate: import_kilo.installKiloLate,
211
+ printNextSteps: import_kilo.printKiloNextSteps,
212
+ uninit: import_kilo.uninitKilo
213
+ };
214
+ }
215
+ if (target === "amp") {
216
+ return {
217
+ label: "Sourcegraph Amp",
218
+ installEarly: import_amp.installAmpEarly,
219
+ installLate: import_amp.installAmpLate,
220
+ printNextSteps: import_amp.printAmpNextSteps,
221
+ uninit: import_amp.uninitAmp
222
+ };
223
+ }
224
+ if (target === "devin") {
225
+ return {
226
+ label: "Devin",
227
+ installEarly: import_devin.installDevinEarly,
228
+ installLate: import_devin.installDevinLate,
229
+ printNextSteps: import_devin.printDevinNextSteps,
230
+ uninit: import_devin.uninitDevin
231
+ };
232
+ }
233
+ if (target === "replit") {
234
+ return {
235
+ label: "Replit Agent",
236
+ installEarly: import_replit.installReplitEarly,
237
+ installLate: import_replit.installReplitLate,
238
+ printNextSteps: import_replit.printReplitNextSteps,
239
+ uninit: import_replit.uninitReplit
240
+ };
241
+ }
242
+ if (target === "goose") {
243
+ return {
244
+ label: "Block Goose",
245
+ installEarly: import_goose.installGooseEarly,
246
+ installLate: import_goose.installGooseLate,
247
+ printNextSteps: import_goose.printGooseNextSteps,
248
+ uninit: import_goose.uninitGoose
249
+ };
250
+ }
251
+ if (target === "openhands") {
252
+ return {
253
+ label: "OpenHands",
254
+ installEarly: import_openhands.installOpenHandsEarly,
255
+ installLate: import_openhands.installOpenHandsLate,
256
+ printNextSteps: import_openhands.printOpenHandsNextSteps,
257
+ uninit: import_openhands.uninitOpenHands
258
+ };
259
+ }
260
+ if (target === "tabnine") {
261
+ return {
262
+ label: "Tabnine",
263
+ installEarly: import_tabnine.installTabnineEarly,
264
+ installLate: import_tabnine.installTabnineLate,
265
+ printNextSteps: import_tabnine.printTabnineNextSteps,
266
+ uninit: import_tabnine.uninitTabnine
267
+ };
268
+ }
269
+ if (target === "mistral-vibe") {
270
+ return { label: "Mistral Vibe", installEarly: import_generic.mistralVibe.installEarly, installLate: import_generic.mistralVibe.installLate, printNextSteps: import_generic.mistralVibe.printNextSteps, uninit: import_generic.mistralVibe.uninit };
271
+ }
272
+ if (target === "ibm-bob") {
273
+ return { label: "IBM Bob", installEarly: import_generic.ibmBob.installEarly, installLate: import_generic.ibmBob.installLate, printNextSteps: import_generic.ibmBob.printNextSteps, uninit: import_generic.ibmBob.uninit };
274
+ }
275
+ if (target === "crush") {
276
+ return { label: "Crush", installEarly: import_generic.crush.installEarly, installLate: import_generic.crush.installLate, printNextSteps: import_generic.crush.printNextSteps, uninit: import_generic.crush.uninit };
277
+ }
278
+ if (target === "droid-factory") {
279
+ return { label: "Droid Factory", installEarly: import_generic.droidFactory.installEarly, installLate: import_generic.droidFactory.installLate, printNextSteps: import_generic.droidFactory.printNextSteps, uninit: import_generic.droidFactory.uninit };
280
+ }
281
+ if (target === "forgecode") {
282
+ return { label: "ForgeCode", installEarly: import_generic.forgeCode.installEarly, installLate: import_generic.forgeCode.installLate, printNextSteps: import_generic.forgeCode.printNextSteps, uninit: import_generic.forgeCode.uninit };
283
+ }
284
+ if (target === "iflow") {
285
+ return { label: "iFlow CLI", installEarly: import_generic.iflowCli.installEarly, installLate: import_generic.iflowCli.installLate, printNextSteps: import_generic.iflowCli.printNextSteps, uninit: import_generic.iflowCli.uninit };
286
+ }
287
+ if (target === "qwen") {
288
+ return { label: "Qwen Code", installEarly: import_qwen.installQwenEarly, installLate: import_qwen.installQwenLate, printNextSteps: import_qwen.printQwenNextSteps, uninit: import_qwen.uninitQwen };
289
+ }
290
+ if (target === "rovo") {
291
+ return { label: "Atlassian Rovo Dev", installEarly: import_generic.rovoDev.installEarly, installLate: import_generic.rovoDev.installLate, printNextSteps: import_generic.rovoDev.printNextSteps, uninit: import_generic.rovoDev.uninit };
292
+ }
293
+ if (target === "qoder") {
294
+ return { label: "Qoder", installEarly: import_qoder.installQoderEarly, installLate: import_qoder.installQoderLate, printNextSteps: import_qoder.printQoderNextSteps, uninit: import_qoder.uninitQoder };
295
+ }
46
296
  return {
47
297
  label: "Kiro",
48
298
  installEarly: import_kiro.installKiroEarly,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bin/installer/targets/index.ts"],
4
- "sourcesContent": ["import type { CavemanMode } from '../caveman';\nimport type { InstallTarget } from '../common';\nimport { installKiroEarly, installKiroLate, printKiroNextSteps } from './kiro';\nimport { installClaudeEarly, installClaudeLate, printClaudeNextSteps, uninitClaude } from './claude';\nimport { installCodexEarly, installCodexLate, printCodexNextSteps, uninitCodex } from './codex';\n\nexport interface TargetInstaller {\n label: string;\n installEarly(projectRoot: string): void;\n installLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean): void;\n printNextSteps(projectRoot: string): void;\n uninit?(projectRoot: string): void;\n}\n\nexport function getTargetInstaller(target: InstallTarget): TargetInstaller {\n if (target === 'claude') {\n return {\n label: 'Claude Code',\n installEarly: installClaudeEarly,\n installLate: installClaudeLate,\n printNextSteps: printClaudeNextSteps,\n uninit: uninitClaude,\n };\n }\n\n if (target === 'codex') {\n return {\n label: 'Codex',\n installEarly: installCodexEarly,\n installLate: installCodexLate,\n printNextSteps: printCodexNextSteps,\n uninit: uninitCodex,\n };\n }\n\n return {\n label: 'Kiro',\n installEarly: installKiroEarly,\n installLate: installKiroLate,\n printNextSteps: printKiroNextSteps,\n };\n}\n\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,kBAAsE;AACtE,oBAA0F;AAC1F,mBAAsF;AAU/E,SAAS,mBAAmB,QAAwC;AACzE,MAAI,WAAW,UAAU;AACvB,WAAO;AAAA,MACL,OAAO;AAAA,MACP,cAAc;AAAA,MACd,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,MAAI,WAAW,SAAS;AACtB,WAAO;AAAA,MACL,OAAO;AAAA,MACP,cAAc;AAAA,MACd,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO;AAAA,IACP,cAAc;AAAA,IACd,aAAa;AAAA,IACb,gBAAgB;AAAA,EAClB;AACF;",
4
+ "sourcesContent": ["import type { CavemanMode } from '../caveman';\nimport type { InstallTarget } from '../common';\nimport { installKiroEarly, installKiroLate, printKiroNextSteps } from './kiro';\nimport { installClaudeEarly, installClaudeLate, printClaudeNextSteps, uninitClaude } from './claude';\nimport { installCodexEarly, installCodexLate, printCodexNextSteps, uninitCodex } from './codex';\nimport { installCursorEarly, installCursorLate, printCursorNextSteps, uninitCursor } from './cursor';\nimport { installAntigravityEarly, installAntigravityLate, printAntigravityNextSteps, uninitAntigravity } from './antigravity';\nimport { installOpenCodeEarly, installOpenCodeLate, printOpenCodeNextSteps, uninitOpenCode } from './opencode';\nimport { installWindsurfEarly, installWindsurfLate, printWindsurfNextSteps, uninitWindsurf } from './windsurf';\nimport { installClineEarly, installClineLate, printClineNextSteps, uninitCline } from './cline';\nimport { installCopilotEarly, installCopilotLate, printCopilotNextSteps, uninitCopilot } from './copilot';\nimport { installCopilotCliEarly, installCopilotCliLate, printCopilotCliNextSteps, uninitCopilotCli } from './copilot-cli';\nimport { installJunieEarly, installJunieLate, printJunieNextSteps, uninitJunie } from './junie';\nimport { installGeminiCliEarly, installGeminiCliLate, printGeminiCliNextSteps, uninitGeminiCli } from './gemini-cli';\nimport { installContinueEarly, installContinueLate, printContinueNextSteps, uninitContinue } from './continue';\nimport { installRooEarly, installRooLate, printRooNextSteps, uninitRoo } from './roo';\nimport { installWarpEarly, installWarpLate, printWarpNextSteps, uninitWarp } from './warp';\nimport { installAiderEarly, installAiderLate, printAiderNextSteps, uninitAider } from './aider';\nimport { installTraeEarly, installTraeLate, printTraeNextSteps, uninitTrae } from './trae';\nimport { installAugmentEarly, installAugmentLate, printAugmentNextSteps, uninitAugment } from './augment';\nimport { installKiloEarly, installKiloLate, printKiloNextSteps, uninitKilo } from './kilo';\nimport { installAmpEarly, installAmpLate, printAmpNextSteps, uninitAmp } from './amp';\nimport { installDevinEarly, installDevinLate, printDevinNextSteps, uninitDevin } from './devin';\nimport { installReplitEarly, installReplitLate, printReplitNextSteps, uninitReplit } from './replit';\nimport { installGooseEarly, installGooseLate, printGooseNextSteps, uninitGoose } from './goose';\nimport { installOpenHandsEarly, installOpenHandsLate, printOpenHandsNextSteps, uninitOpenHands } from './openhands';\nimport { installTabnineEarly, installTabnineLate, printTabnineNextSteps, uninitTabnine } from './tabnine';\nimport { mistralVibe, ibmBob, crush, droidFactory, forgeCode, iflowCli, rovoDev } from './generic';\nimport { installQoderEarly, installQoderLate, printQoderNextSteps, uninitQoder } from './qoder';\nimport { installQwenEarly, installQwenLate, printQwenNextSteps, uninitQwen } from './qwen';\n\nexport interface TargetInstaller {\n label: string;\n installEarly(projectRoot: string): void;\n installLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean, enableWatchmen?: boolean, watchmenSynthesisMode?: 'local' | 'agent'): void;\n printNextSteps(projectRoot: string): void;\n uninit?(projectRoot: string): void;\n}\n\nexport function getTargetInstaller(target: InstallTarget): TargetInstaller {\n if (target === 'claude') {\n return {\n label: 'Claude Code',\n installEarly: installClaudeEarly,\n installLate: installClaudeLate,\n printNextSteps: printClaudeNextSteps,\n uninit: uninitClaude,\n };\n }\n\n if (target === 'codex') {\n return {\n label: 'Codex',\n installEarly: installCodexEarly,\n installLate: installCodexLate,\n printNextSteps: printCodexNextSteps,\n uninit: uninitCodex,\n };\n }\n\n if (target === 'cursor') {\n return {\n label: 'Cursor',\n installEarly: installCursorEarly,\n installLate: installCursorLate,\n printNextSteps: printCursorNextSteps,\n uninit: uninitCursor,\n };\n }\n\n if (target === 'antigravity') {\n return {\n label: 'Antigravity',\n installEarly: installAntigravityEarly,\n installLate: installAntigravityLate,\n printNextSteps: printAntigravityNextSteps,\n uninit: uninitAntigravity,\n };\n }\n\n if (target === 'opencode') {\n return {\n label: 'OpenCode',\n installEarly: installOpenCodeEarly,\n installLate: installOpenCodeLate,\n printNextSteps: printOpenCodeNextSteps,\n uninit: uninitOpenCode,\n };\n }\n\n if (target === 'windsurf') {\n return {\n label: 'Windsurf',\n installEarly: installWindsurfEarly,\n installLate: installWindsurfLate,\n printNextSteps: printWindsurfNextSteps,\n uninit: uninitWindsurf,\n };\n }\n\n if (target === 'cline') {\n return {\n label: 'Cline',\n installEarly: installClineEarly,\n installLate: installClineLate,\n printNextSteps: printClineNextSteps,\n uninit: uninitCline,\n };\n }\n\n if (target === 'copilot') {\n return {\n label: 'GitHub Copilot',\n installEarly: installCopilotEarly,\n installLate: installCopilotLate,\n printNextSteps: printCopilotNextSteps,\n uninit: uninitCopilot,\n };\n }\n\n if (target === 'copilot-cli') {\n return {\n label: 'GitHub Copilot CLI',\n installEarly: installCopilotCliEarly,\n installLate: installCopilotCliLate,\n printNextSteps: printCopilotCliNextSteps,\n uninit: uninitCopilotCli,\n };\n }\n\n if (target === 'junie') {\n return {\n label: 'JetBrains Junie',\n installEarly: installJunieEarly,\n installLate: installJunieLate,\n printNextSteps: printJunieNextSteps,\n uninit: uninitJunie,\n };\n }\n\n if (target === 'gemini-cli') {\n return {\n label: 'Gemini CLI',\n installEarly: installGeminiCliEarly,\n installLate: installGeminiCliLate,\n printNextSteps: printGeminiCliNextSteps,\n uninit: uninitGeminiCli,\n };\n }\n\n if (target === 'continue') {\n return {\n label: 'Continue',\n installEarly: installContinueEarly,\n installLate: installContinueLate,\n printNextSteps: printContinueNextSteps,\n uninit: uninitContinue,\n };\n }\n\n if (target === 'roo') {\n return {\n label: 'Roo Code',\n installEarly: installRooEarly,\n installLate: installRooLate,\n printNextSteps: printRooNextSteps,\n uninit: uninitRoo,\n };\n }\n\n if (target === 'warp') {\n return {\n label: 'Warp',\n installEarly: installWarpEarly,\n installLate: installWarpLate,\n printNextSteps: printWarpNextSteps,\n uninit: uninitWarp,\n };\n }\n\n if (target === 'aider') {\n return {\n label: 'Aider',\n installEarly: installAiderEarly,\n installLate: installAiderLate,\n printNextSteps: printAiderNextSteps,\n uninit: uninitAider,\n };\n }\n\n if (target === 'trae') {\n return {\n label: 'Trae',\n installEarly: installTraeEarly,\n installLate: installTraeLate,\n printNextSteps: printTraeNextSteps,\n uninit: uninitTrae,\n };\n }\n\n if (target === 'augment') {\n return {\n label: 'Augment Code',\n installEarly: installAugmentEarly,\n installLate: installAugmentLate,\n printNextSteps: printAugmentNextSteps,\n uninit: uninitAugment,\n };\n }\n\n if (target === 'kilo') {\n return {\n label: 'Kilo Code',\n installEarly: installKiloEarly,\n installLate: installKiloLate,\n printNextSteps: printKiloNextSteps,\n uninit: uninitKilo,\n };\n }\n\n if (target === 'amp') {\n return {\n label: 'Sourcegraph Amp',\n installEarly: installAmpEarly,\n installLate: installAmpLate,\n printNextSteps: printAmpNextSteps,\n uninit: uninitAmp,\n };\n }\n\n if (target === 'devin') {\n return {\n label: 'Devin',\n installEarly: installDevinEarly,\n installLate: installDevinLate,\n printNextSteps: printDevinNextSteps,\n uninit: uninitDevin,\n };\n }\n\n if (target === 'replit') {\n return {\n label: 'Replit Agent',\n installEarly: installReplitEarly,\n installLate: installReplitLate,\n printNextSteps: printReplitNextSteps,\n uninit: uninitReplit,\n };\n }\n\n if (target === 'goose') {\n return {\n label: 'Block Goose',\n installEarly: installGooseEarly,\n installLate: installGooseLate,\n printNextSteps: printGooseNextSteps,\n uninit: uninitGoose,\n };\n }\n\n if (target === 'openhands') {\n return {\n label: 'OpenHands',\n installEarly: installOpenHandsEarly,\n installLate: installOpenHandsLate,\n printNextSteps: printOpenHandsNextSteps,\n uninit: uninitOpenHands,\n };\n }\n\n if (target === 'tabnine') {\n return {\n label: 'Tabnine',\n installEarly: installTabnineEarly,\n installLate: installTabnineLate,\n printNextSteps: printTabnineNextSteps,\n uninit: uninitTabnine,\n };\n }\n\n if (target === 'mistral-vibe') {\n return { label: 'Mistral Vibe', installEarly: mistralVibe.installEarly, installLate: mistralVibe.installLate, printNextSteps: mistralVibe.printNextSteps, uninit: mistralVibe.uninit };\n }\n if (target === 'ibm-bob') {\n return { label: 'IBM Bob', installEarly: ibmBob.installEarly, installLate: ibmBob.installLate, printNextSteps: ibmBob.printNextSteps, uninit: ibmBob.uninit };\n }\n if (target === 'crush') {\n return { label: 'Crush', installEarly: crush.installEarly, installLate: crush.installLate, printNextSteps: crush.printNextSteps, uninit: crush.uninit };\n }\n if (target === 'droid-factory') {\n return { label: 'Droid Factory', installEarly: droidFactory.installEarly, installLate: droidFactory.installLate, printNextSteps: droidFactory.printNextSteps, uninit: droidFactory.uninit };\n }\n if (target === 'forgecode') {\n return { label: 'ForgeCode', installEarly: forgeCode.installEarly, installLate: forgeCode.installLate, printNextSteps: forgeCode.printNextSteps, uninit: forgeCode.uninit };\n }\n if (target === 'iflow') {\n return { label: 'iFlow CLI', installEarly: iflowCli.installEarly, installLate: iflowCli.installLate, printNextSteps: iflowCli.printNextSteps, uninit: iflowCli.uninit };\n }\n if (target === 'qwen') {\n return { label: 'Qwen Code', installEarly: installQwenEarly, installLate: installQwenLate, printNextSteps: printQwenNextSteps, uninit: uninitQwen };\n }\n if (target === 'rovo') {\n return { label: 'Atlassian Rovo Dev', installEarly: rovoDev.installEarly, installLate: rovoDev.installLate, printNextSteps: rovoDev.printNextSteps, uninit: rovoDev.uninit };\n }\n if (target === 'qoder') {\n return { label: 'Qoder', installEarly: installQoderEarly, installLate: installQoderLate, printNextSteps: printQoderNextSteps, uninit: uninitQoder };\n }\n\n return {\n label: 'Kiro',\n installEarly: installKiroEarly,\n installLate: installKiroLate,\n printNextSteps: printKiroNextSteps,\n };\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * JetBrains Junie target.
3
+ *
4
+ * MCP: .junie/mcp/mcp.json (project-level, standard mcpServers format)
5
+ * Rules: .junie/AGENTS.md (preferred guidelines location)
6
+ * Hooks: Only SessionStart (EAP, user-level only) — not useful for auto-sync
7
+ */
8
+ import { CavemanMode } from '../caveman';
9
+ export declare function installJunieEarly(projectRoot: string): void;
10
+ export declare function installJunieLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void;
11
+ export declare function uninitJunie(projectRoot: string): void;
12
+ export declare function printJunieNextSteps(): void;
13
+ //# sourceMappingURL=junie.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"junie.d.ts","sourceRoot":"","sources":["../../../../src/bin/installer/targets/junie.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAgBzC,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAY3D;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAyBnR;AAED,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAwBrD;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAI1C"}
@@ -51,8 +51,8 @@ function installJunieEarly(projectRoot) {
51
51
  (0, import_common.writeJson)(mcpPath, config);
52
52
  console.log(` \u2713 Junie MCP server registered in ${mcpPath}`);
53
53
  }
54
- function installJunieLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory) {
55
- const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory);
54
+ function installJunieLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns) {
55
+ const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, void 0, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);
56
56
  const instructionsPath = path.join(projectRoot, ".kirograph", "junie.md");
57
57
  (0, import_common.ensureDir)(path.dirname(instructionsPath));
58
58
  fs.writeFileSync(instructionsPath, (0, import_instructions.buildAgentInstructions)(opts));
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bin/installer/targets/junie.ts"],
4
- "sourcesContent": ["/**\n * JetBrains Junie target.\n *\n * MCP: .junie/mcp/mcp.json (project-level, standard mcpServers format)\n * Rules: .junie/AGENTS.md (preferred guidelines location)\n * Hooks: Only SessionStart (EAP, user-level only) \u2014 not useful for auto-sync\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport {\n ensureDir,\n buildInstructionOpts,\n readJson,\n writeJson,\n KIROGRAPH_COMMAND,\n KIROGRAPH_MCP_ARGS,\n KIROGRAPH_SERVER_NAME,\n upsertGeneratedBlock,\n removeGeneratedBlock,\n} from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst JUNIE_BLOCK_ID = 'junie';\n\nexport function installJunieEarly(projectRoot: string): void {\n // Write MCP to .junie/mcp/mcp.json (project-level)\n const mcpPath = path.join(projectRoot, '.junie', 'mcp', 'mcp.json');\n ensureDir(path.dirname(mcpPath));\n const config = readJson(mcpPath);\n config.mcpServers = config.mcpServers ?? {};\n config.mcpServers[KIROGRAPH_SERVER_NAME] = {\n command: KIROGRAPH_COMMAND,\n args: KIROGRAPH_MCP_ARGS,\n };\n writeJson(mcpPath, config);\n console.log(` \u2713 Junie MCP server registered in ${mcpPath}`);\n}\n\nexport function installJunieLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'junie.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 Junie instructions written to ${instructionsPath}`);\n\n // Write to .junie/AGENTS.md (preferred guidelines location)\n const agentsPath = path.join(projectRoot, '.junie', 'AGENTS.md');\n ensureDir(path.dirname(agentsPath));\n const changed = upsertGeneratedBlock(agentsPath, JUNIE_BLOCK_ID, '## KiroGraph', buildAgentInstructions(opts));\n console.log(changed\n ? ` \u2713 .junie/AGENTS.md updated with KiroGraph instructions`\n : ` \u2713 .junie/AGENTS.md already up to date`);\n\n // Remove legacy .junie/guidelines.md if it was created by us\n const legacyPath = path.join(projectRoot, '.junie', 'guidelines.md');\n if (fs.existsSync(legacyPath)) {\n const content = fs.readFileSync(legacyPath, 'utf8');\n if (content.includes('kirograph') || content.includes('KiroGraph')) {\n fs.unlinkSync(legacyPath);\n console.log(` \u2713 Removed legacy .junie/guidelines.md (migrated to .junie/AGENTS.md)`);\n }\n }\n}\n\nexport function uninitJunie(projectRoot: string): void {\n // Remove MCP entry\n const mcpPath = path.join(projectRoot, '.junie', 'mcp', 'mcp.json');\n if (fs.existsSync(mcpPath)) {\n const config = readJson(mcpPath);\n if (config.mcpServers?.[KIROGRAPH_SERVER_NAME]) {\n delete config.mcpServers[KIROGRAPH_SERVER_NAME];\n if (Object.keys(config.mcpServers).length === 0) delete config.mcpServers;\n writeJson(mcpPath, config);\n console.log(` \u2713 Removed kirograph from .junie/mcp/mcp.json`);\n }\n }\n\n // Remove guidelines block\n const agentsPath = path.join(projectRoot, '.junie', 'AGENTS.md');\n if (removeGeneratedBlock(agentsPath, JUNIE_BLOCK_ID)) {\n console.log(` \u2713 Removed KiroGraph block from .junie/AGENTS.md`);\n }\n\n // Also check legacy path\n const legacyPath = path.join(projectRoot, '.junie', 'guidelines.md');\n if (removeGeneratedBlock(legacyPath, JUNIE_BLOCK_ID)) {\n console.log(` \u2713 Removed KiroGraph block from .junie/guidelines.md`);\n }\n}\n\nexport function printJunieNextSteps(): void {\n console.log('\\n Done! Restart Junie for the MCP server to load.');\n console.log(' MCP is in .junie/mcp/mcp.json');\n console.log(' KiroGraph guidelines are in .junie/AGENTS.md\\n');\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,SAAoB;AACpB,WAAsB;AAEtB,oBAUO;AACP,0BAAuC;AAEvC,MAAM,iBAAiB;AAEhB,SAAS,kBAAkB,aAA2B;AAE3D,QAAM,UAAU,KAAK,KAAK,aAAa,UAAU,OAAO,UAAU;AAClE,+BAAU,KAAK,QAAQ,OAAO,CAAC;AAC/B,QAAM,aAAS,wBAAS,OAAO;AAC/B,SAAO,aAAa,OAAO,cAAc,CAAC;AAC1C,SAAO,WAAW,mCAAqB,IAAI;AAAA,IACzC,SAAS;AAAA,IACT,MAAM;AAAA,EACR;AACA,+BAAU,SAAS,MAAM;AACzB,UAAQ,IAAI,2CAAsC,OAAO,EAAE;AAC7D;AAEO,SAAS,iBAAiB,aAAqB,aAAmC,uBAAgC,cAA8B;AACrJ,QAAM,WAAO,oCAAqB,aAAa,uBAAuB,YAAY;AAElF,QAAM,mBAAmB,KAAK,KAAK,aAAa,cAAc,UAAU;AACxE,+BAAU,KAAK,QAAQ,gBAAgB,CAAC;AACxC,KAAG,cAAc,sBAAkB,4CAAuB,IAAI,CAAC;AAC/D,UAAQ,IAAI,0CAAqC,gBAAgB,EAAE;AAGnE,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,WAAW;AAC/D,+BAAU,KAAK,QAAQ,UAAU,CAAC;AAClC,QAAM,cAAU,oCAAqB,YAAY,gBAAgB,oBAAgB,4CAAuB,IAAI,CAAC;AAC7G,UAAQ,IAAI,UACR,kEACA,8CAAyC;AAG7C,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,eAAe;AACnE,MAAI,GAAG,WAAW,UAAU,GAAG;AAC7B,UAAM,UAAU,GAAG,aAAa,YAAY,MAAM;AAClD,QAAI,QAAQ,SAAS,WAAW,KAAK,QAAQ,SAAS,WAAW,GAAG;AAClE,SAAG,WAAW,UAAU;AACxB,cAAQ,IAAI,6EAAwE;AAAA,IACtF;AAAA,EACF;AACF;AAEO,SAAS,YAAY,aAA2B;AAErD,QAAM,UAAU,KAAK,KAAK,aAAa,UAAU,OAAO,UAAU;AAClE,MAAI,GAAG,WAAW,OAAO,GAAG;AAC1B,UAAM,aAAS,wBAAS,OAAO;AAC/B,QAAI,OAAO,aAAa,mCAAqB,GAAG;AAC9C,aAAO,OAAO,WAAW,mCAAqB;AAC9C,UAAI,OAAO,KAAK,OAAO,UAAU,EAAE,WAAW,EAAG,QAAO,OAAO;AAC/D,mCAAU,SAAS,MAAM;AACzB,cAAQ,IAAI,qDAAgD;AAAA,IAC9D;AAAA,EACF;AAGA,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,WAAW;AAC/D,UAAI,oCAAqB,YAAY,cAAc,GAAG;AACpD,YAAQ,IAAI,wDAAmD;AAAA,EACjE;AAGA,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,eAAe;AACnE,UAAI,oCAAqB,YAAY,cAAc,GAAG;AACpD,YAAQ,IAAI,4DAAuD;AAAA,EACrE;AACF;AAEO,SAAS,sBAA4B;AAC1C,UAAQ,IAAI,qDAAqD;AACjE,UAAQ,IAAI,iCAAiC;AAC7C,UAAQ,IAAI,kDAAkD;AAChE;",
4
+ "sourcesContent": ["/**\n * JetBrains Junie target.\n *\n * MCP: .junie/mcp/mcp.json (project-level, standard mcpServers format)\n * Rules: .junie/AGENTS.md (preferred guidelines location)\n * Hooks: Only SessionStart (EAP, user-level only) \u2014 not useful for auto-sync\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport {\n ensureDir,\n buildInstructionOpts,\n readJson,\n writeJson,\n KIROGRAPH_COMMAND,\n KIROGRAPH_MCP_ARGS,\n KIROGRAPH_SERVER_NAME,\n upsertGeneratedBlock,\n removeGeneratedBlock,\n} from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst JUNIE_BLOCK_ID = 'junie';\n\nexport function installJunieEarly(projectRoot: string): void {\n // Write MCP to .junie/mcp/mcp.json (project-level)\n const mcpPath = path.join(projectRoot, '.junie', 'mcp', 'mcp.json');\n ensureDir(path.dirname(mcpPath));\n const config = readJson(mcpPath);\n config.mcpServers = config.mcpServers ?? {};\n config.mcpServers[KIROGRAPH_SERVER_NAME] = {\n command: KIROGRAPH_COMMAND,\n args: KIROGRAPH_MCP_ARGS,\n };\n writeJson(mcpPath, config);\n console.log(` \u2713 Junie MCP server registered in ${mcpPath}`);\n}\n\nexport function installJunieLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory, undefined, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'junie.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 Junie instructions written to ${instructionsPath}`);\n\n // Write to .junie/AGENTS.md (preferred guidelines location)\n const agentsPath = path.join(projectRoot, '.junie', 'AGENTS.md');\n ensureDir(path.dirname(agentsPath));\n const changed = upsertGeneratedBlock(agentsPath, JUNIE_BLOCK_ID, '## KiroGraph', buildAgentInstructions(opts));\n console.log(changed\n ? ` \u2713 .junie/AGENTS.md updated with KiroGraph instructions`\n : ` \u2713 .junie/AGENTS.md already up to date`);\n\n // Remove legacy .junie/guidelines.md if it was created by us\n const legacyPath = path.join(projectRoot, '.junie', 'guidelines.md');\n if (fs.existsSync(legacyPath)) {\n const content = fs.readFileSync(legacyPath, 'utf8');\n if (content.includes('kirograph') || content.includes('KiroGraph')) {\n fs.unlinkSync(legacyPath);\n console.log(` \u2713 Removed legacy .junie/guidelines.md (migrated to .junie/AGENTS.md)`);\n }\n }\n}\n\nexport function uninitJunie(projectRoot: string): void {\n // Remove MCP entry\n const mcpPath = path.join(projectRoot, '.junie', 'mcp', 'mcp.json');\n if (fs.existsSync(mcpPath)) {\n const config = readJson(mcpPath);\n if (config.mcpServers?.[KIROGRAPH_SERVER_NAME]) {\n delete config.mcpServers[KIROGRAPH_SERVER_NAME];\n if (Object.keys(config.mcpServers).length === 0) delete config.mcpServers;\n writeJson(mcpPath, config);\n console.log(` \u2713 Removed kirograph from .junie/mcp/mcp.json`);\n }\n }\n\n // Remove guidelines block\n const agentsPath = path.join(projectRoot, '.junie', 'AGENTS.md');\n if (removeGeneratedBlock(agentsPath, JUNIE_BLOCK_ID)) {\n console.log(` \u2713 Removed KiroGraph block from .junie/AGENTS.md`);\n }\n\n // Also check legacy path\n const legacyPath = path.join(projectRoot, '.junie', 'guidelines.md');\n if (removeGeneratedBlock(legacyPath, JUNIE_BLOCK_ID)) {\n console.log(` \u2713 Removed KiroGraph block from .junie/guidelines.md`);\n }\n}\n\nexport function printJunieNextSteps(): void {\n console.log('\\n Done! Restart Junie for the MCP server to load.');\n console.log(' MCP is in .junie/mcp/mcp.json');\n console.log(' KiroGraph guidelines are in .junie/AGENTS.md\\n');\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,SAAoB;AACpB,WAAsB;AAEtB,oBAUO;AACP,0BAAuC;AAEvC,MAAM,iBAAiB;AAEhB,SAAS,kBAAkB,aAA2B;AAE3D,QAAM,UAAU,KAAK,KAAK,aAAa,UAAU,OAAO,UAAU;AAClE,+BAAU,KAAK,QAAQ,OAAO,CAAC;AAC/B,QAAM,aAAS,wBAAS,OAAO;AAC/B,SAAO,aAAa,OAAO,cAAc,CAAC;AAC1C,SAAO,WAAW,mCAAqB,IAAI;AAAA,IACzC,SAAS;AAAA,IACT,MAAM;AAAA,EACR;AACA,+BAAU,SAAS,MAAM;AACzB,UAAQ,IAAI,2CAAsC,OAAO,EAAE;AAC7D;AAEO,SAAS,iBAAiB,aAAqB,aAAmC,uBAAgC,cAAwB,YAAsB,YAAsB,gBAA0B,oBAA8B,gBAAgC;AACnR,QAAM,WAAO,oCAAqB,aAAa,uBAAuB,cAAc,QAAW,YAAY,YAAY,gBAAgB,oBAAoB,cAAc;AAEzK,QAAM,mBAAmB,KAAK,KAAK,aAAa,cAAc,UAAU;AACxE,+BAAU,KAAK,QAAQ,gBAAgB,CAAC;AACxC,KAAG,cAAc,sBAAkB,4CAAuB,IAAI,CAAC;AAC/D,UAAQ,IAAI,0CAAqC,gBAAgB,EAAE;AAGnE,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,WAAW;AAC/D,+BAAU,KAAK,QAAQ,UAAU,CAAC;AAClC,QAAM,cAAU,oCAAqB,YAAY,gBAAgB,oBAAgB,4CAAuB,IAAI,CAAC;AAC7G,UAAQ,IAAI,UACR,kEACA,8CAAyC;AAG7C,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,eAAe;AACnE,MAAI,GAAG,WAAW,UAAU,GAAG;AAC7B,UAAM,UAAU,GAAG,aAAa,YAAY,MAAM;AAClD,QAAI,QAAQ,SAAS,WAAW,KAAK,QAAQ,SAAS,WAAW,GAAG;AAClE,SAAG,WAAW,UAAU;AACxB,cAAQ,IAAI,6EAAwE;AAAA,IACtF;AAAA,EACF;AACF;AAEO,SAAS,YAAY,aAA2B;AAErD,QAAM,UAAU,KAAK,KAAK,aAAa,UAAU,OAAO,UAAU;AAClE,MAAI,GAAG,WAAW,OAAO,GAAG;AAC1B,UAAM,aAAS,wBAAS,OAAO;AAC/B,QAAI,OAAO,aAAa,mCAAqB,GAAG;AAC9C,aAAO,OAAO,WAAW,mCAAqB;AAC9C,UAAI,OAAO,KAAK,OAAO,UAAU,EAAE,WAAW,EAAG,QAAO,OAAO;AAC/D,mCAAU,SAAS,MAAM;AACzB,cAAQ,IAAI,qDAAgD;AAAA,IAC9D;AAAA,EACF;AAGA,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,WAAW;AAC/D,UAAI,oCAAqB,YAAY,cAAc,GAAG;AACpD,YAAQ,IAAI,wDAAmD;AAAA,EACjE;AAGA,QAAM,aAAa,KAAK,KAAK,aAAa,UAAU,eAAe;AACnE,UAAI,oCAAqB,YAAY,cAAc,GAAG;AACpD,YAAQ,IAAI,4DAAuD;AAAA,EACrE;AACF;AAEO,SAAS,sBAA4B;AAC1C,UAAQ,IAAI,qDAAqD;AACjE,UAAQ,IAAI,iCAAiC;AAC7C,UAAQ,IAAI,kDAAkD;AAChE;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Kilo Code target.
3
+ *
4
+ * MCP: kilo.json or .kilo/kilo.json (project-level, "mcp" key with type: "local")
5
+ * Rules: .kilo/rules/kirograph.md + referenced in kilo.jsonc "instructions" array
6
+ */
7
+ import { CavemanMode } from '../caveman';
8
+ export declare function installKiloEarly(projectRoot: string): void;
9
+ export declare function installKiloLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void;
10
+ export declare function uninitKilo(projectRoot: string): void;
11
+ export declare function printKiloNextSteps(): void;
12
+ //# sourceMappingURL=kilo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kilo.d.ts","sourceRoot":"","sources":["../../../../src/bin/installer/targets/kilo.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAczC,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAY1D;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CA2BlR;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAoCpD;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC"}
@@ -52,8 +52,8 @@ function installKiloEarly(projectRoot) {
52
52
  (0, import_common.writeJson)(configPath, config);
53
53
  console.log(` \u2713 Kilo Code MCP server registered in ${configPath}`);
54
54
  }
55
- function installKiloLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory) {
56
- const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory);
55
+ function installKiloLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns) {
56
+ const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, void 0, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);
57
57
  const instructionsPath = path.join(projectRoot, ".kirograph", "kilo.md");
58
58
  (0, import_common.ensureDir)(path.dirname(instructionsPath));
59
59
  fs.writeFileSync(instructionsPath, (0, import_instructions.buildAgentInstructions)(opts));
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bin/installer/targets/kilo.ts"],
4
- "sourcesContent": ["/**\n * Kilo Code target.\n *\n * MCP: kilo.json or .kilo/kilo.json (project-level, \"mcp\" key with type: \"local\")\n * Rules: .kilo/rules/kirograph.md + referenced in kilo.jsonc \"instructions\" array\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport {\n ensureDir,\n buildInstructionOpts,\n readJson,\n writeJson,\n KIROGRAPH_COMMAND,\n KIROGRAPH_MCP_ARGS,\n} from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst KILO_MCP_NAME = 'kirograph';\nconst KILO_RULES_FILE = '.kilo/rules/kirograph.md';\n\nexport function installKiloEarly(projectRoot: string): void {\n // Write MCP to kilo.json (project-level)\n const configPath = path.join(projectRoot, 'kilo.json');\n const config = readJson(configPath);\n config.mcp = config.mcp ?? {};\n config.mcp[KILO_MCP_NAME] = {\n type: 'local',\n command: [KIROGRAPH_COMMAND, ...KIROGRAPH_MCP_ARGS],\n enabled: true,\n };\n writeJson(configPath, config);\n console.log(` \u2713 Kilo Code MCP server registered in ${configPath}`);\n}\n\nexport function installKiloLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'kilo.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 Kilo Code instructions written to ${instructionsPath}`);\n\n // Write rules file inside .kilo/rules/\n const rulesDir = path.join(projectRoot, '.kilo', 'rules');\n ensureDir(rulesDir);\n const rulePath = path.join(rulesDir, 'kirograph.md');\n fs.writeFileSync(rulePath, buildAgentInstructions(opts));\n console.log(` \u2713 Kilo Code rule written to ${rulePath}`);\n\n // Add to instructions array in kilo.jsonc (or kilo.json)\n const jsoncPath = path.join(projectRoot, 'kilo.jsonc');\n const jsonPath = path.join(projectRoot, 'kilo.json');\n const cfgPath = fs.existsSync(jsoncPath) ? jsoncPath : jsonPath;\n const cfg = readJson(cfgPath);\n const instructions: string[] = cfg.instructions ?? [];\n if (!instructions.includes(KILO_RULES_FILE)) {\n instructions.push(KILO_RULES_FILE);\n }\n cfg.instructions = instructions;\n writeJson(cfgPath, cfg);\n console.log(` \u2713 Kilo Code instructions referenced in ${cfgPath}`);\n}\n\nexport function uninitKilo(projectRoot: string): void {\n // Remove MCP entry\n const configPath = path.join(projectRoot, 'kilo.json');\n if (fs.existsSync(configPath)) {\n const config = readJson(configPath);\n if (config.mcp?.[KILO_MCP_NAME]) {\n delete config.mcp[KILO_MCP_NAME];\n if (Object.keys(config.mcp).length === 0) delete config.mcp;\n writeJson(configPath, config);\n console.log(` \u2713 Removed kirograph from kilo.json mcp`);\n }\n }\n\n // Remove instructions reference\n const jsoncPath = path.join(projectRoot, 'kilo.jsonc');\n const jsonPath = path.join(projectRoot, 'kilo.json');\n const cfgPath = fs.existsSync(jsoncPath) ? jsoncPath : jsonPath;\n if (fs.existsSync(cfgPath)) {\n const cfg = readJson(cfgPath);\n if (Array.isArray(cfg.instructions)) {\n const idx = cfg.instructions.indexOf(KILO_RULES_FILE);\n if (idx !== -1) {\n cfg.instructions.splice(idx, 1);\n if (cfg.instructions.length === 0) delete cfg.instructions;\n writeJson(cfgPath, cfg);\n console.log(` \u2713 Removed kirograph instructions from ${cfgPath}`);\n }\n }\n }\n\n // Remove rule file\n const rulePath = path.join(projectRoot, '.kilo', 'rules', 'kirograph.md');\n if (fs.existsSync(rulePath)) {\n fs.unlinkSync(rulePath);\n console.log(` \u2713 Removed .kilo/rules/kirograph.md`);\n }\n}\n\nexport function printKiloNextSteps(): void {\n console.log('\\n Done! Restart Kilo Code for the MCP server to load.');\n console.log(' MCP is in kilo.json');\n console.log(' KiroGraph rule is in .kilo/rules/kirograph.md\\n');\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * Kilo Code target.\n *\n * MCP: kilo.json or .kilo/kilo.json (project-level, \"mcp\" key with type: \"local\")\n * Rules: .kilo/rules/kirograph.md + referenced in kilo.jsonc \"instructions\" array\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport {\n ensureDir,\n buildInstructionOpts,\n readJson,\n writeJson,\n KIROGRAPH_COMMAND,\n KIROGRAPH_MCP_ARGS,\n} from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst KILO_MCP_NAME = 'kirograph';\nconst KILO_RULES_FILE = '.kilo/rules/kirograph.md';\n\nexport function installKiloEarly(projectRoot: string): void {\n // Write MCP to kilo.json (project-level)\n const configPath = path.join(projectRoot, 'kilo.json');\n const config = readJson(configPath);\n config.mcp = config.mcp ?? {};\n config.mcp[KILO_MCP_NAME] = {\n type: 'local',\n command: [KIROGRAPH_COMMAND, ...KIROGRAPH_MCP_ARGS],\n enabled: true,\n };\n writeJson(configPath, config);\n console.log(` \u2713 Kilo Code MCP server registered in ${configPath}`);\n}\n\nexport function installKiloLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory, undefined, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'kilo.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 Kilo Code instructions written to ${instructionsPath}`);\n\n // Write rules file inside .kilo/rules/\n const rulesDir = path.join(projectRoot, '.kilo', 'rules');\n ensureDir(rulesDir);\n const rulePath = path.join(rulesDir, 'kirograph.md');\n fs.writeFileSync(rulePath, buildAgentInstructions(opts));\n console.log(` \u2713 Kilo Code rule written to ${rulePath}`);\n\n // Add to instructions array in kilo.jsonc (or kilo.json)\n const jsoncPath = path.join(projectRoot, 'kilo.jsonc');\n const jsonPath = path.join(projectRoot, 'kilo.json');\n const cfgPath = fs.existsSync(jsoncPath) ? jsoncPath : jsonPath;\n const cfg = readJson(cfgPath);\n const instructions: string[] = cfg.instructions ?? [];\n if (!instructions.includes(KILO_RULES_FILE)) {\n instructions.push(KILO_RULES_FILE);\n }\n cfg.instructions = instructions;\n writeJson(cfgPath, cfg);\n console.log(` \u2713 Kilo Code instructions referenced in ${cfgPath}`);\n}\n\nexport function uninitKilo(projectRoot: string): void {\n // Remove MCP entry\n const configPath = path.join(projectRoot, 'kilo.json');\n if (fs.existsSync(configPath)) {\n const config = readJson(configPath);\n if (config.mcp?.[KILO_MCP_NAME]) {\n delete config.mcp[KILO_MCP_NAME];\n if (Object.keys(config.mcp).length === 0) delete config.mcp;\n writeJson(configPath, config);\n console.log(` \u2713 Removed kirograph from kilo.json mcp`);\n }\n }\n\n // Remove instructions reference\n const jsoncPath = path.join(projectRoot, 'kilo.jsonc');\n const jsonPath = path.join(projectRoot, 'kilo.json');\n const cfgPath = fs.existsSync(jsoncPath) ? jsoncPath : jsonPath;\n if (fs.existsSync(cfgPath)) {\n const cfg = readJson(cfgPath);\n if (Array.isArray(cfg.instructions)) {\n const idx = cfg.instructions.indexOf(KILO_RULES_FILE);\n if (idx !== -1) {\n cfg.instructions.splice(idx, 1);\n if (cfg.instructions.length === 0) delete cfg.instructions;\n writeJson(cfgPath, cfg);\n console.log(` \u2713 Removed kirograph instructions from ${cfgPath}`);\n }\n }\n }\n\n // Remove rule file\n const rulePath = path.join(projectRoot, '.kilo', 'rules', 'kirograph.md');\n if (fs.existsSync(rulePath)) {\n fs.unlinkSync(rulePath);\n console.log(` \u2713 Removed .kilo/rules/kirograph.md`);\n }\n}\n\nexport function printKiloNextSteps(): void {\n console.log('\\n Done! Restart Kilo Code for the MCP server to load.');\n console.log(' MCP is in kilo.json');\n console.log(' KiroGraph rule is in .kilo/rules/kirograph.md\\n');\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,5 @@
1
+ import { CavemanMode } from '../caveman';
2
+ export declare function installKiroEarly(projectRoot: string): void;
3
+ export declare function installKiroLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void;
4
+ export declare function printKiroNextSteps(): void;
5
+ //# sourceMappingURL=kiro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kiro.d.ts","sourceRoot":"","sources":["../../../../src/bin/installer/targets/kiro.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAMzC,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAMlR;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC"}
@@ -43,12 +43,12 @@ function installKiroEarly(projectRoot) {
43
43
  (0, import_mcp.writeMcpConfig)(kiroDir);
44
44
  (0, import_hooks.writeHooks)(kiroDir);
45
45
  }
46
- function installKiroLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData) {
46
+ function installKiroLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns, enableWatchmen, watchmenSynthesisMode) {
47
47
  const kiroDir = path.join(projectRoot, ".kiro");
48
48
  const enableCompression = shellCompressionLevel !== "off";
49
- (0, import_hooks.writeHooks)(kiroDir, { enableCompression, enableMemory });
50
- (0, import_steering.writeSteering)(kiroDir, { cavemanMode, enableCompression, shellCompressionLevel, enableMemory, enableDocs, enableData });
51
- (0, import_cli_agent.writeCliAgent)(kiroDir);
49
+ (0, import_hooks.writeHooks)(kiroDir, { enableCompression, enableMemory, enableWatchmen, watchmenSynthesisMode });
50
+ (0, import_steering.writeSteering)(kiroDir, { cavemanMode, enableCompression, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns });
51
+ (0, import_cli_agent.writeCliAgent)(kiroDir, { enableSecurity, enableArchitecture, enablePatterns });
52
52
  }
53
53
  function printKiroNextSteps() {
54
54
  console.log("\n Done! Restart Kiro IDE for the MCP server to load.");
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bin/installer/targets/kiro.ts"],
4
- "sourcesContent": ["import * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport { writeCliAgent } from '../cli-agent';\nimport { writeHooks } from '../hooks';\nimport { writeMcpConfig } from '../mcp';\nimport { writeSteering } from '../steering';\n\nexport function installKiroEarly(projectRoot: string): void {\n const kiroDir = path.join(projectRoot, '.kiro');\n writeMcpConfig(kiroDir);\n writeHooks(kiroDir);\n}\n\nexport function installKiroLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean): void {\n const kiroDir = path.join(projectRoot, '.kiro');\n const enableCompression = shellCompressionLevel !== 'off';\n // Re-write hooks with compression and memory awareness\n writeHooks(kiroDir, { enableCompression, enableMemory });\n writeSteering(kiroDir, { cavemanMode, enableCompression, shellCompressionLevel: shellCompressionLevel as any, enableMemory, enableDocs, enableData });\n writeCliAgent(kiroDir);\n}\n\nexport function printKiroNextSteps(): void {\n console.log('\\n Done! Restart Kiro IDE for the MCP server to load.');\n console.log(' For Kiro CLI, use the \"kirograph\" agent: kiro-cli --agent kirograph\\n');\n}\n\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAAsB;AAEtB,uBAA8B;AAC9B,mBAA2B;AAC3B,iBAA+B;AAC/B,sBAA8B;AAEvB,SAAS,iBAAiB,aAA2B;AAC1D,QAAM,UAAU,KAAK,KAAK,aAAa,OAAO;AAC9C,iCAAe,OAAO;AACtB,+BAAW,OAAO;AACpB;AAEO,SAAS,gBAAgB,aAAqB,aAAmC,uBAAgC,cAAwB,YAAsB,YAA4B;AAChM,QAAM,UAAU,KAAK,KAAK,aAAa,OAAO;AAC9C,QAAM,oBAAoB,0BAA0B;AAEpD,+BAAW,SAAS,EAAE,mBAAmB,aAAa,CAAC;AACvD,qCAAc,SAAS,EAAE,aAAa,mBAAmB,uBAAqD,cAAc,YAAY,WAAW,CAAC;AACpJ,sCAAc,OAAO;AACvB;AAEO,SAAS,qBAA2B;AACzC,UAAQ,IAAI,wDAAwD;AACpE,UAAQ,IAAI,yEAAyE;AACvF;",
4
+ "sourcesContent": ["import * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport { writeCliAgent } from '../cli-agent';\nimport { writeHooks } from '../hooks';\nimport { writeMcpConfig } from '../mcp';\nimport { writeSteering } from '../steering';\n\nexport function installKiroEarly(projectRoot: string): void {\n const kiroDir = path.join(projectRoot, '.kiro');\n writeMcpConfig(kiroDir);\n writeHooks(kiroDir);\n}\n\nexport function installKiroLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean, enableWatchmen?: boolean, watchmenSynthesisMode?: 'local' | 'agent'): void {\n const kiroDir = path.join(projectRoot, '.kiro');\n const enableCompression = shellCompressionLevel !== 'off';\n writeHooks(kiroDir, { enableCompression, enableMemory, enableWatchmen, watchmenSynthesisMode });\n writeSteering(kiroDir, { cavemanMode, enableCompression, shellCompressionLevel: shellCompressionLevel as any, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns });\n writeCliAgent(kiroDir, { enableSecurity, enableArchitecture, enablePatterns });\n}\n\nexport function printKiroNextSteps(): void {\n console.log('\\n Done! Restart Kiro IDE for the MCP server to load.');\n console.log(' For Kiro CLI, use the \"kirograph\" agent: kiro-cli --agent kirograph\\n');\n}\n\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAAsB;AAEtB,uBAA8B;AAC9B,mBAA2B;AAC3B,iBAA+B;AAC/B,sBAA8B;AAEvB,SAAS,iBAAiB,aAA2B;AAC1D,QAAM,UAAU,KAAK,KAAK,aAAa,OAAO;AAC9C,iCAAe,OAAO;AACtB,+BAAW,OAAO;AACpB;AAEO,SAAS,gBAAgB,aAAqB,aAAmC,uBAAgC,cAAwB,YAAsB,YAAsB,gBAA0B,oBAA8B,gBAA0B,gBAA0B,uBAAiD;AACvV,QAAM,UAAU,KAAK,KAAK,aAAa,OAAO;AAC9C,QAAM,oBAAoB,0BAA0B;AACpD,+BAAW,SAAS,EAAE,mBAAmB,cAAc,gBAAgB,sBAAsB,CAAC;AAC9F,qCAAc,SAAS,EAAE,aAAa,mBAAmB,uBAAqD,cAAc,YAAY,YAAY,gBAAgB,oBAAoB,eAAe,CAAC;AACxM,sCAAc,SAAS,EAAE,gBAAgB,oBAAoB,eAAe,CAAC;AAC/E;AAEO,SAAS,qBAA2B;AACzC,UAAQ,IAAI,wDAAwD;AACpE,UAAQ,IAAI,yEAAyE;AACvF;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * OpenCode target.
3
+ *
4
+ * MCP: .opencode.json (mcp field with type: "local")
5
+ * Hooks: .opencode/plugins/kirograph-sync.js (JS plugin)
6
+ * Instructions: .opencode.json (instructions field)
7
+ */
8
+ import { CavemanMode } from '../caveman';
9
+ export declare function installOpenCodeEarly(projectRoot: string): void;
10
+ export declare function installOpenCodeLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void;
11
+ export declare function uninitOpenCode(projectRoot: string): void;
12
+ export declare function printOpenCodeNextSteps(): void;
13
+ //# sourceMappingURL=opencode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/bin/installer/targets/opencode.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAwBzC,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAiB9D;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CA0BtR;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAkCxD;AAED,wBAAgB,sBAAsB,IAAI,IAAI,CAI7C"}
@@ -71,8 +71,8 @@ function installOpenCodeEarly(projectRoot) {
71
71
  (0, import_common.writeJson)(configPath, config);
72
72
  console.log(` \u2713 OpenCode MCP server registered in ${configPath}`);
73
73
  }
74
- function installOpenCodeLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory) {
75
- const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, true);
74
+ function installOpenCodeLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns) {
75
+ const opts = (0, import_common.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, true, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);
76
76
  const instructionsPath = path.join(projectRoot, ".kirograph", "opencode.md");
77
77
  (0, import_common.ensureDir)(path.dirname(instructionsPath));
78
78
  fs.writeFileSync(instructionsPath, (0, import_instructions.buildAgentInstructions)(opts));
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bin/installer/targets/opencode.ts"],
4
- "sourcesContent": ["/**\n * OpenCode target.\n *\n * MCP: .opencode.json (mcp field with type: \"local\")\n * Hooks: .opencode/plugins/kirograph-sync.js (JS plugin)\n * Instructions: .opencode.json (instructions field)\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport { ensureDir, buildInstructionOpts, readJson, writeJson } from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst OPENCODE_CONFIG = '.opencode.json';\nconst OPENCODE_MCP_NAME = 'kirograph';\nconst OPENCODE_INSTRUCTIONS_PATH = '.kirograph/opencode.md';\nconst OPENCODE_PLUGIN_FILE = 'kirograph-sync.js';\n\nconst OPENCODE_PLUGIN_CONTENT = `/**\n * KiroGraph auto-sync plugin for OpenCode.\n * Syncs the KiroGraph index when the agent session goes idle.\n */\nexport const KirographSync = async ({ $ }) => {\n return {\n event: async ({ event }) => {\n if (event.type === \"session.idle\") {\n await $\\`kirograph sync --quiet 2>/dev/null || true\\`\n }\n },\n }\n}\n`;\n\nexport function installOpenCodeEarly(projectRoot: string): void {\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n const config = readJson(configPath);\n\n config.mcp = config.mcp ?? {};\n config.mcp[OPENCODE_MCP_NAME] = {\n type: 'local',\n command: ['kirograph', 'serve', '--mcp'],\n enabled: true,\n };\n\n if (!config.$schema) {\n config.$schema = 'https://opencode.ai/config.json';\n }\n\n writeJson(configPath, config);\n console.log(` \u2713 OpenCode MCP server registered in ${configPath}`);\n}\n\nexport function installOpenCodeLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory, true);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'opencode.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 OpenCode instructions written to ${instructionsPath}`);\n\n // Add instructions reference to .opencode.json\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n const config = readJson(configPath);\n\n const instructions: string[] = config.instructions ?? [];\n if (!instructions.includes(OPENCODE_INSTRUCTIONS_PATH)) {\n instructions.push(OPENCODE_INSTRUCTIONS_PATH);\n }\n config.instructions = instructions;\n writeJson(configPath, config);\n console.log(` \u2713 OpenCode instructions referenced in ${configPath}`);\n\n // Write sync plugin\n const pluginsDir = path.join(projectRoot, '.opencode', 'plugins');\n ensureDir(pluginsDir);\n const pluginPath = path.join(pluginsDir, OPENCODE_PLUGIN_FILE);\n fs.writeFileSync(pluginPath, OPENCODE_PLUGIN_CONTENT);\n console.log(` \u2713 OpenCode sync plugin written to ${pluginPath}`);\n}\n\nexport function uninitOpenCode(projectRoot: string): void {\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n if (fs.existsSync(configPath)) {\n const config = readJson(configPath);\n let changed = false;\n\n // Remove MCP entry\n if (config.mcp?.[OPENCODE_MCP_NAME]) {\n delete config.mcp[OPENCODE_MCP_NAME];\n if (Object.keys(config.mcp).length === 0) delete config.mcp;\n changed = true;\n console.log(` \u2713 Removed kirograph from .opencode.json mcp`);\n }\n\n // Remove instructions reference\n if (Array.isArray(config.instructions)) {\n const idx = config.instructions.indexOf(OPENCODE_INSTRUCTIONS_PATH);\n if (idx !== -1) {\n config.instructions.splice(idx, 1);\n if (config.instructions.length === 0) delete config.instructions;\n changed = true;\n console.log(` \u2713 Removed kirograph instructions from .opencode.json`);\n }\n }\n\n if (changed) writeJson(configPath, config);\n }\n\n // Remove plugin\n const pluginPath = path.join(projectRoot, '.opencode', 'plugins', OPENCODE_PLUGIN_FILE);\n if (fs.existsSync(pluginPath)) {\n fs.unlinkSync(pluginPath);\n console.log(` \u2713 Removed OpenCode sync plugin`);\n }\n}\n\nexport function printOpenCodeNextSteps(): void {\n console.log('\\n Done! Restart OpenCode for the MCP server and sync plugin to load.');\n console.log(' MCP and instructions are in .opencode.json');\n console.log(' Auto-sync plugin is in .opencode/plugins/kirograph-sync.js\\n');\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * OpenCode target.\n *\n * MCP: .opencode.json (mcp field with type: \"local\")\n * Hooks: .opencode/plugins/kirograph-sync.js (JS plugin)\n * Instructions: .opencode.json (instructions field)\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { CavemanMode } from '../caveman';\nimport { ensureDir, buildInstructionOpts, readJson, writeJson } from '../common';\nimport { buildAgentInstructions } from '../instructions';\n\nconst OPENCODE_CONFIG = '.opencode.json';\nconst OPENCODE_MCP_NAME = 'kirograph';\nconst OPENCODE_INSTRUCTIONS_PATH = '.kirograph/opencode.md';\nconst OPENCODE_PLUGIN_FILE = 'kirograph-sync.js';\n\nconst OPENCODE_PLUGIN_CONTENT = `/**\n * KiroGraph auto-sync plugin for OpenCode.\n * Syncs the KiroGraph index when the agent session goes idle.\n */\nexport const KirographSync = async ({ $ }) => {\n return {\n event: async ({ event }) => {\n if (event.type === \"session.idle\") {\n await $\\`kirograph sync --quiet 2>/dev/null || true\\`\n }\n },\n }\n}\n`;\n\nexport function installOpenCodeEarly(projectRoot: string): void {\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n const config = readJson(configPath);\n\n config.mcp = config.mcp ?? {};\n config.mcp[OPENCODE_MCP_NAME] = {\n type: 'local',\n command: ['kirograph', 'serve', '--mcp'],\n enabled: true,\n };\n\n if (!config.$schema) {\n config.$schema = 'https://opencode.ai/config.json';\n }\n\n writeJson(configPath, config);\n console.log(` \u2713 OpenCode MCP server registered in ${configPath}`);\n}\n\nexport function installOpenCodeLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void {\n const opts = buildInstructionOpts(cavemanMode, shellCompressionLevel, enableMemory, true, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns);\n\n const instructionsPath = path.join(projectRoot, '.kirograph', 'opencode.md');\n ensureDir(path.dirname(instructionsPath));\n fs.writeFileSync(instructionsPath, buildAgentInstructions(opts));\n console.log(` \u2713 OpenCode instructions written to ${instructionsPath}`);\n\n // Add instructions reference to .opencode.json\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n const config = readJson(configPath);\n\n const instructions: string[] = config.instructions ?? [];\n if (!instructions.includes(OPENCODE_INSTRUCTIONS_PATH)) {\n instructions.push(OPENCODE_INSTRUCTIONS_PATH);\n }\n config.instructions = instructions;\n writeJson(configPath, config);\n console.log(` \u2713 OpenCode instructions referenced in ${configPath}`);\n\n // Write sync plugin\n const pluginsDir = path.join(projectRoot, '.opencode', 'plugins');\n ensureDir(pluginsDir);\n const pluginPath = path.join(pluginsDir, OPENCODE_PLUGIN_FILE);\n fs.writeFileSync(pluginPath, OPENCODE_PLUGIN_CONTENT);\n console.log(` \u2713 OpenCode sync plugin written to ${pluginPath}`);\n}\n\nexport function uninitOpenCode(projectRoot: string): void {\n const configPath = path.join(projectRoot, OPENCODE_CONFIG);\n if (fs.existsSync(configPath)) {\n const config = readJson(configPath);\n let changed = false;\n\n // Remove MCP entry\n if (config.mcp?.[OPENCODE_MCP_NAME]) {\n delete config.mcp[OPENCODE_MCP_NAME];\n if (Object.keys(config.mcp).length === 0) delete config.mcp;\n changed = true;\n console.log(` \u2713 Removed kirograph from .opencode.json mcp`);\n }\n\n // Remove instructions reference\n if (Array.isArray(config.instructions)) {\n const idx = config.instructions.indexOf(OPENCODE_INSTRUCTIONS_PATH);\n if (idx !== -1) {\n config.instructions.splice(idx, 1);\n if (config.instructions.length === 0) delete config.instructions;\n changed = true;\n console.log(` \u2713 Removed kirograph instructions from .opencode.json`);\n }\n }\n\n if (changed) writeJson(configPath, config);\n }\n\n // Remove plugin\n const pluginPath = path.join(projectRoot, '.opencode', 'plugins', OPENCODE_PLUGIN_FILE);\n if (fs.existsSync(pluginPath)) {\n fs.unlinkSync(pluginPath);\n console.log(` \u2713 Removed OpenCode sync plugin`);\n }\n}\n\nexport function printOpenCodeNextSteps(): void {\n console.log('\\n Done! Restart OpenCode for the MCP server and sync plugin to load.');\n console.log(' MCP and instructions are in .opencode.json');\n console.log(' Auto-sync plugin is in .opencode/plugins/kirograph-sync.js\\n');\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,6 @@
1
+ import { CavemanMode } from '../caveman';
2
+ export declare function installOpenHandsEarly(projectRoot: string): void;
3
+ export declare function installOpenHandsLate(projectRoot: string, cavemanMode?: CavemanMode | 'off', shellCompressionLevel?: string, enableMemory?: boolean, enableDocs?: boolean, enableData?: boolean, enableSecurity?: boolean, enableArchitecture?: boolean, enablePatterns?: boolean): void;
4
+ export declare function uninitOpenHands(projectRoot: string): void;
5
+ export declare function printOpenHandsNextSteps(): void;
6
+ //# sourceMappingURL=openhands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openhands.d.ts","sourceRoot":"","sources":["../../../../src/bin/installer/targets/openhands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAgBzC,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAW/D;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAWvR;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAezD;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAG9C"}
@@ -52,13 +52,13 @@ function installOpenHandsEarly(projectRoot) {
52
52
  (0, import_common.writeJson)(configPath, config);
53
53
  console.log(` \u2713 OpenHands MCP server registered in ${configPath}`);
54
54
  }
55
- function installOpenHandsLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory) {
55
+ function installOpenHandsLate(projectRoot, cavemanMode, shellCompressionLevel, enableMemory, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns) {
56
56
  const instructionsPath = path.join(projectRoot, ".kirograph", "openhands.md");
57
57
  (0, import_common.ensureDir)(path.dirname(instructionsPath));
58
- fs.writeFileSync(instructionsPath, (0, import_instructions.buildAgentInstructions)((0, import_common2.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory)));
58
+ fs.writeFileSync(instructionsPath, (0, import_instructions.buildAgentInstructions)((0, import_common2.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, void 0, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns)));
59
59
  console.log(` \u2713 OpenHands instructions written to ${instructionsPath}`);
60
60
  const agentsPath = path.join(projectRoot, "AGENTS.md");
61
- const changed = (0, import_common.upsertGeneratedBlock)(agentsPath, OPENHANDS_BLOCK_ID, "## KiroGraph", (0, import_instructions.buildAgentInstructions)((0, import_common2.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory)));
61
+ const changed = (0, import_common.upsertGeneratedBlock)(agentsPath, OPENHANDS_BLOCK_ID, "## KiroGraph", (0, import_instructions.buildAgentInstructions)((0, import_common2.buildInstructionOpts)(cavemanMode, shellCompressionLevel, enableMemory, void 0, enableDocs, enableData, enableSecurity, enableArchitecture, enablePatterns)));
62
62
  console.log(changed ? ` \u2713 AGENTS.md updated with KiroGraph instructions (OpenHands)` : ` \u2713 AGENTS.md already up to date`);
63
63
  }
64
64
  function uninitOpenHands(projectRoot) {