@vizalice/codegraph 1.5.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 (821) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +872 -0
  3. package/dist/bin/codegraph.d.ts +26 -0
  4. package/dist/bin/codegraph.d.ts.map +1 -0
  5. package/dist/bin/codegraph.js +2324 -0
  6. package/dist/bin/codegraph.js.map +1 -0
  7. package/dist/bin/command-supervision.d.ts +49 -0
  8. package/dist/bin/command-supervision.d.ts.map +1 -0
  9. package/dist/bin/command-supervision.js +95 -0
  10. package/dist/bin/command-supervision.js.map +1 -0
  11. package/dist/bin/fatal-handler.d.ts +20 -0
  12. package/dist/bin/fatal-handler.d.ts.map +1 -0
  13. package/dist/bin/fatal-handler.js +118 -0
  14. package/dist/bin/fatal-handler.js.map +1 -0
  15. package/dist/bin/node-version-check.d.ts +37 -0
  16. package/dist/bin/node-version-check.d.ts.map +1 -0
  17. package/dist/bin/node-version-check.js +79 -0
  18. package/dist/bin/node-version-check.js.map +1 -0
  19. package/dist/bin/uninstall.d.ts +14 -0
  20. package/dist/bin/uninstall.d.ts.map +1 -0
  21. package/dist/bin/uninstall.js +36 -0
  22. package/dist/bin/uninstall.js.map +1 -0
  23. package/dist/context/formatter.d.ts +36 -0
  24. package/dist/context/formatter.d.ts.map +1 -0
  25. package/dist/context/formatter.js +269 -0
  26. package/dist/context/formatter.js.map +1 -0
  27. package/dist/context/index.d.ts +119 -0
  28. package/dist/context/index.d.ts.map +1 -0
  29. package/dist/context/index.js +1333 -0
  30. package/dist/context/index.js.map +1 -0
  31. package/dist/context/markers.d.ts +19 -0
  32. package/dist/context/markers.d.ts.map +1 -0
  33. package/dist/context/markers.js +22 -0
  34. package/dist/context/markers.js.map +1 -0
  35. package/dist/db/index.d.ts +378 -0
  36. package/dist/db/index.d.ts.map +1 -0
  37. package/dist/db/index.js +831 -0
  38. package/dist/db/index.js.map +1 -0
  39. package/dist/db/migrations.d.ts +44 -0
  40. package/dist/db/migrations.d.ts.map +1 -0
  41. package/dist/db/migrations.js +236 -0
  42. package/dist/db/migrations.js.map +1 -0
  43. package/dist/db/queries.d.ts +705 -0
  44. package/dist/db/queries.d.ts.map +1 -0
  45. package/dist/db/queries.js +2435 -0
  46. package/dist/db/queries.js.map +1 -0
  47. package/dist/db/schema.sql +207 -0
  48. package/dist/db/sqlite-adapter.d.ts +55 -0
  49. package/dist/db/sqlite-adapter.d.ts.map +1 -0
  50. package/dist/db/sqlite-adapter.js +135 -0
  51. package/dist/db/sqlite-adapter.js.map +1 -0
  52. package/dist/db/wal-valve.d.ts +119 -0
  53. package/dist/db/wal-valve.d.ts.map +1 -0
  54. package/dist/db/wal-valve.js +290 -0
  55. package/dist/db/wal-valve.js.map +1 -0
  56. package/dist/directory.d.ts +183 -0
  57. package/dist/directory.d.ts.map +1 -0
  58. package/dist/directory.js +797 -0
  59. package/dist/directory.js.map +1 -0
  60. package/dist/errors.d.ts +136 -0
  61. package/dist/errors.d.ts.map +1 -0
  62. package/dist/errors.js +219 -0
  63. package/dist/errors.js.map +1 -0
  64. package/dist/extraction/astro-extractor.d.ts +79 -0
  65. package/dist/extraction/astro-extractor.d.ts.map +1 -0
  66. package/dist/extraction/astro-extractor.js +320 -0
  67. package/dist/extraction/astro-extractor.js.map +1 -0
  68. package/dist/extraction/cfml-extractor.d.ts +107 -0
  69. package/dist/extraction/cfml-extractor.d.ts.map +1 -0
  70. package/dist/extraction/cfml-extractor.js +494 -0
  71. package/dist/extraction/cfml-extractor.js.map +1 -0
  72. package/dist/extraction/dfm-extractor.d.ts +31 -0
  73. package/dist/extraction/dfm-extractor.d.ts.map +1 -0
  74. package/dist/extraction/dfm-extractor.js +151 -0
  75. package/dist/extraction/dfm-extractor.js.map +1 -0
  76. package/dist/extraction/extraction-version.d.ts +25 -0
  77. package/dist/extraction/extraction-version.d.ts.map +1 -0
  78. package/dist/extraction/extraction-version.js +28 -0
  79. package/dist/extraction/extraction-version.js.map +1 -0
  80. package/dist/extraction/function-ref.d.ts +118 -0
  81. package/dist/extraction/function-ref.d.ts.map +1 -0
  82. package/dist/extraction/function-ref.js +733 -0
  83. package/dist/extraction/function-ref.js.map +1 -0
  84. package/dist/extraction/generated-detection.d.ts +66 -0
  85. package/dist/extraction/generated-detection.d.ts.map +1 -0
  86. package/dist/extraction/generated-detection.js +248 -0
  87. package/dist/extraction/generated-detection.js.map +1 -0
  88. package/dist/extraction/grammars.d.ts +138 -0
  89. package/dist/extraction/grammars.d.ts.map +1 -0
  90. package/dist/extraction/grammars.js +694 -0
  91. package/dist/extraction/grammars.js.map +1 -0
  92. package/dist/extraction/index.d.ts +308 -0
  93. package/dist/extraction/index.d.ts.map +1 -0
  94. package/dist/extraction/index.js +2711 -0
  95. package/dist/extraction/index.js.map +1 -0
  96. package/dist/extraction/kernel/decode.d.ts +9 -0
  97. package/dist/extraction/kernel/decode.d.ts.map +1 -0
  98. package/dist/extraction/kernel/decode.js +162 -0
  99. package/dist/extraction/kernel/decode.js.map +1 -0
  100. package/dist/extraction/kernel/index.d.ts +64 -0
  101. package/dist/extraction/kernel/index.d.ts.map +1 -0
  102. package/dist/extraction/kernel/index.js +279 -0
  103. package/dist/extraction/kernel/index.js.map +1 -0
  104. package/dist/extraction/kernel/layout.d.ts +101 -0
  105. package/dist/extraction/kernel/layout.d.ts.map +1 -0
  106. package/dist/extraction/kernel/layout.js +104 -0
  107. package/dist/extraction/kernel/layout.js.map +1 -0
  108. package/dist/extraction/kernel/loader.d.ts +103 -0
  109. package/dist/extraction/kernel/loader.d.ts.map +1 -0
  110. package/dist/extraction/kernel/loader.js +146 -0
  111. package/dist/extraction/kernel/loader.js.map +1 -0
  112. package/dist/extraction/languages/arkts.d.ts +3 -0
  113. package/dist/extraction/languages/arkts.d.ts.map +1 -0
  114. package/dist/extraction/languages/arkts.js +127 -0
  115. package/dist/extraction/languages/arkts.js.map +1 -0
  116. package/dist/extraction/languages/c-cpp.d.ts +124 -0
  117. package/dist/extraction/languages/c-cpp.d.ts.map +1 -0
  118. package/dist/extraction/languages/c-cpp.js +1689 -0
  119. package/dist/extraction/languages/c-cpp.js.map +1 -0
  120. package/dist/extraction/languages/cfquery.d.ts +12 -0
  121. package/dist/extraction/languages/cfquery.d.ts.map +1 -0
  122. package/dist/extraction/languages/cfquery.js +28 -0
  123. package/dist/extraction/languages/cfquery.js.map +1 -0
  124. package/dist/extraction/languages/cfscript.d.ts +3 -0
  125. package/dist/extraction/languages/cfscript.d.ts.map +1 -0
  126. package/dist/extraction/languages/cfscript.js +73 -0
  127. package/dist/extraction/languages/cfscript.js.map +1 -0
  128. package/dist/extraction/languages/cobol.d.ts +33 -0
  129. package/dist/extraction/languages/cobol.d.ts.map +1 -0
  130. package/dist/extraction/languages/cobol.js +499 -0
  131. package/dist/extraction/languages/cobol.js.map +1 -0
  132. package/dist/extraction/languages/csharp.d.ts +25 -0
  133. package/dist/extraction/languages/csharp.d.ts.map +1 -0
  134. package/dist/extraction/languages/csharp.js +175 -0
  135. package/dist/extraction/languages/csharp.js.map +1 -0
  136. package/dist/extraction/languages/dart.d.ts +3 -0
  137. package/dist/extraction/languages/dart.d.ts.map +1 -0
  138. package/dist/extraction/languages/dart.js +374 -0
  139. package/dist/extraction/languages/dart.js.map +1 -0
  140. package/dist/extraction/languages/erlang.d.ts +3 -0
  141. package/dist/extraction/languages/erlang.d.ts.map +1 -0
  142. package/dist/extraction/languages/erlang.js +350 -0
  143. package/dist/extraction/languages/erlang.js.map +1 -0
  144. package/dist/extraction/languages/go.d.ts +3 -0
  145. package/dist/extraction/languages/go.d.ts.map +1 -0
  146. package/dist/extraction/languages/go.js +111 -0
  147. package/dist/extraction/languages/go.js.map +1 -0
  148. package/dist/extraction/languages/index.d.ts +10 -0
  149. package/dist/extraction/languages/index.d.ts.map +1 -0
  150. package/dist/extraction/languages/index.js +71 -0
  151. package/dist/extraction/languages/index.js.map +1 -0
  152. package/dist/extraction/languages/java.d.ts +3 -0
  153. package/dist/extraction/languages/java.d.ts.map +1 -0
  154. package/dist/extraction/languages/java.js +315 -0
  155. package/dist/extraction/languages/java.js.map +1 -0
  156. package/dist/extraction/languages/javascript.d.ts +3 -0
  157. package/dist/extraction/languages/javascript.d.ts.map +1 -0
  158. package/dist/extraction/languages/javascript.js +106 -0
  159. package/dist/extraction/languages/javascript.js.map +1 -0
  160. package/dist/extraction/languages/kotlin.d.ts +3 -0
  161. package/dist/extraction/languages/kotlin.d.ts.map +1 -0
  162. package/dist/extraction/languages/kotlin.js +379 -0
  163. package/dist/extraction/languages/kotlin.js.map +1 -0
  164. package/dist/extraction/languages/lua.d.ts +3 -0
  165. package/dist/extraction/languages/lua.d.ts.map +1 -0
  166. package/dist/extraction/languages/lua.js +150 -0
  167. package/dist/extraction/languages/lua.js.map +1 -0
  168. package/dist/extraction/languages/luau.d.ts +3 -0
  169. package/dist/extraction/languages/luau.d.ts.map +1 -0
  170. package/dist/extraction/languages/luau.js +37 -0
  171. package/dist/extraction/languages/luau.js.map +1 -0
  172. package/dist/extraction/languages/nix.d.ts +3 -0
  173. package/dist/extraction/languages/nix.d.ts.map +1 -0
  174. package/dist/extraction/languages/nix.js +294 -0
  175. package/dist/extraction/languages/nix.js.map +1 -0
  176. package/dist/extraction/languages/objc.d.ts +3 -0
  177. package/dist/extraction/languages/objc.d.ts.map +1 -0
  178. package/dist/extraction/languages/objc.js +179 -0
  179. package/dist/extraction/languages/objc.js.map +1 -0
  180. package/dist/extraction/languages/pascal.d.ts +3 -0
  181. package/dist/extraction/languages/pascal.d.ts.map +1 -0
  182. package/dist/extraction/languages/pascal.js +77 -0
  183. package/dist/extraction/languages/pascal.js.map +1 -0
  184. package/dist/extraction/languages/php.d.ts +3 -0
  185. package/dist/extraction/languages/php.d.ts.map +1 -0
  186. package/dist/extraction/languages/php.js +196 -0
  187. package/dist/extraction/languages/php.js.map +1 -0
  188. package/dist/extraction/languages/python.d.ts +3 -0
  189. package/dist/extraction/languages/python.d.ts.map +1 -0
  190. package/dist/extraction/languages/python.js +56 -0
  191. package/dist/extraction/languages/python.js.map +1 -0
  192. package/dist/extraction/languages/r.d.ts +3 -0
  193. package/dist/extraction/languages/r.d.ts.map +1 -0
  194. package/dist/extraction/languages/r.js +314 -0
  195. package/dist/extraction/languages/r.js.map +1 -0
  196. package/dist/extraction/languages/ruby.d.ts +3 -0
  197. package/dist/extraction/languages/ruby.d.ts.map +1 -0
  198. package/dist/extraction/languages/ruby.js +149 -0
  199. package/dist/extraction/languages/ruby.js.map +1 -0
  200. package/dist/extraction/languages/rust.d.ts +3 -0
  201. package/dist/extraction/languages/rust.d.ts.map +1 -0
  202. package/dist/extraction/languages/rust.js +145 -0
  203. package/dist/extraction/languages/rust.js.map +1 -0
  204. package/dist/extraction/languages/scala.d.ts +3 -0
  205. package/dist/extraction/languages/scala.d.ts.map +1 -0
  206. package/dist/extraction/languages/scala.js +209 -0
  207. package/dist/extraction/languages/scala.js.map +1 -0
  208. package/dist/extraction/languages/solidity.d.ts +3 -0
  209. package/dist/extraction/languages/solidity.d.ts.map +1 -0
  210. package/dist/extraction/languages/solidity.js +293 -0
  211. package/dist/extraction/languages/solidity.js.map +1 -0
  212. package/dist/extraction/languages/swift.d.ts +3 -0
  213. package/dist/extraction/languages/swift.d.ts.map +1 -0
  214. package/dist/extraction/languages/swift.js +152 -0
  215. package/dist/extraction/languages/swift.js.map +1 -0
  216. package/dist/extraction/languages/terraform.d.ts +3 -0
  217. package/dist/extraction/languages/terraform.d.ts.map +1 -0
  218. package/dist/extraction/languages/terraform.js +641 -0
  219. package/dist/extraction/languages/terraform.js.map +1 -0
  220. package/dist/extraction/languages/typescript.d.ts +16 -0
  221. package/dist/extraction/languages/typescript.d.ts.map +1 -0
  222. package/dist/extraction/languages/typescript.js +167 -0
  223. package/dist/extraction/languages/typescript.js.map +1 -0
  224. package/dist/extraction/languages/vbnet.d.ts +11 -0
  225. package/dist/extraction/languages/vbnet.d.ts.map +1 -0
  226. package/dist/extraction/languages/vbnet.js +141 -0
  227. package/dist/extraction/languages/vbnet.js.map +1 -0
  228. package/dist/extraction/liquid-extractor.d.ts +59 -0
  229. package/dist/extraction/liquid-extractor.d.ts.map +1 -0
  230. package/dist/extraction/liquid-extractor.js +357 -0
  231. package/dist/extraction/liquid-extractor.js.map +1 -0
  232. package/dist/extraction/mybatis-extractor.d.ts +68 -0
  233. package/dist/extraction/mybatis-extractor.d.ts.map +1 -0
  234. package/dist/extraction/mybatis-extractor.js +300 -0
  235. package/dist/extraction/mybatis-extractor.js.map +1 -0
  236. package/dist/extraction/parse-pool.d.ts +160 -0
  237. package/dist/extraction/parse-pool.d.ts.map +1 -0
  238. package/dist/extraction/parse-pool.js +402 -0
  239. package/dist/extraction/parse-pool.js.map +1 -0
  240. package/dist/extraction/parse-worker.d.ts +8 -0
  241. package/dist/extraction/parse-worker.d.ts.map +1 -0
  242. package/dist/extraction/parse-worker.js +138 -0
  243. package/dist/extraction/parse-worker.js.map +1 -0
  244. package/dist/extraction/razor-extractor.d.ts +42 -0
  245. package/dist/extraction/razor-extractor.d.ts.map +1 -0
  246. package/dist/extraction/razor-extractor.js +285 -0
  247. package/dist/extraction/razor-extractor.js.map +1 -0
  248. package/dist/extraction/store-worker.d.ts +24 -0
  249. package/dist/extraction/store-worker.d.ts.map +1 -0
  250. package/dist/extraction/store-worker.js +139 -0
  251. package/dist/extraction/store-worker.js.map +1 -0
  252. package/dist/extraction/store-writer.d.ts +63 -0
  253. package/dist/extraction/store-writer.d.ts.map +1 -0
  254. package/dist/extraction/store-writer.js +174 -0
  255. package/dist/extraction/store-writer.js.map +1 -0
  256. package/dist/extraction/svelte-extractor.d.ts +56 -0
  257. package/dist/extraction/svelte-extractor.d.ts.map +1 -0
  258. package/dist/extraction/svelte-extractor.js +275 -0
  259. package/dist/extraction/svelte-extractor.js.map +1 -0
  260. package/dist/extraction/tree-sitter-helpers.d.ts +28 -0
  261. package/dist/extraction/tree-sitter-helpers.d.ts.map +1 -0
  262. package/dist/extraction/tree-sitter-helpers.js +153 -0
  263. package/dist/extraction/tree-sitter-helpers.js.map +1 -0
  264. package/dist/extraction/tree-sitter-types.d.ts +260 -0
  265. package/dist/extraction/tree-sitter-types.d.ts.map +1 -0
  266. package/dist/extraction/tree-sitter-types.js +10 -0
  267. package/dist/extraction/tree-sitter-types.js.map +1 -0
  268. package/dist/extraction/tree-sitter.d.ts +728 -0
  269. package/dist/extraction/tree-sitter.d.ts.map +1 -0
  270. package/dist/extraction/tree-sitter.js +6676 -0
  271. package/dist/extraction/tree-sitter.js.map +1 -0
  272. package/dist/extraction/vue-extractor.d.ts +51 -0
  273. package/dist/extraction/vue-extractor.d.ts.map +1 -0
  274. package/dist/extraction/vue-extractor.js +254 -0
  275. package/dist/extraction/vue-extractor.js.map +1 -0
  276. package/dist/extraction/wasm/tree-sitter-arkts.wasm +0 -0
  277. package/dist/extraction/wasm/tree-sitter-c.wasm +0 -0
  278. package/dist/extraction/wasm/tree-sitter-c_sharp.wasm +0 -0
  279. package/dist/extraction/wasm/tree-sitter-cfml.wasm +0 -0
  280. package/dist/extraction/wasm/tree-sitter-cfquery.wasm +0 -0
  281. package/dist/extraction/wasm/tree-sitter-cfscript.wasm +0 -0
  282. package/dist/extraction/wasm/tree-sitter-cobol.wasm +0 -0
  283. package/dist/extraction/wasm/tree-sitter-cpp.wasm +0 -0
  284. package/dist/extraction/wasm/tree-sitter-dart.wasm +0 -0
  285. package/dist/extraction/wasm/tree-sitter-erlang.wasm +0 -0
  286. package/dist/extraction/wasm/tree-sitter-go.wasm +0 -0
  287. package/dist/extraction/wasm/tree-sitter-java.wasm +0 -0
  288. package/dist/extraction/wasm/tree-sitter-javascript.wasm +0 -0
  289. package/dist/extraction/wasm/tree-sitter-kotlin.wasm +0 -0
  290. package/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
  291. package/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
  292. package/dist/extraction/wasm/tree-sitter-nix.wasm +0 -0
  293. package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
  294. package/dist/extraction/wasm/tree-sitter-php.wasm +0 -0
  295. package/dist/extraction/wasm/tree-sitter-python.wasm +0 -0
  296. package/dist/extraction/wasm/tree-sitter-r.wasm +0 -0
  297. package/dist/extraction/wasm/tree-sitter-ruby.wasm +0 -0
  298. package/dist/extraction/wasm/tree-sitter-rust.wasm +0 -0
  299. package/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  300. package/dist/extraction/wasm/tree-sitter-swift.wasm +0 -0
  301. package/dist/extraction/wasm/tree-sitter-terraform.wasm +0 -0
  302. package/dist/extraction/wasm/tree-sitter-tsx.wasm +0 -0
  303. package/dist/extraction/wasm/tree-sitter-typescript.wasm +0 -0
  304. package/dist/extraction/wasm/tree-sitter-vbnet.wasm +0 -0
  305. package/dist/extraction/wasm-runtime-flags.d.ts +53 -0
  306. package/dist/extraction/wasm-runtime-flags.d.ts.map +1 -0
  307. package/dist/extraction/wasm-runtime-flags.js +130 -0
  308. package/dist/extraction/wasm-runtime-flags.js.map +1 -0
  309. package/dist/graph/index.d.ts +8 -0
  310. package/dist/graph/index.d.ts.map +1 -0
  311. package/dist/graph/index.js +13 -0
  312. package/dist/graph/index.js.map +1 -0
  313. package/dist/graph/queries.d.ts +106 -0
  314. package/dist/graph/queries.d.ts.map +1 -0
  315. package/dist/graph/queries.js +341 -0
  316. package/dist/graph/queries.js.map +1 -0
  317. package/dist/graph/traversal.d.ts +127 -0
  318. package/dist/graph/traversal.d.ts.map +1 -0
  319. package/dist/graph/traversal.js +599 -0
  320. package/dist/graph/traversal.js.map +1 -0
  321. package/dist/index.d.ts +677 -0
  322. package/dist/index.d.ts.map +1 -0
  323. package/dist/index.js +1718 -0
  324. package/dist/index.js.map +1 -0
  325. package/dist/installer/beta-signup.d.ts +54 -0
  326. package/dist/installer/beta-signup.d.ts.map +1 -0
  327. package/dist/installer/beta-signup.js +178 -0
  328. package/dist/installer/beta-signup.js.map +1 -0
  329. package/dist/installer/config-writer.d.ts +28 -0
  330. package/dist/installer/config-writer.d.ts.map +1 -0
  331. package/dist/installer/config-writer.js +91 -0
  332. package/dist/installer/config-writer.js.map +1 -0
  333. package/dist/installer/index.d.ts +144 -0
  334. package/dist/installer/index.d.ts.map +1 -0
  335. package/dist/installer/index.js +634 -0
  336. package/dist/installer/index.js.map +1 -0
  337. package/dist/installer/instructions-template.d.ts +41 -0
  338. package/dist/installer/instructions-template.d.ts.map +1 -0
  339. package/dist/installer/instructions-template.js +53 -0
  340. package/dist/installer/instructions-template.js.map +1 -0
  341. package/dist/installer/targets/antigravity.d.ts +57 -0
  342. package/dist/installer/targets/antigravity.d.ts.map +1 -0
  343. package/dist/installer/targets/antigravity.js +308 -0
  344. package/dist/installer/targets/antigravity.js.map +1 -0
  345. package/dist/installer/targets/claude.d.ts +62 -0
  346. package/dist/installer/targets/claude.d.ts.map +1 -0
  347. package/dist/installer/targets/claude.js +486 -0
  348. package/dist/installer/targets/claude.js.map +1 -0
  349. package/dist/installer/targets/codex.d.ts +18 -0
  350. package/dist/installer/targets/codex.d.ts.map +1 -0
  351. package/dist/installer/targets/codex.js +185 -0
  352. package/dist/installer/targets/codex.js.map +1 -0
  353. package/dist/installer/targets/copilot-cli.d.ts +32 -0
  354. package/dist/installer/targets/copilot-cli.d.ts.map +1 -0
  355. package/dist/installer/targets/copilot-cli.js +209 -0
  356. package/dist/installer/targets/copilot-cli.js.map +1 -0
  357. package/dist/installer/targets/copilot-jetbrains.d.ts +42 -0
  358. package/dist/installer/targets/copilot-jetbrains.d.ts.map +1 -0
  359. package/dist/installer/targets/copilot-jetbrains.js +238 -0
  360. package/dist/installer/targets/copilot-jetbrains.js.map +1 -0
  361. package/dist/installer/targets/copilot-vscode.d.ts +47 -0
  362. package/dist/installer/targets/copilot-vscode.d.ts.map +1 -0
  363. package/dist/installer/targets/copilot-vscode.js +219 -0
  364. package/dist/installer/targets/copilot-vscode.js.map +1 -0
  365. package/dist/installer/targets/cursor.d.ts +35 -0
  366. package/dist/installer/targets/cursor.d.ts.map +1 -0
  367. package/dist/installer/targets/cursor.js +254 -0
  368. package/dist/installer/targets/cursor.js.map +1 -0
  369. package/dist/installer/targets/dsh.d.ts +97 -0
  370. package/dist/installer/targets/dsh.d.ts.map +1 -0
  371. package/dist/installer/targets/dsh.js +358 -0
  372. package/dist/installer/targets/dsh.js.map +1 -0
  373. package/dist/installer/targets/gemini.d.ts +26 -0
  374. package/dist/installer/targets/gemini.d.ts.map +1 -0
  375. package/dist/installer/targets/gemini.js +165 -0
  376. package/dist/installer/targets/gemini.js.map +1 -0
  377. package/dist/installer/targets/hermes.d.ts +18 -0
  378. package/dist/installer/targets/hermes.d.ts.map +1 -0
  379. package/dist/installer/targets/hermes.js +359 -0
  380. package/dist/installer/targets/hermes.js.map +1 -0
  381. package/dist/installer/targets/kiro.d.ts +27 -0
  382. package/dist/installer/targets/kiro.d.ts.map +1 -0
  383. package/dist/installer/targets/kiro.js +178 -0
  384. package/dist/installer/targets/kiro.js.map +1 -0
  385. package/dist/installer/targets/opencode.d.ts +38 -0
  386. package/dist/installer/targets/opencode.d.ts.map +1 -0
  387. package/dist/installer/targets/opencode.js +288 -0
  388. package/dist/installer/targets/opencode.js.map +1 -0
  389. package/dist/installer/targets/registry.d.ts +35 -0
  390. package/dist/installer/targets/registry.d.ts.map +1 -0
  391. package/dist/installer/targets/registry.js +101 -0
  392. package/dist/installer/targets/registry.js.map +1 -0
  393. package/dist/installer/targets/shared.d.ts +132 -0
  394. package/dist/installer/targets/shared.d.ts.map +1 -0
  395. package/dist/installer/targets/shared.js +314 -0
  396. package/dist/installer/targets/shared.js.map +1 -0
  397. package/dist/installer/targets/toml.d.ts +53 -0
  398. package/dist/installer/targets/toml.d.ts.map +1 -0
  399. package/dist/installer/targets/toml.js +226 -0
  400. package/dist/installer/targets/toml.js.map +1 -0
  401. package/dist/installer/targets/types.d.ts +109 -0
  402. package/dist/installer/targets/types.d.ts.map +1 -0
  403. package/dist/installer/targets/types.js +16 -0
  404. package/dist/installer/targets/types.js.map +1 -0
  405. package/dist/installer/targets/zcode.d.ts +106 -0
  406. package/dist/installer/targets/zcode.d.ts.map +1 -0
  407. package/dist/installer/targets/zcode.js +451 -0
  408. package/dist/installer/targets/zcode.js.map +1 -0
  409. package/dist/mcp/daemon-manager.d.ts +42 -0
  410. package/dist/mcp/daemon-manager.d.ts.map +1 -0
  411. package/dist/mcp/daemon-manager.js +129 -0
  412. package/dist/mcp/daemon-manager.js.map +1 -0
  413. package/dist/mcp/daemon-paths.d.ts +73 -0
  414. package/dist/mcp/daemon-paths.d.ts.map +1 -0
  415. package/dist/mcp/daemon-paths.js +165 -0
  416. package/dist/mcp/daemon-paths.js.map +1 -0
  417. package/dist/mcp/daemon-registry.d.ts +47 -0
  418. package/dist/mcp/daemon-registry.d.ts.map +1 -0
  419. package/dist/mcp/daemon-registry.js +233 -0
  420. package/dist/mcp/daemon-registry.js.map +1 -0
  421. package/dist/mcp/daemon.d.ts +290 -0
  422. package/dist/mcp/daemon.d.ts.map +1 -0
  423. package/dist/mcp/daemon.js +862 -0
  424. package/dist/mcp/daemon.js.map +1 -0
  425. package/dist/mcp/dynamic-boundaries.d.ts +41 -0
  426. package/dist/mcp/dynamic-boundaries.d.ts.map +1 -0
  427. package/dist/mcp/dynamic-boundaries.js +360 -0
  428. package/dist/mcp/dynamic-boundaries.js.map +1 -0
  429. package/dist/mcp/early-ppid.d.ts +26 -0
  430. package/dist/mcp/early-ppid.d.ts.map +1 -0
  431. package/dist/mcp/early-ppid.js +29 -0
  432. package/dist/mcp/early-ppid.js.map +1 -0
  433. package/dist/mcp/engine.d.ts +122 -0
  434. package/dist/mcp/engine.d.ts.map +1 -0
  435. package/dist/mcp/engine.js +350 -0
  436. package/dist/mcp/engine.js.map +1 -0
  437. package/dist/mcp/explore-dedup.d.ts +137 -0
  438. package/dist/mcp/explore-dedup.d.ts.map +1 -0
  439. package/dist/mcp/explore-dedup.js +236 -0
  440. package/dist/mcp/explore-dedup.js.map +1 -0
  441. package/dist/mcp/explore-diagnostics.d.ts +287 -0
  442. package/dist/mcp/explore-diagnostics.d.ts.map +1 -0
  443. package/dist/mcp/explore-diagnostics.js +555 -0
  444. package/dist/mcp/explore-diagnostics.js.map +1 -0
  445. package/dist/mcp/explore-session-state.d.ts +217 -0
  446. package/dist/mcp/explore-session-state.d.ts.map +1 -0
  447. package/dist/mcp/explore-session-state.js +322 -0
  448. package/dist/mcp/explore-session-state.js.map +1 -0
  449. package/dist/mcp/index.d.ts +137 -0
  450. package/dist/mcp/index.d.ts.map +1 -0
  451. package/dist/mcp/index.js +554 -0
  452. package/dist/mcp/index.js.map +1 -0
  453. package/dist/mcp/liveness-watchdog.d.ts +35 -0
  454. package/dist/mcp/liveness-watchdog.d.ts.map +1 -0
  455. package/dist/mcp/liveness-watchdog.js +269 -0
  456. package/dist/mcp/liveness-watchdog.js.map +1 -0
  457. package/dist/mcp/ppid-watchdog.d.ts +62 -0
  458. package/dist/mcp/ppid-watchdog.d.ts.map +1 -0
  459. package/dist/mcp/ppid-watchdog.js +64 -0
  460. package/dist/mcp/ppid-watchdog.js.map +1 -0
  461. package/dist/mcp/proxy.d.ts +87 -0
  462. package/dist/mcp/proxy.d.ts.map +1 -0
  463. package/dist/mcp/proxy.js +672 -0
  464. package/dist/mcp/proxy.js.map +1 -0
  465. package/dist/mcp/query-pool.d.ts +108 -0
  466. package/dist/mcp/query-pool.d.ts.map +1 -0
  467. package/dist/mcp/query-pool.js +315 -0
  468. package/dist/mcp/query-pool.js.map +1 -0
  469. package/dist/mcp/query-worker.d.ts +24 -0
  470. package/dist/mcp/query-worker.d.ts.map +1 -0
  471. package/dist/mcp/query-worker.js +87 -0
  472. package/dist/mcp/query-worker.js.map +1 -0
  473. package/dist/mcp/server-instructions.d.ts +34 -0
  474. package/dist/mcp/server-instructions.d.ts.map +1 -0
  475. package/dist/mcp/server-instructions.js +111 -0
  476. package/dist/mcp/server-instructions.js.map +1 -0
  477. package/dist/mcp/session.d.ts +109 -0
  478. package/dist/mcp/session.d.ts.map +1 -0
  479. package/dist/mcp/session.js +375 -0
  480. package/dist/mcp/session.js.map +1 -0
  481. package/dist/mcp/startup-handshake.d.ts +44 -0
  482. package/dist/mcp/startup-handshake.d.ts.map +1 -0
  483. package/dist/mcp/startup-handshake.js +73 -0
  484. package/dist/mcp/startup-handshake.js.map +1 -0
  485. package/dist/mcp/stdin-teardown.d.ts +27 -0
  486. package/dist/mcp/stdin-teardown.d.ts.map +1 -0
  487. package/dist/mcp/stdin-teardown.js +49 -0
  488. package/dist/mcp/stdin-teardown.js.map +1 -0
  489. package/dist/mcp/tools.d.ts +862 -0
  490. package/dist/mcp/tools.d.ts.map +1 -0
  491. package/dist/mcp/tools.js +6526 -0
  492. package/dist/mcp/tools.js.map +1 -0
  493. package/dist/mcp/transport.d.ts +188 -0
  494. package/dist/mcp/transport.d.ts.map +1 -0
  495. package/dist/mcp/transport.js +377 -0
  496. package/dist/mcp/transport.js.map +1 -0
  497. package/dist/mcp/version.d.ts +19 -0
  498. package/dist/mcp/version.d.ts.map +1 -0
  499. package/dist/mcp/version.js +71 -0
  500. package/dist/mcp/version.js.map +1 -0
  501. package/dist/project-config.d.ts +94 -0
  502. package/dist/project-config.d.ts.map +1 -0
  503. package/dist/project-config.js +374 -0
  504. package/dist/project-config.js.map +1 -0
  505. package/dist/prompt-hook-output.d.ts +23 -0
  506. package/dist/prompt-hook-output.d.ts.map +1 -0
  507. package/dist/prompt-hook-output.js +35 -0
  508. package/dist/prompt-hook-output.js.map +1 -0
  509. package/dist/resolution/c-fnptr-synthesizer.d.ts +6 -0
  510. package/dist/resolution/c-fnptr-synthesizer.d.ts.map +1 -0
  511. package/dist/resolution/c-fnptr-synthesizer.js +1506 -0
  512. package/dist/resolution/c-fnptr-synthesizer.js.map +1 -0
  513. package/dist/resolution/callback-synthesizer.d.ts +59 -0
  514. package/dist/resolution/callback-synthesizer.d.ts.map +1 -0
  515. package/dist/resolution/callback-synthesizer.js +4030 -0
  516. package/dist/resolution/callback-synthesizer.js.map +1 -0
  517. package/dist/resolution/cooperative-yield.d.ts +40 -0
  518. package/dist/resolution/cooperative-yield.d.ts.map +1 -0
  519. package/dist/resolution/cooperative-yield.js +44 -0
  520. package/dist/resolution/cooperative-yield.js.map +1 -0
  521. package/dist/resolution/frameworks/astro.d.ts +9 -0
  522. package/dist/resolution/frameworks/astro.d.ts.map +1 -0
  523. package/dist/resolution/frameworks/astro.js +169 -0
  524. package/dist/resolution/frameworks/astro.js.map +1 -0
  525. package/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
  526. package/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
  527. package/dist/resolution/frameworks/cargo-workspace.js +225 -0
  528. package/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
  529. package/dist/resolution/frameworks/cics.d.ts +20 -0
  530. package/dist/resolution/frameworks/cics.d.ts.map +1 -0
  531. package/dist/resolution/frameworks/cics.js +90 -0
  532. package/dist/resolution/frameworks/cics.js.map +1 -0
  533. package/dist/resolution/frameworks/csharp.d.ts +8 -0
  534. package/dist/resolution/frameworks/csharp.d.ts.map +1 -0
  535. package/dist/resolution/frameworks/csharp.js +241 -0
  536. package/dist/resolution/frameworks/csharp.js.map +1 -0
  537. package/dist/resolution/frameworks/drupal.d.ts +51 -0
  538. package/dist/resolution/frameworks/drupal.d.ts.map +1 -0
  539. package/dist/resolution/frameworks/drupal.js +367 -0
  540. package/dist/resolution/frameworks/drupal.js.map +1 -0
  541. package/dist/resolution/frameworks/expo-modules.d.ts +3 -0
  542. package/dist/resolution/frameworks/expo-modules.d.ts.map +1 -0
  543. package/dist/resolution/frameworks/expo-modules.js +148 -0
  544. package/dist/resolution/frameworks/expo-modules.js.map +1 -0
  545. package/dist/resolution/frameworks/express.d.ts +8 -0
  546. package/dist/resolution/frameworks/express.d.ts.map +1 -0
  547. package/dist/resolution/frameworks/express.js +308 -0
  548. package/dist/resolution/frameworks/express.js.map +1 -0
  549. package/dist/resolution/frameworks/fabric.d.ts +3 -0
  550. package/dist/resolution/frameworks/fabric.d.ts.map +1 -0
  551. package/dist/resolution/frameworks/fabric.js +354 -0
  552. package/dist/resolution/frameworks/fabric.js.map +1 -0
  553. package/dist/resolution/frameworks/go.d.ts +8 -0
  554. package/dist/resolution/frameworks/go.d.ts.map +1 -0
  555. package/dist/resolution/frameworks/go.js +184 -0
  556. package/dist/resolution/frameworks/go.js.map +1 -0
  557. package/dist/resolution/frameworks/goframe.d.ts +41 -0
  558. package/dist/resolution/frameworks/goframe.d.ts.map +1 -0
  559. package/dist/resolution/frameworks/goframe.js +112 -0
  560. package/dist/resolution/frameworks/goframe.js.map +1 -0
  561. package/dist/resolution/frameworks/index.d.ts +50 -0
  562. package/dist/resolution/frameworks/index.d.ts.map +1 -0
  563. package/dist/resolution/frameworks/index.js +175 -0
  564. package/dist/resolution/frameworks/index.js.map +1 -0
  565. package/dist/resolution/frameworks/java.d.ts +8 -0
  566. package/dist/resolution/frameworks/java.d.ts.map +1 -0
  567. package/dist/resolution/frameworks/java.js +517 -0
  568. package/dist/resolution/frameworks/java.js.map +1 -0
  569. package/dist/resolution/frameworks/laravel.d.ts +13 -0
  570. package/dist/resolution/frameworks/laravel.d.ts.map +1 -0
  571. package/dist/resolution/frameworks/laravel.js +257 -0
  572. package/dist/resolution/frameworks/laravel.js.map +1 -0
  573. package/dist/resolution/frameworks/nestjs.d.ts +26 -0
  574. package/dist/resolution/frameworks/nestjs.d.ts.map +1 -0
  575. package/dist/resolution/frameworks/nestjs.js +698 -0
  576. package/dist/resolution/frameworks/nestjs.js.map +1 -0
  577. package/dist/resolution/frameworks/play.d.ts +19 -0
  578. package/dist/resolution/frameworks/play.d.ts.map +1 -0
  579. package/dist/resolution/frameworks/play.js +111 -0
  580. package/dist/resolution/frameworks/play.js.map +1 -0
  581. package/dist/resolution/frameworks/python.d.ts +10 -0
  582. package/dist/resolution/frameworks/python.d.ts.map +1 -0
  583. package/dist/resolution/frameworks/python.js +400 -0
  584. package/dist/resolution/frameworks/python.js.map +1 -0
  585. package/dist/resolution/frameworks/react-native.d.ts +3 -0
  586. package/dist/resolution/frameworks/react-native.d.ts.map +1 -0
  587. package/dist/resolution/frameworks/react-native.js +410 -0
  588. package/dist/resolution/frameworks/react-native.js.map +1 -0
  589. package/dist/resolution/frameworks/react.d.ts +8 -0
  590. package/dist/resolution/frameworks/react.d.ts.map +1 -0
  591. package/dist/resolution/frameworks/react.js +334 -0
  592. package/dist/resolution/frameworks/react.js.map +1 -0
  593. package/dist/resolution/frameworks/ruby.d.ts +8 -0
  594. package/dist/resolution/frameworks/ruby.d.ts.map +1 -0
  595. package/dist/resolution/frameworks/ruby.js +302 -0
  596. package/dist/resolution/frameworks/ruby.js.map +1 -0
  597. package/dist/resolution/frameworks/rust.d.ts +8 -0
  598. package/dist/resolution/frameworks/rust.d.ts.map +1 -0
  599. package/dist/resolution/frameworks/rust.js +304 -0
  600. package/dist/resolution/frameworks/rust.js.map +1 -0
  601. package/dist/resolution/frameworks/svelte.d.ts +9 -0
  602. package/dist/resolution/frameworks/svelte.d.ts.map +1 -0
  603. package/dist/resolution/frameworks/svelte.js +253 -0
  604. package/dist/resolution/frameworks/svelte.js.map +1 -0
  605. package/dist/resolution/frameworks/swift-objc.d.ts +37 -0
  606. package/dist/resolution/frameworks/swift-objc.d.ts.map +1 -0
  607. package/dist/resolution/frameworks/swift-objc.js +252 -0
  608. package/dist/resolution/frameworks/swift-objc.js.map +1 -0
  609. package/dist/resolution/frameworks/swift.d.ts +10 -0
  610. package/dist/resolution/frameworks/swift.d.ts.map +1 -0
  611. package/dist/resolution/frameworks/swift.js +400 -0
  612. package/dist/resolution/frameworks/swift.js.map +1 -0
  613. package/dist/resolution/frameworks/terraform.d.ts +38 -0
  614. package/dist/resolution/frameworks/terraform.d.ts.map +1 -0
  615. package/dist/resolution/frameworks/terraform.js +277 -0
  616. package/dist/resolution/frameworks/terraform.js.map +1 -0
  617. package/dist/resolution/frameworks/vue.d.ts +9 -0
  618. package/dist/resolution/frameworks/vue.d.ts.map +1 -0
  619. package/dist/resolution/frameworks/vue.js +303 -0
  620. package/dist/resolution/frameworks/vue.js.map +1 -0
  621. package/dist/resolution/go-module.d.ts +26 -0
  622. package/dist/resolution/go-module.d.ts.map +1 -0
  623. package/dist/resolution/go-module.js +78 -0
  624. package/dist/resolution/go-module.js.map +1 -0
  625. package/dist/resolution/goframe-synthesizer.d.ts +29 -0
  626. package/dist/resolution/goframe-synthesizer.d.ts.map +1 -0
  627. package/dist/resolution/goframe-synthesizer.js +163 -0
  628. package/dist/resolution/goframe-synthesizer.js.map +1 -0
  629. package/dist/resolution/import-resolver.d.ts +84 -0
  630. package/dist/resolution/import-resolver.d.ts.map +1 -0
  631. package/dist/resolution/import-resolver.js +2134 -0
  632. package/dist/resolution/import-resolver.js.map +1 -0
  633. package/dist/resolution/index.d.ts +343 -0
  634. package/dist/resolution/index.d.ts.map +1 -0
  635. package/dist/resolution/index.js +2339 -0
  636. package/dist/resolution/index.js.map +1 -0
  637. package/dist/resolution/lru-cache.d.ts +24 -0
  638. package/dist/resolution/lru-cache.d.ts.map +1 -0
  639. package/dist/resolution/lru-cache.js +62 -0
  640. package/dist/resolution/lru-cache.js.map +1 -0
  641. package/dist/resolution/memory-budget.d.ts +48 -0
  642. package/dist/resolution/memory-budget.d.ts.map +1 -0
  643. package/dist/resolution/memory-budget.js +162 -0
  644. package/dist/resolution/memory-budget.js.map +1 -0
  645. package/dist/resolution/name-matcher.d.ts +123 -0
  646. package/dist/resolution/name-matcher.d.ts.map +1 -0
  647. package/dist/resolution/name-matcher.js +2134 -0
  648. package/dist/resolution/name-matcher.js.map +1 -0
  649. package/dist/resolution/path-aliases.d.ts +68 -0
  650. package/dist/resolution/path-aliases.d.ts.map +1 -0
  651. package/dist/resolution/path-aliases.js +238 -0
  652. package/dist/resolution/path-aliases.js.map +1 -0
  653. package/dist/resolution/resolver-pool.d.ts +106 -0
  654. package/dist/resolution/resolver-pool.d.ts.map +1 -0
  655. package/dist/resolution/resolver-pool.js +344 -0
  656. package/dist/resolution/resolver-pool.js.map +1 -0
  657. package/dist/resolution/resolver-worker.d.ts +17 -0
  658. package/dist/resolution/resolver-worker.d.ts.map +1 -0
  659. package/dist/resolution/resolver-worker.js +141 -0
  660. package/dist/resolution/resolver-worker.js.map +1 -0
  661. package/dist/resolution/strip-comments.d.ts +27 -0
  662. package/dist/resolution/strip-comments.d.ts.map +1 -0
  663. package/dist/resolution/strip-comments.js +492 -0
  664. package/dist/resolution/strip-comments.js.map +1 -0
  665. package/dist/resolution/swift-objc-bridge.d.ts +134 -0
  666. package/dist/resolution/swift-objc-bridge.d.ts.map +1 -0
  667. package/dist/resolution/swift-objc-bridge.js +256 -0
  668. package/dist/resolution/swift-objc-bridge.js.map +1 -0
  669. package/dist/resolution/types.d.ts +265 -0
  670. package/dist/resolution/types.d.ts.map +1 -0
  671. package/dist/resolution/types.js +8 -0
  672. package/dist/resolution/types.js.map +1 -0
  673. package/dist/resolution/workspace-packages.d.ts +58 -0
  674. package/dist/resolution/workspace-packages.d.ts.map +1 -0
  675. package/dist/resolution/workspace-packages.js +346 -0
  676. package/dist/resolution/workspace-packages.js.map +1 -0
  677. package/dist/search/identifier-segments.d.ts +60 -0
  678. package/dist/search/identifier-segments.d.ts.map +1 -0
  679. package/dist/search/identifier-segments.js +176 -0
  680. package/dist/search/identifier-segments.js.map +1 -0
  681. package/dist/search/query-parser.d.ts +57 -0
  682. package/dist/search/query-parser.d.ts.map +1 -0
  683. package/dist/search/query-parser.js +177 -0
  684. package/dist/search/query-parser.js.map +1 -0
  685. package/dist/search/query-utils.d.ts +87 -0
  686. package/dist/search/query-utils.d.ts.map +1 -0
  687. package/dist/search/query-utils.js +450 -0
  688. package/dist/search/query-utils.js.map +1 -0
  689. package/dist/sync/git-hooks.d.ts +45 -0
  690. package/dist/sync/git-hooks.d.ts.map +1 -0
  691. package/dist/sync/git-hooks.js +227 -0
  692. package/dist/sync/git-hooks.js.map +1 -0
  693. package/dist/sync/index.d.ts +19 -0
  694. package/dist/sync/index.d.ts.map +1 -0
  695. package/dist/sync/index.js +35 -0
  696. package/dist/sync/index.js.map +1 -0
  697. package/dist/sync/watch-policy.d.ts +48 -0
  698. package/dist/sync/watch-policy.d.ts.map +1 -0
  699. package/dist/sync/watch-policy.js +124 -0
  700. package/dist/sync/watch-policy.js.map +1 -0
  701. package/dist/sync/watcher.d.ts +379 -0
  702. package/dist/sync/watcher.d.ts.map +1 -0
  703. package/dist/sync/watcher.js +921 -0
  704. package/dist/sync/watcher.js.map +1 -0
  705. package/dist/sync/worktree.d.ts +63 -0
  706. package/dist/sync/worktree.d.ts.map +1 -0
  707. package/dist/sync/worktree.js +182 -0
  708. package/dist/sync/worktree.js.map +1 -0
  709. package/dist/telemetry/index.d.ts +143 -0
  710. package/dist/telemetry/index.d.ts.map +1 -0
  711. package/dist/telemetry/index.js +541 -0
  712. package/dist/telemetry/index.js.map +1 -0
  713. package/dist/types.d.ts +465 -0
  714. package/dist/types.d.ts.map +1 -0
  715. package/dist/types.js +117 -0
  716. package/dist/types.js.map +1 -0
  717. package/dist/ui/color.d.ts +21 -0
  718. package/dist/ui/color.d.ts.map +1 -0
  719. package/dist/ui/color.js +42 -0
  720. package/dist/ui/color.js.map +1 -0
  721. package/dist/ui/glyphs.d.ts +67 -0
  722. package/dist/ui/glyphs.d.ts.map +1 -0
  723. package/dist/ui/glyphs.js +125 -0
  724. package/dist/ui/glyphs.js.map +1 -0
  725. package/dist/ui/shimmer-progress.d.ts +11 -0
  726. package/dist/ui/shimmer-progress.d.ts.map +1 -0
  727. package/dist/ui/shimmer-progress.js +164 -0
  728. package/dist/ui/shimmer-progress.js.map +1 -0
  729. package/dist/ui/shimmer-worker.d.ts +2 -0
  730. package/dist/ui/shimmer-worker.d.ts.map +1 -0
  731. package/dist/ui/shimmer-worker.js +126 -0
  732. package/dist/ui/shimmer-worker.js.map +1 -0
  733. package/dist/ui/types.d.ts +15 -0
  734. package/dist/ui/types.d.ts.map +1 -0
  735. package/dist/ui/types.js +3 -0
  736. package/dist/ui/types.js.map +1 -0
  737. package/dist/upgrade/index.d.ts +171 -0
  738. package/dist/upgrade/index.d.ts.map +1 -0
  739. package/dist/upgrade/index.js +659 -0
  740. package/dist/upgrade/index.js.map +1 -0
  741. package/dist/upgrade/remove-binary.d.ts +87 -0
  742. package/dist/upgrade/remove-binary.d.ts.map +1 -0
  743. package/dist/upgrade/remove-binary.js +289 -0
  744. package/dist/upgrade/remove-binary.js.map +1 -0
  745. package/dist/upgrade/update-check.d.ts +92 -0
  746. package/dist/upgrade/update-check.d.ts.map +1 -0
  747. package/dist/upgrade/update-check.js +258 -0
  748. package/dist/upgrade/update-check.js.map +1 -0
  749. package/dist/utils.d.ts +224 -0
  750. package/dist/utils.d.ts.map +1 -0
  751. package/dist/utils.js +583 -0
  752. package/dist/utils.js.map +1 -0
  753. package/package.json +61 -0
  754. package/scripts/add-lang/bench.sh +60 -0
  755. package/scripts/add-lang/check-grammar.mjs +75 -0
  756. package/scripts/add-lang/dump-ast.mjs +103 -0
  757. package/scripts/add-lang/verify-extraction.mjs +70 -0
  758. package/scripts/agent-eval/ab-adoption.sh +91 -0
  759. package/scripts/agent-eval/ab-hook.sh +86 -0
  760. package/scripts/agent-eval/ab-impl.sh +78 -0
  761. package/scripts/agent-eval/ab-new-vs-baseline.sh +161 -0
  762. package/scripts/agent-eval/ab-sufficiency.sh +78 -0
  763. package/scripts/agent-eval/allocation-fixtures.json +344 -0
  764. package/scripts/agent-eval/arms-F.sh +21 -0
  765. package/scripts/agent-eval/arms-matrix.sh +37 -0
  766. package/scripts/agent-eval/audit.sh +68 -0
  767. package/scripts/agent-eval/bench-readme.sh +48 -0
  768. package/scripts/agent-eval/bench-why-repo.sh +22 -0
  769. package/scripts/agent-eval/block-read-hook.sh +19 -0
  770. package/scripts/agent-eval/compare-arms.mjs +209 -0
  771. package/scripts/agent-eval/diff-index-drift.mjs +102 -0
  772. package/scripts/agent-eval/hook-settings.json +15 -0
  773. package/scripts/agent-eval/itrun.sh +120 -0
  774. package/scripts/agent-eval/no-cli-shim.sh +96 -0
  775. package/scripts/agent-eval/offload-eval-3arm.sh +72 -0
  776. package/scripts/agent-eval/offload-eval-cost.mjs +133 -0
  777. package/scripts/agent-eval/offload-eval-effort.mjs +108 -0
  778. package/scripts/agent-eval/offload-eval-frontload-matrix.sh +25 -0
  779. package/scripts/agent-eval/offload-eval-frontload.sh +47 -0
  780. package/scripts/agent-eval/offload-eval-ground-truth.json +18 -0
  781. package/scripts/agent-eval/offload-eval-hook.mjs +84 -0
  782. package/scripts/agent-eval/offload-eval-judge.mjs +103 -0
  783. package/scripts/agent-eval/offload-eval-matrix.sh +20 -0
  784. package/scripts/agent-eval/offload-eval-metrics.mjs +94 -0
  785. package/scripts/agent-eval/offload-eval-refs1.sh +50 -0
  786. package/scripts/agent-eval/offload-eval-setup.sh +24 -0
  787. package/scripts/agent-eval/offload-eval-styles.sh +72 -0
  788. package/scripts/agent-eval/offload-eval-summarize.mjs +68 -0
  789. package/scripts/agent-eval/offload-eval.md +76 -0
  790. package/scripts/agent-eval/parse-arms.mjs +116 -0
  791. package/scripts/agent-eval/parse-bench-readme.mjs +238 -0
  792. package/scripts/agent-eval/parse-run.mjs +1401 -0
  793. package/scripts/agent-eval/parse-session.mjs +130 -0
  794. package/scripts/agent-eval/probe-allocation.mjs +335 -0
  795. package/scripts/agent-eval/probe-context.mjs +21 -0
  796. package/scripts/agent-eval/probe-decl-only.mjs +198 -0
  797. package/scripts/agent-eval/probe-explore.mjs +40 -0
  798. package/scripts/agent-eval/probe-factory-closure.mjs +147 -0
  799. package/scripts/agent-eval/probe-file-spend.mjs +195 -0
  800. package/scripts/agent-eval/probe-named-symbol.mjs +163 -0
  801. package/scripts/agent-eval/probe-node.mjs +20 -0
  802. package/scripts/agent-eval/probe-suite-envelope.mjs +124 -0
  803. package/scripts/agent-eval/probe-sweep.mjs +119 -0
  804. package/scripts/agent-eval/probe-trace.mjs +20 -0
  805. package/scripts/agent-eval/redirect-read-hook.sh +38 -0
  806. package/scripts/agent-eval/repro-concurrent-explore.mjs +119 -0
  807. package/scripts/agent-eval/repro-daemon-clients.mjs +125 -0
  808. package/scripts/agent-eval/run-agent.sh +34 -0
  809. package/scripts/agent-eval/run-all.sh +149 -0
  810. package/scripts/agent-eval/run-arms.sh +56 -0
  811. package/scripts/agent-eval/seq-matrix.mjs +137 -0
  812. package/scripts/build-bundle.sh +145 -0
  813. package/scripts/build-kernel.sh +87 -0
  814. package/scripts/dump-graph.mjs +57 -0
  815. package/scripts/extract-release-notes.mjs +130 -0
  816. package/scripts/kernel-parity.mjs +283 -0
  817. package/scripts/local-install.sh +41 -0
  818. package/scripts/npm-sdk.js +75 -0
  819. package/scripts/npm-shim.js +279 -0
  820. package/scripts/pack-npm.sh +123 -0
  821. package/scripts/prepare-release.mjs +270 -0
@@ -0,0 +1,634 @@
1
+ "use strict";
2
+ /**
3
+ * CodeGraph Interactive Installer
4
+ *
5
+ * Multi-target: writes MCP server config + instructions for the
6
+ * agents the user picks (Claude Code, Cursor, Codex CLI, opencode,
7
+ * Hermes Agent, Gemini CLI, Antigravity IDE, Kiro, ZCode, DeepSeek
8
+ * Harness (dsh), and GitHub Copilot in VS Code / the Copilot CLI /
9
+ * JetBrains IDEs).
10
+ * Defaults to the Claude-only behavior for backwards compatibility
11
+ * when no targets are explicitly chosen and nothing else is detected.
12
+ *
13
+ * Uses @clack/prompts for the interactive UI; `runInstallerWithOptions`
14
+ * is the non-interactive entry point used by the `--target` /
15
+ * `--print-config` CLI flags.
16
+ */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.hasPermissions = exports.hasMcpConfig = exports.writePermissions = exports.writeMcpConfig = void 0;
52
+ exports.runInstaller = runInstaller;
53
+ exports.runInstallerWithOptions = runInstallerWithOptions;
54
+ exports.uninstallTargets = uninstallTargets;
55
+ exports.refreshTargets = refreshTargets;
56
+ exports.runUninstaller = runUninstaller;
57
+ exports.offerWatchFallback = offerWatchFallback;
58
+ const child_process_1 = require("child_process");
59
+ const path = __importStar(require("path"));
60
+ const fs = __importStar(require("fs"));
61
+ const registry_1 = require("./targets/registry");
62
+ // Import the lightweight submodules directly (not the ../sync barrel, which
63
+ // re-exports FileWatcher and would transitively pull in ../extraction — the
64
+ // installer must stay importable even when native modules can't load).
65
+ const watch_policy_1 = require("../sync/watch-policy");
66
+ const git_hooks_1 = require("../sync/git-hooks");
67
+ const directory_1 = require("../directory");
68
+ const telemetry_1 = require("../telemetry");
69
+ const beta_signup_1 = require("./beta-signup");
70
+ // Backwards-compat: keep these named exports — downstream code may
71
+ // import them. The shim in `config-writer.ts` continues to re-export
72
+ // them too.
73
+ var config_writer_1 = require("./config-writer");
74
+ Object.defineProperty(exports, "writeMcpConfig", { enumerable: true, get: function () { return config_writer_1.writeMcpConfig; } });
75
+ Object.defineProperty(exports, "writePermissions", { enumerable: true, get: function () { return config_writer_1.writePermissions; } });
76
+ Object.defineProperty(exports, "hasMcpConfig", { enumerable: true, get: function () { return config_writer_1.hasMcpConfig; } });
77
+ Object.defineProperty(exports, "hasPermissions", { enumerable: true, get: function () { return config_writer_1.hasPermissions; } });
78
+ // Dynamic import helper — tsc compiles import() to require() in CJS mode,
79
+ // which fails for ESM-only packages. This bypasses the transformation.
80
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
81
+ const importESM = new Function('specifier', 'return import(specifier)');
82
+ function getVersion() {
83
+ try {
84
+ const packageJsonPath = path.join(__dirname, '..', '..', 'package.json');
85
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
86
+ return packageJson.version;
87
+ }
88
+ catch {
89
+ return '0.0.0';
90
+ }
91
+ }
92
+ /**
93
+ * Interactive entry point — preserves the historical UX (`codegraph
94
+ * install` with no args goes through the prompts), but now starts
95
+ * the targets multi-select pre-populated with detected agents.
96
+ */
97
+ async function runInstaller() {
98
+ return runInstallerWithOptions({});
99
+ }
100
+ async function runInstallerWithOptions(opts) {
101
+ const clack = await importESM('@clack/prompts');
102
+ clack.intro(`CodeGraph v${getVersion()}`);
103
+ // --yes implies all defaults; explicit flags still win.
104
+ const useDefaults = opts.yes === true;
105
+ // Step 1: which agent targets? Asked FIRST so the user knows what
106
+ // they're committing to before we touch npm or disk. Detection
107
+ // probes the user-provided location if known, else 'global' as the
108
+ // most common default — labels are a hint, not load-bearing.
109
+ const detectionLocation = opts.location ?? 'global';
110
+ const targets = await resolveTargets(clack, opts, detectionLocation, useDefaults);
111
+ if (targets.length === 0) {
112
+ clack.outro('No agent targets selected — nothing to do.');
113
+ return;
114
+ }
115
+ // Step 2: install the codegraph npm package on PATH (always offered;
116
+ // matches existing behavior). Skipped when --yes (assume present).
117
+ if (!useDefaults) {
118
+ const shouldInstallGlobally = await clack.confirm({
119
+ message: 'Install the codegraph CLI on your PATH? (Required so agents can launch the MCP server)',
120
+ initialValue: true,
121
+ });
122
+ if (clack.isCancel(shouldInstallGlobally)) {
123
+ clack.cancel('Installation cancelled.');
124
+ process.exit(0);
125
+ }
126
+ if (shouldInstallGlobally) {
127
+ const s = clack.spinner();
128
+ s.start('Installing codegraph CLI...');
129
+ try {
130
+ // Generous bound (slow networks / cold npm cache) — but bounded, so a
131
+ // wedged npm can't hang the interactive installer forever (#1139).
132
+ (0, child_process_1.execSync)('npm install -g @colbymchenry/codegraph', { stdio: 'pipe', windowsHide: true, timeout: 120_000 });
133
+ s.stop('Installed codegraph CLI on PATH');
134
+ }
135
+ catch {
136
+ s.stop('Could not install (permission denied)');
137
+ clack.log.warn('Try: sudo npm install -g @colbymchenry/codegraph');
138
+ }
139
+ }
140
+ else {
141
+ clack.log.info('Skipped CLI install — agents will not be able to launch the MCP server without it');
142
+ }
143
+ }
144
+ // Step 3: where the per-agent config files should land.
145
+ let location;
146
+ if (opts.location) {
147
+ location = opts.location;
148
+ }
149
+ else if (useDefaults) {
150
+ location = 'global';
151
+ }
152
+ else {
153
+ // If every selected target is global-only (e.g. Codex), skip the
154
+ // prompt and force user-wide — project-local would just produce
155
+ // skip warnings.
156
+ const allGlobalOnly = targets.every((t) => !t.supportsLocation('local'));
157
+ if (allGlobalOnly) {
158
+ location = 'global';
159
+ clack.log.info('Writing user-wide configs (selected agents have no project-local config).');
160
+ }
161
+ else {
162
+ const sel = await clack.select({
163
+ message: 'Apply agent configs to all your projects, or just this one?',
164
+ options: [
165
+ { value: 'global', label: 'All projects', hint: '~/.claude, ~/.cursor, etc.' },
166
+ { value: 'local', label: 'Just this project', hint: './.claude, ./.cursor, etc.' },
167
+ ],
168
+ initialValue: 'global',
169
+ });
170
+ if (clack.isCancel(sel)) {
171
+ clack.cancel('Installation cancelled.');
172
+ process.exit(0);
173
+ }
174
+ location = sel;
175
+ }
176
+ }
177
+ // Step 4: auto-allow permissions (only meaningful for Claude;
178
+ // skipped silently by other targets).
179
+ let autoAllow;
180
+ if (opts.autoAllow !== undefined) {
181
+ autoAllow = opts.autoAllow;
182
+ }
183
+ else if (useDefaults) {
184
+ autoAllow = true;
185
+ }
186
+ else if (targets.some((t) => t.id === 'claude')) {
187
+ const ans = await clack.confirm({
188
+ message: 'Auto-allow CodeGraph commands? (Skips permission prompts in Claude Code)',
189
+ initialValue: true,
190
+ });
191
+ if (clack.isCancel(ans)) {
192
+ clack.cancel('Installation cancelled.');
193
+ process.exit(0);
194
+ }
195
+ autoAllow = ans;
196
+ }
197
+ else {
198
+ autoAllow = false;
199
+ }
200
+ // Step 4½: anonymous usage telemetry — a visible default-on toggle, asked
201
+ // exactly once. Skipped when an env var (DO_NOT_TRACK / CODEGRAPH_TELEMETRY)
202
+ // already decides, or when a previous run stored a choice — re-runs and
203
+ // upgrades never re-ask.
204
+ if (!useDefaults && (0, telemetry_1.getTelemetry)().getStatus().decidedBy === 'default' && !(0, telemetry_1.getTelemetry)().hasStoredChoice()) {
205
+ const share = await clack.confirm({
206
+ message: 'Share anonymous usage stats? (No code, paths, or names — see TELEMETRY.md)',
207
+ initialValue: true,
208
+ });
209
+ if (clack.isCancel(share)) {
210
+ // Don't kill the install over the telemetry question — leave it
211
+ // undecided (the documented default + first-run notice applies later).
212
+ clack.log.info('Skipped — manage anytime with `codegraph telemetry on|off`.');
213
+ }
214
+ else {
215
+ (0, telemetry_1.getTelemetry)().setEnabled(share, 'installer');
216
+ clack.log.info(share
217
+ ? `Thanks! Exactly what is collected: ${telemetry_1.TELEMETRY_DOCS}`
218
+ : 'Telemetry disabled — nothing will be collected or sent.');
219
+ }
220
+ }
221
+ // Step 4¾: front-load prompt hook (Claude Code / ZCode / dsh). A UserPromptSubmit
222
+ // hook that runs `codegraph prompt-hook` — it injects codegraph_explore
223
+ // context on structural ("how / where / trace / impact") prompts so the
224
+ // agent reliably reaches for the graph instead of grepping. Opt-in,
225
+ // default-yes. Claude Code, ZCode, and dsh (via its Claude Code hooks
226
+ // bridge) are the only clients with UserPromptSubmit, so it's offered
227
+ // when any of them is a target; other targets ignore the option.
228
+ // `undefined` (none of them / not asked) leaves any existing hook
229
+ // untouched.
230
+ let promptHook;
231
+ if (targets.some((t) => t.id === 'claude' || t.id === 'zcode' || t.id === 'dsh')) {
232
+ if (useDefaults) {
233
+ promptHook = true; // --yes → on
234
+ }
235
+ else {
236
+ const ans = await clack.confirm({
237
+ message: 'Front-load CodeGraph on “how / where / trace” prompts? Auto-injects structural context so answers need fewer steps (adds a moment to those prompts; Claude Code / ZCode / dsh).',
238
+ initialValue: true,
239
+ });
240
+ if (clack.isCancel(ans)) {
241
+ clack.cancel('Installation cancelled.');
242
+ process.exit(0);
243
+ }
244
+ promptHook = ans; // false → opt out; install() strips any prior hook
245
+ }
246
+ }
247
+ // Step 5: per-target install loop.
248
+ const installedIds = [];
249
+ let sawCreated = false;
250
+ let sawUpdated = false;
251
+ for (const target of targets) {
252
+ if (!target.supportsLocation(location)) {
253
+ clack.log.warn(`${target.displayName}: skipped — does not support --location=${location}.`);
254
+ continue;
255
+ }
256
+ const result = target.install(location, { autoAllow, promptHook });
257
+ installedIds.push(target.id);
258
+ for (const file of result.files) {
259
+ if (file.action === 'created')
260
+ sawCreated = true;
261
+ if (file.action === 'updated')
262
+ sawUpdated = true;
263
+ const verb = file.action === 'unchanged'
264
+ ? 'Unchanged'
265
+ : file.action === 'created' ? 'Created'
266
+ : file.action === 'removed' ? 'Removed'
267
+ : 'Updated';
268
+ clack.log.success(`${target.displayName}: ${verb} ${tildify(file.path)}`);
269
+ }
270
+ for (const note of result.notes ?? []) {
271
+ clack.log.info(`${target.displayName}: ${note}`);
272
+ }
273
+ }
274
+ // Telemetry: which agents were configured, where, fresh-vs-upgrade (derived
275
+ // from the file actions above). Target IDs and the location enum only.
276
+ if (installedIds.length > 0) {
277
+ (0, telemetry_1.getTelemetry)().recordLifecycle('install', {
278
+ targets: installedIds,
279
+ scope: location,
280
+ kind: sawCreated ? 'fresh' : sawUpdated ? 'upgrade' : 'reinstall',
281
+ });
282
+ }
283
+ // Step 5½: CodeGraph Pro beta opt-in — the same waitlist as the
284
+ // getcodegraph.com homepage form, offered once per machine at the end of a
285
+ // successful install (and after `codegraph upgrade` — the shared gate in
286
+ // maybeOfferBetaSignup means whichever asks first is the ONLY ask ever).
287
+ // Strictly opt-in (user answers yes AND types an email), never shown under
288
+ // --yes, and any yes/no answer is stored so nothing re-asks. Cancel or a
289
+ // failed submit stores nothing, so a later install/upgrade may offer again.
290
+ if (!useDefaults && installedIds.length > 0) {
291
+ await (0, beta_signup_1.maybeOfferBetaSignup)({ source: 'cli-install' });
292
+ }
293
+ // Step 6: install wires up agents only — it deliberately does NOT index.
294
+ // Building the per-project graph is the user's explicit `codegraph init`
295
+ // (or `index`), so they choose what gets indexed and when, and we never
296
+ // index a surprise directory (e.g. a shell sitting in $HOME). Same next step
297
+ // regardless of global/local scope.
298
+ clack.note(location === 'local'
299
+ ? 'codegraph init # build this project’s graph (one time; auto-syncs after)'
300
+ : 'cd <your-project>\ncodegraph init # build a project’s graph (one time; auto-syncs after)', 'Next: index a project');
301
+ // Deliver buffered telemetry while we're already in a long interactive
302
+ // command — bounded (~1.5s worst case), invisible after a multi-second install.
303
+ await (0, telemetry_1.getTelemetry)().flushNow();
304
+ const finalNote = targets.length > 0
305
+ ? `Done! Restart your agent${targets.length > 1 ? 's' : ''} to use CodeGraph.`
306
+ : 'Done!';
307
+ clack.outro(finalNote);
308
+ }
309
+ /**
310
+ * Pure uninstall sweep — no prompts, no I/O beyond the targets' own
311
+ * file edits. Exposed (and unit-tested) separately from the clack UI in
312
+ * `runUninstaller` so the aggregation logic can be asserted directly.
313
+ *
314
+ * Each target's `uninstall()` is already safe to call when nothing was
315
+ * installed (it returns `not-found` actions), so this is safe to run
316
+ * across every target unconditionally.
317
+ */
318
+ function uninstallTargets(targets, location) {
319
+ return targets.map((target) => {
320
+ if (!target.supportsLocation(location)) {
321
+ const only = location === 'local' ? 'global' : 'local';
322
+ return {
323
+ id: target.id,
324
+ displayName: target.displayName,
325
+ status: 'unsupported',
326
+ removedPaths: [],
327
+ notes: [`no ${location} config — this agent is ${only}-only`],
328
+ };
329
+ }
330
+ const result = target.uninstall(location);
331
+ const removedPaths = result.files
332
+ .filter((f) => f.action === 'removed')
333
+ .map((f) => f.path);
334
+ return {
335
+ id: target.id,
336
+ displayName: target.displayName,
337
+ status: removedPaths.length > 0 ? 'removed' : 'not-configured',
338
+ removedPaths,
339
+ notes: result.notes ?? [],
340
+ };
341
+ });
342
+ }
343
+ /**
344
+ * Pure refresh sweep — re-runs `install()` for every target that is
345
+ * ALREADY configured at `location`, so the surfaces a previous version
346
+ * wrote (the marker-fenced instructions section, the MCP server entry,
347
+ * the legacy-hook cleanups) match the binary that will serve them.
348
+ * Without this, those files keep the wording — and the tool names — of
349
+ * whatever version first wrote them, no matter how many upgrades later.
350
+ *
351
+ * Strictly a refresh, never a first install:
352
+ * - targets that aren't `alreadyConfigured` are skipped untouched;
353
+ * - permissions are not written (`autoAllow: false`) and the prompt
354
+ * hook is left as-is (`promptHook: undefined`), so choices the user
355
+ * made at install time — or by hand since — are preserved.
356
+ *
357
+ * Every write underneath is the targets' own idempotent upsert, so a
358
+ * re-run on an already-current machine reports `unchanged` everywhere.
359
+ * Exposed (and unit-tested) separately from the CLI wiring, same as
360
+ * `uninstallTargets`.
361
+ */
362
+ function refreshTargets(targets, location) {
363
+ return targets.map((target) => {
364
+ const base = { id: target.id, displayName: target.displayName, location };
365
+ if (!target.supportsLocation(location)) {
366
+ return { ...base, status: 'unsupported', changedPaths: [] };
367
+ }
368
+ if (!target.detect(location).alreadyConfigured) {
369
+ return { ...base, status: 'not-configured', changedPaths: [] };
370
+ }
371
+ const result = target.install(location, { autoAllow: false, promptHook: undefined });
372
+ const changedPaths = result.files
373
+ .filter((f) => f.action === 'created' || f.action === 'updated' || f.action === 'removed')
374
+ .map((f) => f.path);
375
+ return {
376
+ ...base,
377
+ status: changedPaths.length > 0 ? 'refreshed' : 'unchanged',
378
+ changedPaths,
379
+ };
380
+ });
381
+ }
382
+ /**
383
+ * Interactive uninstaller — the inverse of `runInstallerWithOptions`.
384
+ * Asks global-vs-local first (unless `--location`/`--yes` is given),
385
+ * then sweeps every agent target (or the `--target` subset) and prints
386
+ * one block per agent so the user sees exactly which providers it hit.
387
+ *
388
+ * Removes only what install wrote (MCP server entry, instructions
389
+ * block, permissions) — never the `.codegraph/` index, which `codegraph
390
+ * uninit` owns.
391
+ */
392
+ async function runUninstaller(opts) {
393
+ const clack = await importESM('@clack/prompts');
394
+ clack.intro(`CodeGraph v${getVersion()} — uninstall`);
395
+ const useDefaults = opts.yes === true;
396
+ // Step 1: which location — asked FIRST, the one decision the user
397
+ // must make. Global sweeps ~/.claude, ~/.codex, etc.; local sweeps
398
+ // the configs in this project directory.
399
+ let location;
400
+ if (opts.location) {
401
+ location = opts.location;
402
+ }
403
+ else if (useDefaults) {
404
+ location = 'global';
405
+ }
406
+ else {
407
+ const sel = await clack.select({
408
+ message: 'Remove CodeGraph from all your projects, or just this one?',
409
+ options: [
410
+ { value: 'global', label: 'All projects (global)', hint: '~/.claude, ~/.cursor, ~/.codex, ~/.config/opencode, ~/.hermes, ~/.gemini, ~/.kiro, ~/.copilot, ~/.config/github-copilot, ~/.zcode, ~/.dsh' },
411
+ { value: 'local', label: 'Just this project (local)', hint: './.claude, ./.cursor, ./.vscode, ./opencode.jsonc, ./.gemini, ./.kiro, ./.zcode' },
412
+ ],
413
+ initialValue: 'global',
414
+ });
415
+ if (clack.isCancel(sel)) {
416
+ clack.cancel('Uninstall cancelled.');
417
+ process.exit(0);
418
+ }
419
+ location = sel;
420
+ }
421
+ // Step 2: which agents. Default is every agent, so the user doesn't
422
+ // have to remember where they installed it — unconfigured agents are
423
+ // reported as "nothing to remove" and left untouched. An explicit
424
+ // --target subsets this.
425
+ let targets;
426
+ if (opts.target !== undefined) {
427
+ targets = (0, registry_1.resolveTargetFlag)(opts.target, location);
428
+ }
429
+ else {
430
+ targets = [...registry_1.ALL_TARGETS];
431
+ }
432
+ if (targets.length === 0) {
433
+ clack.outro('No agent targets selected — nothing to do.');
434
+ return;
435
+ }
436
+ // Step 3: sweep + per-agent feedback.
437
+ const reports = uninstallTargets(targets, location);
438
+ const removed = reports.filter((r) => r.status === 'removed');
439
+ for (const r of reports) {
440
+ if (r.status === 'removed') {
441
+ for (const p of r.removedPaths) {
442
+ clack.log.success(`${r.displayName}: removed ${tildify(p)}`);
443
+ }
444
+ }
445
+ else if (r.status === 'not-configured') {
446
+ clack.log.info(`${r.displayName}: not configured — nothing to remove`);
447
+ }
448
+ else {
449
+ clack.log.info(`${r.displayName}: skipped — ${r.notes[0] ?? 'unsupported location'}`);
450
+ }
451
+ }
452
+ // Step 4: for local uninstall, the index dir is separate — point at
453
+ // `uninit` so the user knows it's still there (and how to remove it).
454
+ if (location === 'local' && fs.existsSync((0, directory_1.getCodeGraphDir)(process.cwd()))) {
455
+ clack.log.info(`The ${(0, directory_1.codeGraphDirName)()}/ index for this project is still here. Run \`codegraph uninit\` to delete it.`);
456
+ }
457
+ // Step 4b: the CLI binary itself (global uninstall only — a project-scoped
458
+ // uninstall must not touch the machine-wide install). Before this step,
459
+ // `codegraph uninstall` removed agent configs but left every installed
460
+ // binary — bundle AND npm global — so `codegraph` still resolved afterward
461
+ // (the #1071 shadow, uninstall edition). Plan every install present on the
462
+ // machine, confirm, then remove them all. Skippable with --keep-cli.
463
+ let cliRemoved = false;
464
+ if (location === 'global' && opts.keepCli !== true && opts.cliFilename) {
465
+ const { planBinaryRemoval, executeBinaryRemoval, defaultProbes } = await Promise.resolve().then(() => __importStar(require('../upgrade/remove-binary')));
466
+ const plan = planBinaryRemoval(defaultProbes(opts.cliFilename));
467
+ if (plan.sourceRoot) {
468
+ clack.log.info(`Running from a source checkout (${tildify(plan.sourceRoot)}) — leaving it untouched.`);
469
+ }
470
+ if (plan.summary.length > 0) {
471
+ let removeBinaries = useDefaults;
472
+ if (!useDefaults) {
473
+ const sel = await clack.confirm({
474
+ message: `Also remove the CodeGraph CLI from this machine?\n${plan.summary.map((s) => ` - ${s}`).join('\n')}`,
475
+ initialValue: true,
476
+ });
477
+ if (clack.isCancel(sel)) {
478
+ clack.cancel('Uninstall cancelled.');
479
+ process.exit(0);
480
+ }
481
+ removeBinaries = sel;
482
+ }
483
+ if (removeBinaries) {
484
+ const result = executeBinaryRemoval(plan);
485
+ for (const p of result.removed)
486
+ clack.log.success(`Removed ${tildify(p)}`);
487
+ if (result.npm === 'removed') {
488
+ clack.log.success('Removed the npm global package (npm uninstall -g).');
489
+ }
490
+ else if (result.npm === 'failed') {
491
+ clack.log.warn('npm uninstall failed — run `npm uninstall -g @colbymchenry/codegraph` yourself (EACCES usually means it needs sudo).');
492
+ }
493
+ for (const p of result.leftovers) {
494
+ clack.log.warn(`Could not remove ${tildify(p)} — delete it manually${process.platform === 'win32' ? ' after this window closes' : ''}.`);
495
+ }
496
+ cliRemoved = result.removed.length > 0 || result.npm === 'removed';
497
+ if (cliRemoved && process.platform === 'win32') {
498
+ clack.log.info('If your PATH still lists a codegraph bin directory, remove that entry from your user PATH.');
499
+ }
500
+ }
501
+ else {
502
+ clack.log.info('Kept the CLI. Remove it later with `codegraph uninstall` or `npm uninstall -g @colbymchenry/codegraph`.');
503
+ }
504
+ }
505
+ }
506
+ // Telemetry churn signal (agent IDs only) — flush now, since after an
507
+ // uninstall there is usually no "next run" to deliver it.
508
+ if (removed.length > 0) {
509
+ (0, telemetry_1.getTelemetry)().recordLifecycle('uninstall', { targets: removed.map((r) => r.id) });
510
+ await (0, telemetry_1.getTelemetry)().flushNow();
511
+ }
512
+ // Step 5: summary.
513
+ const cliNote = cliRemoved ? ' The CLI is removed too — this was its last run.' : '';
514
+ if (removed.length > 0) {
515
+ const names = removed.map((r) => r.displayName).join(', ');
516
+ clack.outro(`Removed CodeGraph from ${removed.length} agent${removed.length > 1 ? 's' : ''}: ${names}. ` +
517
+ `Restart ${removed.length > 1 ? 'them' : 'it'} to apply.` + cliNote);
518
+ }
519
+ else if (cliRemoved) {
520
+ clack.outro(`No ${location} agent had CodeGraph configured.` + cliNote);
521
+ }
522
+ else {
523
+ clack.outro(`CodeGraph was not configured in any ${location} agent — nothing to remove.`);
524
+ }
525
+ }
526
+ /**
527
+ * Replace home-directory prefix in a path with `~/` for cleaner log
528
+ * lines. Pure cosmetic.
529
+ */
530
+ function tildify(p) {
531
+ const home = require('os').homedir();
532
+ if (p.startsWith(home + path.sep))
533
+ return '~' + p.substring(home.length);
534
+ return p;
535
+ }
536
+ async function resolveTargets(clack, opts, location, useDefaults) {
537
+ // Explicit --target flag wins.
538
+ if (opts.target !== undefined) {
539
+ return (0, registry_1.resolveTargetFlag)(opts.target, location);
540
+ }
541
+ // --yes implies auto-detect.
542
+ if (useDefaults) {
543
+ return (0, registry_1.resolveTargetFlag)('auto', location);
544
+ }
545
+ // Interactive multi-select.
546
+ const detected = (0, registry_1.detectAll)(location);
547
+ const initialValues = detected
548
+ .filter(({ detection }) => detection.installed)
549
+ .map(({ target }) => target.id);
550
+ // If nothing detected, default to Claude alone (matches the
551
+ // historical default and the smallest-surprise outcome).
552
+ const initial = initialValues.length > 0 ? initialValues : ['claude'];
553
+ const choice = await clack.multiselect({
554
+ message: 'Which agents should CodeGraph configure?',
555
+ options: registry_1.ALL_TARGETS.map((t) => {
556
+ const det = detected.find(({ target }) => target.id === t.id).detection;
557
+ const flag = det.installed ? '(detected)' : '(not found)';
558
+ const globalOnly = !t.supportsLocation('local') ? ' — global only' : '';
559
+ return {
560
+ value: t.id,
561
+ label: `${t.displayName} ${flag}${globalOnly}`,
562
+ };
563
+ }),
564
+ initialValues: initial,
565
+ required: false,
566
+ });
567
+ if (clack.isCancel(choice)) {
568
+ clack.cancel('Installation cancelled.');
569
+ process.exit(0);
570
+ }
571
+ return choice
572
+ .map((id) => (0, registry_1.getTarget)(id))
573
+ .filter((t) => t !== undefined);
574
+ }
575
+ /**
576
+ * When the live file watcher will be disabled for this project (e.g. WSL2
577
+ * /mnt drives, or CODEGRAPH_NO_WATCH), the index would silently go stale.
578
+ * Explain that, and offer to keep it fresh automatically via git hooks
579
+ * (commit / pull / checkout) instead of manual `codegraph sync`.
580
+ *
581
+ * No-op on environments where the watcher runs normally, so it's safe to
582
+ * call unconditionally after init.
583
+ */
584
+ async function offerWatchFallback(clack, projectPath, opts = {}) {
585
+ const reason = (0, watch_policy_1.watchDisabledReason)(projectPath);
586
+ if (!reason)
587
+ return; // Watcher runs normally — nothing to set up.
588
+ clack.log.warn(`Live file watching is disabled here — ${reason}.`);
589
+ clack.log.info('Until you re-sync, the CodeGraph index stays frozen — it will not pick up edits on its own.');
590
+ // No git repo → the commit-hook path doesn't apply; point at manual sync.
591
+ if (!(0, git_hooks_1.isGitRepo)(projectPath)) {
592
+ clack.log.info('Run `codegraph sync` after changing files to refresh the index.');
593
+ return;
594
+ }
595
+ // Already wired up on a previous run — confirm and move on without nagging.
596
+ if ((0, git_hooks_1.isSyncHookInstalled)(projectPath)) {
597
+ clack.log.info('Git sync hooks are already installed — the index refreshes after commit / pull / checkout.');
598
+ return;
599
+ }
600
+ let choice;
601
+ if (opts.yes) {
602
+ choice = 'hook';
603
+ }
604
+ else {
605
+ const sel = await clack.select({
606
+ message: 'How should CodeGraph keep its index fresh?',
607
+ options: [
608
+ { value: 'hook', label: 'Sync on git commit / pull / checkout', hint: 'installs git hooks (recommended)' },
609
+ { value: 'manual', label: 'I\'ll run `codegraph sync` myself', hint: 'fully manual' },
610
+ ],
611
+ initialValue: 'hook',
612
+ });
613
+ if (clack.isCancel(sel)) {
614
+ clack.log.info('Skipped — run `codegraph sync` after changes to refresh the index.');
615
+ return;
616
+ }
617
+ choice = sel;
618
+ }
619
+ if (choice === 'manual') {
620
+ clack.log.info('Run `codegraph sync` after changing files to refresh the index.');
621
+ return;
622
+ }
623
+ const result = (0, git_hooks_1.installGitSyncHook)(projectPath);
624
+ if (result.installed.length > 0) {
625
+ clack.log.success(`Installed git ${result.installed.join(', ')} hook${result.installed.length > 1 ? 's' : ''} — ` +
626
+ 'the index refreshes in the background after each.');
627
+ clack.log.info('Run `codegraph sync` anytime to refresh immediately.');
628
+ }
629
+ else {
630
+ clack.log.warn(`Could not install git hooks${result.skipped ? ` (${result.skipped})` : ''}. ` +
631
+ 'Run `codegraph sync` after changes instead.');
632
+ }
633
+ }
634
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"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"}