@colbymchenry/codegraph-win32-x64 0.9.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 (569) hide show
  1. package/bin/codegraph.cmd +1 -0
  2. package/lib/dist/bin/codegraph.d.ts +21 -0
  3. package/lib/dist/bin/codegraph.d.ts.map +1 -0
  4. package/lib/dist/bin/codegraph.js +1273 -0
  5. package/lib/dist/bin/codegraph.js.map +1 -0
  6. package/lib/dist/bin/node-version-check.d.ts +37 -0
  7. package/lib/dist/bin/node-version-check.d.ts.map +1 -0
  8. package/lib/dist/bin/node-version-check.js +79 -0
  9. package/lib/dist/bin/node-version-check.js.map +1 -0
  10. package/lib/dist/bin/uninstall.d.ts +14 -0
  11. package/lib/dist/bin/uninstall.d.ts.map +1 -0
  12. package/lib/dist/bin/uninstall.js +36 -0
  13. package/lib/dist/bin/uninstall.js.map +1 -0
  14. package/lib/dist/config.d.ts +51 -0
  15. package/lib/dist/config.d.ts.map +1 -0
  16. package/lib/dist/config.js +321 -0
  17. package/lib/dist/config.js.map +1 -0
  18. package/lib/dist/context/formatter.d.ts +30 -0
  19. package/lib/dist/context/formatter.d.ts.map +1 -0
  20. package/lib/dist/context/formatter.js +244 -0
  21. package/lib/dist/context/formatter.js.map +1 -0
  22. package/lib/dist/context/index.d.ts +97 -0
  23. package/lib/dist/context/index.d.ts.map +1 -0
  24. package/lib/dist/context/index.js +1050 -0
  25. package/lib/dist/context/index.js.map +1 -0
  26. package/lib/dist/db/index.d.ts +83 -0
  27. package/lib/dist/db/index.d.ts.map +1 -0
  28. package/lib/dist/db/index.js +219 -0
  29. package/lib/dist/db/index.js.map +1 -0
  30. package/lib/dist/db/migrations.d.ts +44 -0
  31. package/lib/dist/db/migrations.d.ts.map +1 -0
  32. package/lib/dist/db/migrations.js +131 -0
  33. package/lib/dist/db/migrations.js.map +1 -0
  34. package/lib/dist/db/queries.d.ts +253 -0
  35. package/lib/dist/db/queries.d.ts.map +1 -0
  36. package/lib/dist/db/queries.js +1207 -0
  37. package/lib/dist/db/queries.js.map +1 -0
  38. package/lib/dist/db/schema.sql +151 -0
  39. package/lib/dist/db/sqlite-adapter.d.ts +46 -0
  40. package/lib/dist/db/sqlite-adapter.d.ts.map +1 -0
  41. package/lib/dist/db/sqlite-adapter.js +114 -0
  42. package/lib/dist/db/sqlite-adapter.js.map +1 -0
  43. package/lib/dist/directory.d.ts +57 -0
  44. package/lib/dist/directory.d.ts.map +1 -0
  45. package/lib/dist/directory.js +264 -0
  46. package/lib/dist/directory.js.map +1 -0
  47. package/lib/dist/errors.d.ts +136 -0
  48. package/lib/dist/errors.d.ts.map +1 -0
  49. package/lib/dist/errors.js +219 -0
  50. package/lib/dist/errors.js.map +1 -0
  51. package/lib/dist/extraction/dfm-extractor.d.ts +31 -0
  52. package/lib/dist/extraction/dfm-extractor.d.ts.map +1 -0
  53. package/lib/dist/extraction/dfm-extractor.js +151 -0
  54. package/lib/dist/extraction/dfm-extractor.js.map +1 -0
  55. package/lib/dist/extraction/grammars.d.ts +78 -0
  56. package/lib/dist/extraction/grammars.d.ts.map +1 -0
  57. package/lib/dist/extraction/grammars.js +332 -0
  58. package/lib/dist/extraction/grammars.js.map +1 -0
  59. package/lib/dist/extraction/index.d.ts +130 -0
  60. package/lib/dist/extraction/index.d.ts.map +1 -0
  61. package/lib/dist/extraction/index.js +1305 -0
  62. package/lib/dist/extraction/index.js.map +1 -0
  63. package/lib/dist/extraction/languages/c-cpp.d.ts +4 -0
  64. package/lib/dist/extraction/languages/c-cpp.d.ts.map +1 -0
  65. package/lib/dist/extraction/languages/c-cpp.js +126 -0
  66. package/lib/dist/extraction/languages/c-cpp.js.map +1 -0
  67. package/lib/dist/extraction/languages/csharp.d.ts +3 -0
  68. package/lib/dist/extraction/languages/csharp.d.ts.map +1 -0
  69. package/lib/dist/extraction/languages/csharp.js +72 -0
  70. package/lib/dist/extraction/languages/csharp.js.map +1 -0
  71. package/lib/dist/extraction/languages/dart.d.ts +3 -0
  72. package/lib/dist/extraction/languages/dart.d.ts.map +1 -0
  73. package/lib/dist/extraction/languages/dart.js +192 -0
  74. package/lib/dist/extraction/languages/dart.js.map +1 -0
  75. package/lib/dist/extraction/languages/go.d.ts +3 -0
  76. package/lib/dist/extraction/languages/go.d.ts.map +1 -0
  77. package/lib/dist/extraction/languages/go.js +58 -0
  78. package/lib/dist/extraction/languages/go.js.map +1 -0
  79. package/lib/dist/extraction/languages/index.d.ts +10 -0
  80. package/lib/dist/extraction/languages/index.d.ts.map +1 -0
  81. package/lib/dist/extraction/languages/index.js +49 -0
  82. package/lib/dist/extraction/languages/index.js.map +1 -0
  83. package/lib/dist/extraction/languages/java.d.ts +3 -0
  84. package/lib/dist/extraction/languages/java.d.ts.map +1 -0
  85. package/lib/dist/extraction/languages/java.js +64 -0
  86. package/lib/dist/extraction/languages/java.js.map +1 -0
  87. package/lib/dist/extraction/languages/javascript.d.ts +3 -0
  88. package/lib/dist/extraction/languages/javascript.d.ts.map +1 -0
  89. package/lib/dist/extraction/languages/javascript.js +90 -0
  90. package/lib/dist/extraction/languages/javascript.js.map +1 -0
  91. package/lib/dist/extraction/languages/kotlin.d.ts +3 -0
  92. package/lib/dist/extraction/languages/kotlin.d.ts.map +1 -0
  93. package/lib/dist/extraction/languages/kotlin.js +253 -0
  94. package/lib/dist/extraction/languages/kotlin.js.map +1 -0
  95. package/lib/dist/extraction/languages/lua.d.ts +3 -0
  96. package/lib/dist/extraction/languages/lua.d.ts.map +1 -0
  97. package/lib/dist/extraction/languages/lua.js +150 -0
  98. package/lib/dist/extraction/languages/lua.js.map +1 -0
  99. package/lib/dist/extraction/languages/luau.d.ts +3 -0
  100. package/lib/dist/extraction/languages/luau.d.ts.map +1 -0
  101. package/lib/dist/extraction/languages/luau.js +37 -0
  102. package/lib/dist/extraction/languages/luau.js.map +1 -0
  103. package/lib/dist/extraction/languages/pascal.d.ts +3 -0
  104. package/lib/dist/extraction/languages/pascal.d.ts.map +1 -0
  105. package/lib/dist/extraction/languages/pascal.js +66 -0
  106. package/lib/dist/extraction/languages/pascal.js.map +1 -0
  107. package/lib/dist/extraction/languages/php.d.ts +3 -0
  108. package/lib/dist/extraction/languages/php.d.ts.map +1 -0
  109. package/lib/dist/extraction/languages/php.js +107 -0
  110. package/lib/dist/extraction/languages/php.js.map +1 -0
  111. package/lib/dist/extraction/languages/python.d.ts +3 -0
  112. package/lib/dist/extraction/languages/python.d.ts.map +1 -0
  113. package/lib/dist/extraction/languages/python.js +56 -0
  114. package/lib/dist/extraction/languages/python.js.map +1 -0
  115. package/lib/dist/extraction/languages/ruby.d.ts +3 -0
  116. package/lib/dist/extraction/languages/ruby.d.ts.map +1 -0
  117. package/lib/dist/extraction/languages/ruby.js +114 -0
  118. package/lib/dist/extraction/languages/ruby.js.map +1 -0
  119. package/lib/dist/extraction/languages/rust.d.ts +3 -0
  120. package/lib/dist/extraction/languages/rust.d.ts.map +1 -0
  121. package/lib/dist/extraction/languages/rust.js +109 -0
  122. package/lib/dist/extraction/languages/rust.js.map +1 -0
  123. package/lib/dist/extraction/languages/scala.d.ts +3 -0
  124. package/lib/dist/extraction/languages/scala.d.ts.map +1 -0
  125. package/lib/dist/extraction/languages/scala.js +139 -0
  126. package/lib/dist/extraction/languages/scala.js.map +1 -0
  127. package/lib/dist/extraction/languages/swift.d.ts +3 -0
  128. package/lib/dist/extraction/languages/swift.d.ts.map +1 -0
  129. package/lib/dist/extraction/languages/swift.js +91 -0
  130. package/lib/dist/extraction/languages/swift.js.map +1 -0
  131. package/lib/dist/extraction/languages/typescript.d.ts +3 -0
  132. package/lib/dist/extraction/languages/typescript.d.ts.map +1 -0
  133. package/lib/dist/extraction/languages/typescript.js +129 -0
  134. package/lib/dist/extraction/languages/typescript.js.map +1 -0
  135. package/lib/dist/extraction/liquid-extractor.d.ts +52 -0
  136. package/lib/dist/extraction/liquid-extractor.d.ts.map +1 -0
  137. package/lib/dist/extraction/liquid-extractor.js +313 -0
  138. package/lib/dist/extraction/liquid-extractor.js.map +1 -0
  139. package/lib/dist/extraction/parse-worker.d.ts +8 -0
  140. package/lib/dist/extraction/parse-worker.d.ts.map +1 -0
  141. package/lib/dist/extraction/parse-worker.js +94 -0
  142. package/lib/dist/extraction/parse-worker.js.map +1 -0
  143. package/lib/dist/extraction/svelte-extractor.d.ts +56 -0
  144. package/lib/dist/extraction/svelte-extractor.d.ts.map +1 -0
  145. package/lib/dist/extraction/svelte-extractor.js +272 -0
  146. package/lib/dist/extraction/svelte-extractor.js.map +1 -0
  147. package/lib/dist/extraction/tree-sitter-helpers.d.ts +28 -0
  148. package/lib/dist/extraction/tree-sitter-helpers.d.ts.map +1 -0
  149. package/lib/dist/extraction/tree-sitter-helpers.js +103 -0
  150. package/lib/dist/extraction/tree-sitter-helpers.js.map +1 -0
  151. package/lib/dist/extraction/tree-sitter-types.d.ts +179 -0
  152. package/lib/dist/extraction/tree-sitter-types.d.ts.map +1 -0
  153. package/lib/dist/extraction/tree-sitter-types.js +10 -0
  154. package/lib/dist/extraction/tree-sitter-types.js.map +1 -0
  155. package/lib/dist/extraction/tree-sitter.d.ts +233 -0
  156. package/lib/dist/extraction/tree-sitter.d.ts.map +1 -0
  157. package/lib/dist/extraction/tree-sitter.js +2425 -0
  158. package/lib/dist/extraction/tree-sitter.js.map +1 -0
  159. package/lib/dist/extraction/vue-extractor.d.ts +36 -0
  160. package/lib/dist/extraction/vue-extractor.d.ts.map +1 -0
  161. package/lib/dist/extraction/vue-extractor.js +163 -0
  162. package/lib/dist/extraction/vue-extractor.js.map +1 -0
  163. package/lib/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
  164. package/lib/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
  165. package/lib/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
  166. package/lib/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  167. package/lib/dist/graph/index.d.ts +8 -0
  168. package/lib/dist/graph/index.d.ts.map +1 -0
  169. package/lib/dist/graph/index.js +13 -0
  170. package/lib/dist/graph/index.js.map +1 -0
  171. package/lib/dist/graph/queries.d.ts +106 -0
  172. package/lib/dist/graph/queries.d.ts.map +1 -0
  173. package/lib/dist/graph/queries.js +366 -0
  174. package/lib/dist/graph/queries.js.map +1 -0
  175. package/lib/dist/graph/traversal.d.ts +127 -0
  176. package/lib/dist/graph/traversal.d.ts.map +1 -0
  177. package/lib/dist/graph/traversal.js +493 -0
  178. package/lib/dist/graph/traversal.js.map +1 -0
  179. package/lib/dist/index.d.ts +453 -0
  180. package/lib/dist/index.d.ts.map +1 -0
  181. package/lib/dist/index.js +833 -0
  182. package/lib/dist/index.js.map +1 -0
  183. package/lib/dist/installer/claude-md-template.d.ts +14 -0
  184. package/lib/dist/installer/claude-md-template.d.ts.map +1 -0
  185. package/lib/dist/installer/claude-md-template.js +21 -0
  186. package/lib/dist/installer/claude-md-template.js.map +1 -0
  187. package/lib/dist/installer/config-writer.d.ts +29 -0
  188. package/lib/dist/installer/config-writer.d.ts.map +1 -0
  189. package/lib/dist/installer/config-writer.js +111 -0
  190. package/lib/dist/installer/config-writer.js.map +1 -0
  191. package/lib/dist/installer/index.d.ts +65 -0
  192. package/lib/dist/installer/index.d.ts.map +1 -0
  193. package/lib/dist/installer/index.js +406 -0
  194. package/lib/dist/installer/index.js.map +1 -0
  195. package/lib/dist/installer/instructions-template.d.ts +28 -0
  196. package/lib/dist/installer/instructions-template.d.ts.map +1 -0
  197. package/lib/dist/installer/instructions-template.js +64 -0
  198. package/lib/dist/installer/instructions-template.js.map +1 -0
  199. package/lib/dist/installer/targets/claude.d.ts +47 -0
  200. package/lib/dist/installer/targets/claude.d.ts.map +1 -0
  201. package/lib/dist/installer/targets/claude.js +401 -0
  202. package/lib/dist/installer/targets/claude.js.map +1 -0
  203. package/lib/dist/installer/targets/codex.d.ts +18 -0
  204. package/lib/dist/installer/targets/codex.d.ts.map +1 -0
  205. package/lib/dist/installer/targets/codex.js +185 -0
  206. package/lib/dist/installer/targets/codex.js.map +1 -0
  207. package/lib/dist/installer/targets/cursor.d.ts +35 -0
  208. package/lib/dist/installer/targets/cursor.d.ts.map +1 -0
  209. package/lib/dist/installer/targets/cursor.js +229 -0
  210. package/lib/dist/installer/targets/cursor.js.map +1 -0
  211. package/lib/dist/installer/targets/opencode.d.ts +30 -0
  212. package/lib/dist/installer/targets/opencode.d.ts.map +1 -0
  213. package/lib/dist/installer/targets/opencode.js +235 -0
  214. package/lib/dist/installer/targets/opencode.js.map +1 -0
  215. package/lib/dist/installer/targets/registry.d.ts +35 -0
  216. package/lib/dist/installer/targets/registry.d.ts.map +1 -0
  217. package/lib/dist/installer/targets/registry.js +83 -0
  218. package/lib/dist/installer/targets/registry.js.map +1 -0
  219. package/lib/dist/installer/targets/shared.d.ts +77 -0
  220. package/lib/dist/installer/targets/shared.d.ts.map +1 -0
  221. package/lib/dist/installer/targets/shared.js +246 -0
  222. package/lib/dist/installer/targets/shared.js.map +1 -0
  223. package/lib/dist/installer/targets/toml.d.ts +52 -0
  224. package/lib/dist/installer/targets/toml.d.ts.map +1 -0
  225. package/lib/dist/installer/targets/toml.js +147 -0
  226. package/lib/dist/installer/targets/toml.js.map +1 -0
  227. package/lib/dist/installer/targets/types.d.ts +116 -0
  228. package/lib/dist/installer/targets/types.d.ts.map +1 -0
  229. package/lib/dist/installer/targets/types.js +16 -0
  230. package/lib/dist/installer/targets/types.js.map +1 -0
  231. package/lib/dist/mcp/index.d.ts +94 -0
  232. package/lib/dist/mcp/index.d.ts.map +1 -0
  233. package/lib/dist/mcp/index.js +453 -0
  234. package/lib/dist/mcp/index.js.map +1 -0
  235. package/lib/dist/mcp/server-instructions.d.ts +19 -0
  236. package/lib/dist/mcp/server-instructions.d.ts.map +1 -0
  237. package/lib/dist/mcp/server-instructions.js +71 -0
  238. package/lib/dist/mcp/server-instructions.js.map +1 -0
  239. package/lib/dist/mcp/tools.d.ts +257 -0
  240. package/lib/dist/mcp/tools.d.ts.map +1 -0
  241. package/lib/dist/mcp/tools.js +1646 -0
  242. package/lib/dist/mcp/tools.js.map +1 -0
  243. package/lib/dist/mcp/transport.d.ts +106 -0
  244. package/lib/dist/mcp/transport.d.ts.map +1 -0
  245. package/lib/dist/mcp/transport.js +233 -0
  246. package/lib/dist/mcp/transport.js.map +1 -0
  247. package/lib/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
  248. package/lib/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
  249. package/lib/dist/resolution/frameworks/cargo-workspace.js +225 -0
  250. package/lib/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
  251. package/lib/dist/resolution/frameworks/csharp.d.ts +8 -0
  252. package/lib/dist/resolution/frameworks/csharp.d.ts.map +1 -0
  253. package/lib/dist/resolution/frameworks/csharp.js +213 -0
  254. package/lib/dist/resolution/frameworks/csharp.js.map +1 -0
  255. package/lib/dist/resolution/frameworks/express.d.ts +8 -0
  256. package/lib/dist/resolution/frameworks/express.d.ts.map +1 -0
  257. package/lib/dist/resolution/frameworks/express.js +225 -0
  258. package/lib/dist/resolution/frameworks/express.js.map +1 -0
  259. package/lib/dist/resolution/frameworks/go.d.ts +8 -0
  260. package/lib/dist/resolution/frameworks/go.d.ts.map +1 -0
  261. package/lib/dist/resolution/frameworks/go.js +158 -0
  262. package/lib/dist/resolution/frameworks/go.js.map +1 -0
  263. package/lib/dist/resolution/frameworks/index.d.ts +42 -0
  264. package/lib/dist/resolution/frameworks/index.d.ts.map +1 -0
  265. package/lib/dist/resolution/frameworks/index.js +133 -0
  266. package/lib/dist/resolution/frameworks/index.js.map +1 -0
  267. package/lib/dist/resolution/frameworks/java.d.ts +8 -0
  268. package/lib/dist/resolution/frameworks/java.d.ts.map +1 -0
  269. package/lib/dist/resolution/frameworks/java.js +177 -0
  270. package/lib/dist/resolution/frameworks/java.js.map +1 -0
  271. package/lib/dist/resolution/frameworks/laravel.d.ts +13 -0
  272. package/lib/dist/resolution/frameworks/laravel.d.ts.map +1 -0
  273. package/lib/dist/resolution/frameworks/laravel.js +248 -0
  274. package/lib/dist/resolution/frameworks/laravel.js.map +1 -0
  275. package/lib/dist/resolution/frameworks/nestjs.d.ts +26 -0
  276. package/lib/dist/resolution/frameworks/nestjs.d.ts.map +1 -0
  277. package/lib/dist/resolution/frameworks/nestjs.js +374 -0
  278. package/lib/dist/resolution/frameworks/nestjs.js.map +1 -0
  279. package/lib/dist/resolution/frameworks/python.d.ts +10 -0
  280. package/lib/dist/resolution/frameworks/python.d.ts.map +1 -0
  281. package/lib/dist/resolution/frameworks/python.js +278 -0
  282. package/lib/dist/resolution/frameworks/python.js.map +1 -0
  283. package/lib/dist/resolution/frameworks/react.d.ts +8 -0
  284. package/lib/dist/resolution/frameworks/react.d.ts.map +1 -0
  285. package/lib/dist/resolution/frameworks/react.js +272 -0
  286. package/lib/dist/resolution/frameworks/react.js.map +1 -0
  287. package/lib/dist/resolution/frameworks/ruby.d.ts +8 -0
  288. package/lib/dist/resolution/frameworks/ruby.d.ts.map +1 -0
  289. package/lib/dist/resolution/frameworks/ruby.js +198 -0
  290. package/lib/dist/resolution/frameworks/ruby.js.map +1 -0
  291. package/lib/dist/resolution/frameworks/rust.d.ts +8 -0
  292. package/lib/dist/resolution/frameworks/rust.d.ts.map +1 -0
  293. package/lib/dist/resolution/frameworks/rust.js +207 -0
  294. package/lib/dist/resolution/frameworks/rust.js.map +1 -0
  295. package/lib/dist/resolution/frameworks/svelte.d.ts +9 -0
  296. package/lib/dist/resolution/frameworks/svelte.d.ts.map +1 -0
  297. package/lib/dist/resolution/frameworks/svelte.js +249 -0
  298. package/lib/dist/resolution/frameworks/svelte.js.map +1 -0
  299. package/lib/dist/resolution/frameworks/swift.d.ts +10 -0
  300. package/lib/dist/resolution/frameworks/swift.d.ts.map +1 -0
  301. package/lib/dist/resolution/frameworks/swift.js +376 -0
  302. package/lib/dist/resolution/frameworks/swift.js.map +1 -0
  303. package/lib/dist/resolution/frameworks/vue.d.ts +9 -0
  304. package/lib/dist/resolution/frameworks/vue.d.ts.map +1 -0
  305. package/lib/dist/resolution/frameworks/vue.js +306 -0
  306. package/lib/dist/resolution/frameworks/vue.js.map +1 -0
  307. package/lib/dist/resolution/import-resolver.d.ts +40 -0
  308. package/lib/dist/resolution/import-resolver.d.ts.map +1 -0
  309. package/lib/dist/resolution/import-resolver.js +663 -0
  310. package/lib/dist/resolution/import-resolver.js.map +1 -0
  311. package/lib/dist/resolution/index.d.ts +106 -0
  312. package/lib/dist/resolution/index.d.ts.map +1 -0
  313. package/lib/dist/resolution/index.js +709 -0
  314. package/lib/dist/resolution/index.js.map +1 -0
  315. package/lib/dist/resolution/name-matcher.d.ts +32 -0
  316. package/lib/dist/resolution/name-matcher.d.ts.map +1 -0
  317. package/lib/dist/resolution/name-matcher.js +384 -0
  318. package/lib/dist/resolution/name-matcher.js.map +1 -0
  319. package/lib/dist/resolution/path-aliases.d.ts +68 -0
  320. package/lib/dist/resolution/path-aliases.d.ts.map +1 -0
  321. package/lib/dist/resolution/path-aliases.js +238 -0
  322. package/lib/dist/resolution/path-aliases.js.map +1 -0
  323. package/lib/dist/resolution/strip-comments.d.ts +27 -0
  324. package/lib/dist/resolution/strip-comments.d.ts.map +1 -0
  325. package/lib/dist/resolution/strip-comments.js +441 -0
  326. package/lib/dist/resolution/strip-comments.js.map +1 -0
  327. package/lib/dist/resolution/types.d.ts +172 -0
  328. package/lib/dist/resolution/types.d.ts.map +1 -0
  329. package/lib/dist/resolution/types.js +8 -0
  330. package/lib/dist/resolution/types.js.map +1 -0
  331. package/lib/dist/search/query-parser.d.ts +57 -0
  332. package/lib/dist/search/query-parser.d.ts.map +1 -0
  333. package/lib/dist/search/query-parser.js +177 -0
  334. package/lib/dist/search/query-parser.js.map +1 -0
  335. package/lib/dist/search/query-utils.d.ts +53 -0
  336. package/lib/dist/search/query-utils.d.ts.map +1 -0
  337. package/lib/dist/search/query-utils.js +350 -0
  338. package/lib/dist/search/query-utils.js.map +1 -0
  339. package/lib/dist/sync/git-hooks.d.ts +45 -0
  340. package/lib/dist/sync/git-hooks.d.ts.map +1 -0
  341. package/lib/dist/sync/git-hooks.js +223 -0
  342. package/lib/dist/sync/git-hooks.js.map +1 -0
  343. package/lib/dist/sync/index.d.ts +17 -0
  344. package/lib/dist/sync/index.d.ts.map +1 -0
  345. package/lib/dist/sync/index.js +28 -0
  346. package/lib/dist/sync/index.js.map +1 -0
  347. package/lib/dist/sync/watch-policy.d.ts +48 -0
  348. package/lib/dist/sync/watch-policy.d.ts.map +1 -0
  349. package/lib/dist/sync/watch-policy.js +124 -0
  350. package/lib/dist/sync/watch-policy.js.map +1 -0
  351. package/lib/dist/sync/watcher.d.ts +81 -0
  352. package/lib/dist/sync/watcher.d.ts.map +1 -0
  353. package/lib/dist/sync/watcher.js +194 -0
  354. package/lib/dist/sync/watcher.js.map +1 -0
  355. package/lib/dist/types.d.ts +423 -0
  356. package/lib/dist/types.d.ts.map +1 -0
  357. package/lib/dist/types.js +262 -0
  358. package/lib/dist/types.js.map +1 -0
  359. package/lib/dist/ui/glyphs.d.ts +42 -0
  360. package/lib/dist/ui/glyphs.d.ts.map +1 -0
  361. package/lib/dist/ui/glyphs.js +78 -0
  362. package/lib/dist/ui/glyphs.js.map +1 -0
  363. package/lib/dist/ui/shimmer-progress.d.ts +11 -0
  364. package/lib/dist/ui/shimmer-progress.d.ts.map +1 -0
  365. package/lib/dist/ui/shimmer-progress.js +90 -0
  366. package/lib/dist/ui/shimmer-progress.js.map +1 -0
  367. package/lib/dist/ui/shimmer-worker.d.ts +2 -0
  368. package/lib/dist/ui/shimmer-worker.d.ts.map +1 -0
  369. package/lib/dist/ui/shimmer-worker.js +118 -0
  370. package/lib/dist/ui/shimmer-worker.js.map +1 -0
  371. package/lib/dist/ui/types.d.ts +17 -0
  372. package/lib/dist/ui/types.d.ts.map +1 -0
  373. package/lib/dist/ui/types.js +3 -0
  374. package/lib/dist/ui/types.js.map +1 -0
  375. package/lib/dist/utils.d.ts +205 -0
  376. package/lib/dist/utils.d.ts.map +1 -0
  377. package/lib/dist/utils.js +549 -0
  378. package/lib/dist/utils.js.map +1 -0
  379. package/lib/node_modules/.package-lock.json +116 -0
  380. package/lib/node_modules/@clack/core/CHANGELOG.md +348 -0
  381. package/lib/node_modules/@clack/core/LICENSE +9 -0
  382. package/lib/node_modules/@clack/core/README.md +22 -0
  383. package/lib/node_modules/@clack/core/dist/index.d.mts +363 -0
  384. package/lib/node_modules/@clack/core/dist/index.mjs +17 -0
  385. package/lib/node_modules/@clack/core/dist/index.mjs.map +1 -0
  386. package/lib/node_modules/@clack/core/package.json +63 -0
  387. package/lib/node_modules/@clack/prompts/CHANGELOG.md +591 -0
  388. package/lib/node_modules/@clack/prompts/LICENSE +9 -0
  389. package/lib/node_modules/@clack/prompts/README.md +375 -0
  390. package/lib/node_modules/@clack/prompts/dist/index.d.mts +396 -0
  391. package/lib/node_modules/@clack/prompts/dist/index.mjs +144 -0
  392. package/lib/node_modules/@clack/prompts/dist/index.mjs.map +1 -0
  393. package/lib/node_modules/@clack/prompts/package.json +68 -0
  394. package/lib/node_modules/commander/LICENSE +22 -0
  395. package/lib/node_modules/commander/Readme.md +1176 -0
  396. package/lib/node_modules/commander/esm.mjs +16 -0
  397. package/lib/node_modules/commander/index.js +24 -0
  398. package/lib/node_modules/commander/lib/argument.js +150 -0
  399. package/lib/node_modules/commander/lib/command.js +2777 -0
  400. package/lib/node_modules/commander/lib/error.js +39 -0
  401. package/lib/node_modules/commander/lib/help.js +747 -0
  402. package/lib/node_modules/commander/lib/option.js +380 -0
  403. package/lib/node_modules/commander/lib/suggestSimilar.js +101 -0
  404. package/lib/node_modules/commander/package-support.json +19 -0
  405. package/lib/node_modules/commander/package.json +82 -0
  406. package/lib/node_modules/commander/typings/esm.d.mts +3 -0
  407. package/lib/node_modules/commander/typings/index.d.ts +1113 -0
  408. package/lib/node_modules/fast-string-truncated-width/dist/index.d.ts +4 -0
  409. package/lib/node_modules/fast-string-truncated-width/dist/index.js +111 -0
  410. package/lib/node_modules/fast-string-truncated-width/dist/types.d.ts +19 -0
  411. package/lib/node_modules/fast-string-truncated-width/dist/types.js +2 -0
  412. package/lib/node_modules/fast-string-truncated-width/dist/utils.d.ts +4 -0
  413. package/lib/node_modules/fast-string-truncated-width/dist/utils.js +20 -0
  414. package/lib/node_modules/fast-string-truncated-width/license +21 -0
  415. package/lib/node_modules/fast-string-truncated-width/package.json +35 -0
  416. package/lib/node_modules/fast-string-truncated-width/readme.md +59 -0
  417. package/lib/node_modules/fast-string-width/dist/index.d.ts +4 -0
  418. package/lib/node_modules/fast-string-width/dist/index.js +14 -0
  419. package/lib/node_modules/fast-string-width/license +21 -0
  420. package/lib/node_modules/fast-string-width/package.json +34 -0
  421. package/lib/node_modules/fast-string-width/readme.md +42 -0
  422. package/lib/node_modules/fast-wrap-ansi/LICENSE +23 -0
  423. package/lib/node_modules/fast-wrap-ansi/README.md +26 -0
  424. package/lib/node_modules/fast-wrap-ansi/lib/main.d.ts +6 -0
  425. package/lib/node_modules/fast-wrap-ansi/lib/main.js +219 -0
  426. package/lib/node_modules/fast-wrap-ansi/lib/main.js.map +1 -0
  427. package/lib/node_modules/fast-wrap-ansi/package.json +51 -0
  428. package/lib/node_modules/jsonc-parser/CHANGELOG.md +76 -0
  429. package/lib/node_modules/jsonc-parser/LICENSE.md +21 -0
  430. package/lib/node_modules/jsonc-parser/README.md +364 -0
  431. package/lib/node_modules/jsonc-parser/SECURITY.md +41 -0
  432. package/lib/node_modules/jsonc-parser/lib/esm/impl/edit.js +185 -0
  433. package/lib/node_modules/jsonc-parser/lib/esm/impl/format.js +261 -0
  434. package/lib/node_modules/jsonc-parser/lib/esm/impl/parser.js +659 -0
  435. package/lib/node_modules/jsonc-parser/lib/esm/impl/scanner.js +443 -0
  436. package/lib/node_modules/jsonc-parser/lib/esm/impl/string-intern.js +29 -0
  437. package/lib/node_modules/jsonc-parser/lib/esm/main.d.ts +351 -0
  438. package/lib/node_modules/jsonc-parser/lib/esm/main.js +178 -0
  439. package/lib/node_modules/jsonc-parser/lib/umd/impl/edit.js +201 -0
  440. package/lib/node_modules/jsonc-parser/lib/umd/impl/format.js +275 -0
  441. package/lib/node_modules/jsonc-parser/lib/umd/impl/parser.js +682 -0
  442. package/lib/node_modules/jsonc-parser/lib/umd/impl/scanner.js +456 -0
  443. package/lib/node_modules/jsonc-parser/lib/umd/impl/string-intern.js +42 -0
  444. package/lib/node_modules/jsonc-parser/lib/umd/main.d.ts +351 -0
  445. package/lib/node_modules/jsonc-parser/lib/umd/main.js +194 -0
  446. package/lib/node_modules/jsonc-parser/package.json +37 -0
  447. package/lib/node_modules/picomatch/LICENSE +21 -0
  448. package/lib/node_modules/picomatch/README.md +738 -0
  449. package/lib/node_modules/picomatch/index.js +17 -0
  450. package/lib/node_modules/picomatch/lib/constants.js +180 -0
  451. package/lib/node_modules/picomatch/lib/parse.js +1085 -0
  452. package/lib/node_modules/picomatch/lib/picomatch.js +341 -0
  453. package/lib/node_modules/picomatch/lib/scan.js +391 -0
  454. package/lib/node_modules/picomatch/lib/utils.js +72 -0
  455. package/lib/node_modules/picomatch/package.json +83 -0
  456. package/lib/node_modules/picomatch/posix.js +3 -0
  457. package/lib/node_modules/sisteransi/license +21 -0
  458. package/lib/node_modules/sisteransi/package.json +34 -0
  459. package/lib/node_modules/sisteransi/readme.md +113 -0
  460. package/lib/node_modules/sisteransi/src/index.js +58 -0
  461. package/lib/node_modules/sisteransi/src/sisteransi.d.ts +35 -0
  462. package/lib/node_modules/tree-sitter-wasms/LICENSE +24 -0
  463. package/lib/node_modules/tree-sitter-wasms/README.md +23 -0
  464. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-bash.wasm +0 -0
  465. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c.wasm +0 -0
  466. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c_sharp.wasm +0 -0
  467. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-cpp.wasm +0 -0
  468. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-css.wasm +0 -0
  469. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-dart.wasm +0 -0
  470. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elisp.wasm +0 -0
  471. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elixir.wasm +0 -0
  472. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elm.wasm +0 -0
  473. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-embedded_template.wasm +0 -0
  474. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-go.wasm +0 -0
  475. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-html.wasm +0 -0
  476. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-java.wasm +0 -0
  477. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-javascript.wasm +0 -0
  478. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-json.wasm +0 -0
  479. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-kotlin.wasm +0 -0
  480. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-lua.wasm +0 -0
  481. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-objc.wasm +0 -0
  482. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ocaml.wasm +0 -0
  483. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-php.wasm +0 -0
  484. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-python.wasm +0 -0
  485. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ql.wasm +0 -0
  486. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rescript.wasm +0 -0
  487. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ruby.wasm +0 -0
  488. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rust.wasm +0 -0
  489. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-scala.wasm +0 -0
  490. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-solidity.wasm +0 -0
  491. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-swift.wasm +0 -0
  492. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-systemrdl.wasm +0 -0
  493. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tlaplus.wasm +0 -0
  494. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-toml.wasm +0 -0
  495. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tsx.wasm +0 -0
  496. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-typescript.wasm +0 -0
  497. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-vue.wasm +0 -0
  498. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-yaml.wasm +0 -0
  499. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-zig.wasm +0 -0
  500. package/lib/node_modules/tree-sitter-wasms/package.json +64 -0
  501. package/lib/node_modules/web-tree-sitter/LICENSE +21 -0
  502. package/lib/node_modules/web-tree-sitter/README.md +269 -0
  503. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs +4558 -0
  504. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs.map +7 -0
  505. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js +4516 -0
  506. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js.map +7 -0
  507. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
  508. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm.map +31 -0
  509. package/lib/node_modules/web-tree-sitter/lib/alloc.c +48 -0
  510. package/lib/node_modules/web-tree-sitter/lib/alloc.h +41 -0
  511. package/lib/node_modules/web-tree-sitter/lib/array.h +291 -0
  512. package/lib/node_modules/web-tree-sitter/lib/atomic.h +68 -0
  513. package/lib/node_modules/web-tree-sitter/lib/clock.h +146 -0
  514. package/lib/node_modules/web-tree-sitter/lib/error_costs.h +11 -0
  515. package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.c +523 -0
  516. package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.h +36 -0
  517. package/lib/node_modules/web-tree-sitter/lib/host.h +21 -0
  518. package/lib/node_modules/web-tree-sitter/lib/language.c +293 -0
  519. package/lib/node_modules/web-tree-sitter/lib/language.h +293 -0
  520. package/lib/node_modules/web-tree-sitter/lib/length.h +52 -0
  521. package/lib/node_modules/web-tree-sitter/lib/lexer.c +483 -0
  522. package/lib/node_modules/web-tree-sitter/lib/lexer.h +54 -0
  523. package/lib/node_modules/web-tree-sitter/lib/lib.c +12 -0
  524. package/lib/node_modules/web-tree-sitter/lib/node.c +875 -0
  525. package/lib/node_modules/web-tree-sitter/lib/parser.c +2297 -0
  526. package/lib/node_modules/web-tree-sitter/lib/parser.h +286 -0
  527. package/lib/node_modules/web-tree-sitter/lib/point.h +48 -0
  528. package/lib/node_modules/web-tree-sitter/lib/query.c +4347 -0
  529. package/lib/node_modules/web-tree-sitter/lib/reduce_action.h +34 -0
  530. package/lib/node_modules/web-tree-sitter/lib/reusable_node.h +95 -0
  531. package/lib/node_modules/web-tree-sitter/lib/stack.c +912 -0
  532. package/lib/node_modules/web-tree-sitter/lib/stack.h +133 -0
  533. package/lib/node_modules/web-tree-sitter/lib/subtree.c +1034 -0
  534. package/lib/node_modules/web-tree-sitter/lib/subtree.h +399 -0
  535. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.c +987 -0
  536. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.cjs +2988 -0
  537. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm +0 -0
  538. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm.map +1 -0
  539. package/lib/node_modules/web-tree-sitter/lib/tree.c +170 -0
  540. package/lib/node_modules/web-tree-sitter/lib/tree.h +31 -0
  541. package/lib/node_modules/web-tree-sitter/lib/tree_cursor.c +716 -0
  542. package/lib/node_modules/web-tree-sitter/lib/tree_cursor.h +48 -0
  543. package/lib/node_modules/web-tree-sitter/lib/ts_assert.h +11 -0
  544. package/lib/node_modules/web-tree-sitter/lib/unicode.h +75 -0
  545. package/lib/node_modules/web-tree-sitter/lib/wasm_store.c +1937 -0
  546. package/lib/node_modules/web-tree-sitter/lib/wasm_store.h +31 -0
  547. package/lib/node_modules/web-tree-sitter/package.json +98 -0
  548. package/lib/node_modules/web-tree-sitter/src/bindings.ts +26 -0
  549. package/lib/node_modules/web-tree-sitter/src/constants.ts +133 -0
  550. package/lib/node_modules/web-tree-sitter/src/index.ts +31 -0
  551. package/lib/node_modules/web-tree-sitter/src/language.ts +291 -0
  552. package/lib/node_modules/web-tree-sitter/src/lookahead_iterator.ts +75 -0
  553. package/lib/node_modules/web-tree-sitter/src/marshal.ts +176 -0
  554. package/lib/node_modules/web-tree-sitter/src/node.ts +646 -0
  555. package/lib/node_modules/web-tree-sitter/src/parser.ts +325 -0
  556. package/lib/node_modules/web-tree-sitter/src/query.ts +973 -0
  557. package/lib/node_modules/web-tree-sitter/src/tree.ts +145 -0
  558. package/lib/node_modules/web-tree-sitter/src/tree_cursor.ts +318 -0
  559. package/lib/node_modules/web-tree-sitter/tree-sitter.cjs +4031 -0
  560. package/lib/node_modules/web-tree-sitter/tree-sitter.cjs.map +7 -0
  561. package/lib/node_modules/web-tree-sitter/tree-sitter.js +3980 -0
  562. package/lib/node_modules/web-tree-sitter/tree-sitter.js.map +7 -0
  563. package/lib/node_modules/web-tree-sitter/tree-sitter.wasm +0 -0
  564. package/lib/node_modules/web-tree-sitter/tree-sitter.wasm.map +30 -0
  565. package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts +1030 -0
  566. package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +56 -0
  567. package/lib/package.json +55 -0
  568. package/node.exe +0 -0
  569. package/package.json +17 -0
@@ -0,0 +1,833 @@
1
+ "use strict";
2
+ /**
3
+ * CodeGraph
4
+ *
5
+ * A local-first code intelligence system that builds a semantic
6
+ * knowledge graph from any codebase.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
42
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.CodeGraph = exports.MCPServer = exports.FileWatcher = exports.MemoryMonitor = exports.throttle = exports.debounce = exports.processInBatches = exports.FileLock = exports.Mutex = exports.defaultLogger = exports.silentLogger = exports.getLogger = exports.setLogger = exports.ConfigError = exports.VectorError = exports.SearchError = exports.DatabaseError = exports.ParseError = exports.FileError = exports.CodeGraphError = exports.loadAllGrammars = exports.loadGrammarsForLanguages = exports.initGrammars = exports.getSupportedLanguages = exports.isGrammarLoaded = exports.isLanguageSupported = exports.detectLanguage = exports.CODEGRAPH_DIR = exports.findNearestCodeGraphRoot = exports.isInitialized = exports.getCodeGraphDir = exports.getConfigPath = exports.getDatabasePath = void 0;
46
+ const path = __importStar(require("path"));
47
+ const db_1 = require("./db");
48
+ const queries_1 = require("./db/queries");
49
+ const config_1 = require("./config");
50
+ const directory_1 = require("./directory");
51
+ const extraction_1 = require("./extraction");
52
+ const resolution_1 = require("./resolution");
53
+ const graph_1 = require("./graph");
54
+ const context_1 = require("./context");
55
+ const utils_1 = require("./utils");
56
+ const sync_1 = require("./sync");
57
+ // Re-export types for consumers
58
+ __exportStar(require("./types"), exports);
59
+ var db_2 = require("./db");
60
+ Object.defineProperty(exports, "getDatabasePath", { enumerable: true, get: function () { return db_2.getDatabasePath; } });
61
+ var config_2 = require("./config");
62
+ Object.defineProperty(exports, "getConfigPath", { enumerable: true, get: function () { return config_2.getConfigPath; } });
63
+ var directory_2 = require("./directory");
64
+ Object.defineProperty(exports, "getCodeGraphDir", { enumerable: true, get: function () { return directory_2.getCodeGraphDir; } });
65
+ Object.defineProperty(exports, "isInitialized", { enumerable: true, get: function () { return directory_2.isInitialized; } });
66
+ Object.defineProperty(exports, "findNearestCodeGraphRoot", { enumerable: true, get: function () { return directory_2.findNearestCodeGraphRoot; } });
67
+ Object.defineProperty(exports, "CODEGRAPH_DIR", { enumerable: true, get: function () { return directory_2.CODEGRAPH_DIR; } });
68
+ var extraction_2 = require("./extraction");
69
+ Object.defineProperty(exports, "detectLanguage", { enumerable: true, get: function () { return extraction_2.detectLanguage; } });
70
+ Object.defineProperty(exports, "isLanguageSupported", { enumerable: true, get: function () { return extraction_2.isLanguageSupported; } });
71
+ Object.defineProperty(exports, "isGrammarLoaded", { enumerable: true, get: function () { return extraction_2.isGrammarLoaded; } });
72
+ Object.defineProperty(exports, "getSupportedLanguages", { enumerable: true, get: function () { return extraction_2.getSupportedLanguages; } });
73
+ Object.defineProperty(exports, "initGrammars", { enumerable: true, get: function () { return extraction_2.initGrammars; } });
74
+ Object.defineProperty(exports, "loadGrammarsForLanguages", { enumerable: true, get: function () { return extraction_2.loadGrammarsForLanguages; } });
75
+ Object.defineProperty(exports, "loadAllGrammars", { enumerable: true, get: function () { return extraction_2.loadAllGrammars; } });
76
+ var errors_1 = require("./errors");
77
+ Object.defineProperty(exports, "CodeGraphError", { enumerable: true, get: function () { return errors_1.CodeGraphError; } });
78
+ Object.defineProperty(exports, "FileError", { enumerable: true, get: function () { return errors_1.FileError; } });
79
+ Object.defineProperty(exports, "ParseError", { enumerable: true, get: function () { return errors_1.ParseError; } });
80
+ Object.defineProperty(exports, "DatabaseError", { enumerable: true, get: function () { return errors_1.DatabaseError; } });
81
+ Object.defineProperty(exports, "SearchError", { enumerable: true, get: function () { return errors_1.SearchError; } });
82
+ Object.defineProperty(exports, "VectorError", { enumerable: true, get: function () { return errors_1.VectorError; } });
83
+ Object.defineProperty(exports, "ConfigError", { enumerable: true, get: function () { return errors_1.ConfigError; } });
84
+ Object.defineProperty(exports, "setLogger", { enumerable: true, get: function () { return errors_1.setLogger; } });
85
+ Object.defineProperty(exports, "getLogger", { enumerable: true, get: function () { return errors_1.getLogger; } });
86
+ Object.defineProperty(exports, "silentLogger", { enumerable: true, get: function () { return errors_1.silentLogger; } });
87
+ Object.defineProperty(exports, "defaultLogger", { enumerable: true, get: function () { return errors_1.defaultLogger; } });
88
+ var utils_2 = require("./utils");
89
+ Object.defineProperty(exports, "Mutex", { enumerable: true, get: function () { return utils_2.Mutex; } });
90
+ Object.defineProperty(exports, "FileLock", { enumerable: true, get: function () { return utils_2.FileLock; } });
91
+ Object.defineProperty(exports, "processInBatches", { enumerable: true, get: function () { return utils_2.processInBatches; } });
92
+ Object.defineProperty(exports, "debounce", { enumerable: true, get: function () { return utils_2.debounce; } });
93
+ Object.defineProperty(exports, "throttle", { enumerable: true, get: function () { return utils_2.throttle; } });
94
+ Object.defineProperty(exports, "MemoryMonitor", { enumerable: true, get: function () { return utils_2.MemoryMonitor; } });
95
+ var sync_2 = require("./sync");
96
+ Object.defineProperty(exports, "FileWatcher", { enumerable: true, get: function () { return sync_2.FileWatcher; } });
97
+ var mcp_1 = require("./mcp");
98
+ Object.defineProperty(exports, "MCPServer", { enumerable: true, get: function () { return mcp_1.MCPServer; } });
99
+ /**
100
+ * Main CodeGraph class
101
+ *
102
+ * Provides the primary interface for interacting with the code knowledge graph.
103
+ */
104
+ class CodeGraph {
105
+ db;
106
+ queries;
107
+ config;
108
+ projectRoot;
109
+ orchestrator;
110
+ resolver;
111
+ graphManager;
112
+ traverser;
113
+ contextBuilder;
114
+ // Mutex for preventing concurrent indexing operations (in-process)
115
+ indexMutex = new utils_1.Mutex();
116
+ // File lock for preventing concurrent writes across processes (CLI, MCP, git hooks)
117
+ fileLock;
118
+ // File watcher for auto-sync on file changes
119
+ watcher = null;
120
+ constructor(db, queries, config, projectRoot) {
121
+ this.db = db;
122
+ this.queries = queries;
123
+ this.config = config;
124
+ this.projectRoot = projectRoot;
125
+ this.fileLock = new utils_1.FileLock(path.join(projectRoot, '.codegraph', 'codegraph.lock'));
126
+ this.orchestrator = new extraction_1.ExtractionOrchestrator(projectRoot, config, queries);
127
+ this.resolver = (0, resolution_1.createResolver)(projectRoot, queries);
128
+ this.graphManager = new graph_1.GraphQueryManager(queries);
129
+ this.traverser = new graph_1.GraphTraverser(queries);
130
+ this.contextBuilder = (0, context_1.createContextBuilder)(projectRoot, queries, this.traverser);
131
+ }
132
+ // ===========================================================================
133
+ // Lifecycle Methods
134
+ // ===========================================================================
135
+ /**
136
+ * Initialize a new CodeGraph project
137
+ *
138
+ * Creates the .CodeGraph directory, database, and configuration.
139
+ *
140
+ * @param projectRoot - Path to the project root directory
141
+ * @param options - Initialization options
142
+ * @returns A new CodeGraph instance
143
+ */
144
+ static async init(projectRoot, options = {}) {
145
+ await (0, extraction_1.initGrammars)();
146
+ const resolvedRoot = path.resolve(projectRoot);
147
+ // Check if already initialized
148
+ if ((0, directory_1.isInitialized)(resolvedRoot)) {
149
+ throw new Error(`CodeGraph already initialized in ${resolvedRoot}`);
150
+ }
151
+ // Create directory structure
152
+ (0, directory_1.createDirectory)(resolvedRoot);
153
+ // Create and save configuration
154
+ const config = (0, config_1.createDefaultConfig)(resolvedRoot);
155
+ if (options.config) {
156
+ Object.assign(config, options.config);
157
+ }
158
+ (0, config_1.saveConfig)(resolvedRoot, config);
159
+ // Initialize database
160
+ const dbPath = (0, db_1.getDatabasePath)(resolvedRoot);
161
+ const db = db_1.DatabaseConnection.initialize(dbPath);
162
+ const queries = new queries_1.QueryBuilder(db.getDb());
163
+ const instance = new CodeGraph(db, queries, config, resolvedRoot);
164
+ // Run initial indexing if requested
165
+ if (options.index) {
166
+ await instance.indexAll({ onProgress: options.onProgress });
167
+ }
168
+ return instance;
169
+ }
170
+ /**
171
+ * Initialize synchronously (without indexing)
172
+ */
173
+ static initSync(projectRoot, options = {}) {
174
+ const resolvedRoot = path.resolve(projectRoot);
175
+ // Check if already initialized
176
+ if ((0, directory_1.isInitialized)(resolvedRoot)) {
177
+ throw new Error(`CodeGraph already initialized in ${resolvedRoot}`);
178
+ }
179
+ // Create directory structure
180
+ (0, directory_1.createDirectory)(resolvedRoot);
181
+ // Create and save configuration
182
+ const config = (0, config_1.createDefaultConfig)(resolvedRoot);
183
+ if (options.config) {
184
+ Object.assign(config, options.config);
185
+ }
186
+ (0, config_1.saveConfig)(resolvedRoot, config);
187
+ // Initialize database
188
+ const dbPath = (0, db_1.getDatabasePath)(resolvedRoot);
189
+ const db = db_1.DatabaseConnection.initialize(dbPath);
190
+ const queries = new queries_1.QueryBuilder(db.getDb());
191
+ return new CodeGraph(db, queries, config, resolvedRoot);
192
+ }
193
+ /**
194
+ * Open an existing CodeGraph project
195
+ *
196
+ * @param projectRoot - Path to the project root directory
197
+ * @param options - Open options
198
+ * @returns A CodeGraph instance
199
+ */
200
+ static async open(projectRoot, options = {}) {
201
+ await (0, extraction_1.initGrammars)();
202
+ const resolvedRoot = path.resolve(projectRoot);
203
+ // Check if initialized
204
+ if (!(0, directory_1.isInitialized)(resolvedRoot)) {
205
+ throw new Error(`CodeGraph not initialized in ${resolvedRoot}. Run init() first.`);
206
+ }
207
+ // Validate directory structure
208
+ const validation = (0, directory_1.validateDirectory)(resolvedRoot);
209
+ if (!validation.valid) {
210
+ throw new Error(`Invalid CodeGraph directory: ${validation.errors.join(', ')}`);
211
+ }
212
+ // Load configuration
213
+ const config = (0, config_1.loadConfig)(resolvedRoot);
214
+ // Open database
215
+ const dbPath = (0, db_1.getDatabasePath)(resolvedRoot);
216
+ const db = db_1.DatabaseConnection.open(dbPath);
217
+ const queries = new queries_1.QueryBuilder(db.getDb());
218
+ const instance = new CodeGraph(db, queries, config, resolvedRoot);
219
+ // Sync if requested
220
+ if (options.sync) {
221
+ await instance.sync();
222
+ }
223
+ return instance;
224
+ }
225
+ /**
226
+ * Open synchronously (without sync)
227
+ */
228
+ static openSync(projectRoot) {
229
+ const resolvedRoot = path.resolve(projectRoot);
230
+ // Check if initialized
231
+ if (!(0, directory_1.isInitialized)(resolvedRoot)) {
232
+ throw new Error(`CodeGraph not initialized in ${resolvedRoot}. Run init() first.`);
233
+ }
234
+ // Validate directory structure
235
+ const validation = (0, directory_1.validateDirectory)(resolvedRoot);
236
+ if (!validation.valid) {
237
+ throw new Error(`Invalid CodeGraph directory: ${validation.errors.join(', ')}`);
238
+ }
239
+ // Load configuration
240
+ const config = (0, config_1.loadConfig)(resolvedRoot);
241
+ // Open database
242
+ const dbPath = (0, db_1.getDatabasePath)(resolvedRoot);
243
+ const db = db_1.DatabaseConnection.open(dbPath);
244
+ const queries = new queries_1.QueryBuilder(db.getDb());
245
+ return new CodeGraph(db, queries, config, resolvedRoot);
246
+ }
247
+ /**
248
+ * Check if a directory has been initialized as a CodeGraph project
249
+ */
250
+ static isInitialized(projectRoot) {
251
+ return (0, directory_1.isInitialized)(path.resolve(projectRoot));
252
+ }
253
+ /**
254
+ * Close the CodeGraph instance and release resources
255
+ */
256
+ close() {
257
+ this.unwatch();
258
+ // Release file lock if held
259
+ this.fileLock.release();
260
+ this.db.close();
261
+ }
262
+ // ===========================================================================
263
+ // Configuration
264
+ // ===========================================================================
265
+ /**
266
+ * Get the current configuration
267
+ */
268
+ getConfig() {
269
+ return { ...this.config };
270
+ }
271
+ /**
272
+ * Update configuration
273
+ */
274
+ updateConfig(updates) {
275
+ Object.assign(this.config, updates);
276
+ (0, config_1.saveConfig)(this.projectRoot, this.config);
277
+ // Recreate orchestrator and resolver with new config
278
+ this.orchestrator = new extraction_1.ExtractionOrchestrator(this.projectRoot, this.config, this.queries);
279
+ this.resolver = (0, resolution_1.createResolver)(this.projectRoot, this.queries);
280
+ }
281
+ /**
282
+ * Get the project root directory
283
+ */
284
+ getProjectRoot() {
285
+ return this.projectRoot;
286
+ }
287
+ // ===========================================================================
288
+ // Indexing
289
+ // ===========================================================================
290
+ /**
291
+ * Index all files in the project
292
+ *
293
+ * Uses a mutex to prevent concurrent indexing operations.
294
+ */
295
+ async indexAll(options = {}) {
296
+ return this.indexMutex.withLock(async () => {
297
+ try {
298
+ this.fileLock.acquire();
299
+ }
300
+ catch {
301
+ return { success: false, filesIndexed: 0, filesSkipped: 0, filesErrored: 0, nodesCreated: 0, edgesCreated: 0, errors: [{ message: 'Could not acquire file lock - another process may be indexing', severity: 'error' }], durationMs: 0 };
302
+ }
303
+ try {
304
+ const result = await this.orchestrator.indexAll(options.onProgress, options.signal, options.verbose);
305
+ // Resolve references to create call/import/extends edges
306
+ if (result.success && result.filesIndexed > 0) {
307
+ // Get count without loading all refs into memory
308
+ const unresolvedCount = this.queries.getUnresolvedReferencesCount();
309
+ options.onProgress?.({
310
+ phase: 'resolving',
311
+ current: 0,
312
+ total: unresolvedCount,
313
+ });
314
+ await this.resolveReferencesBatched((current, total) => {
315
+ options.onProgress?.({
316
+ phase: 'resolving',
317
+ current,
318
+ total,
319
+ });
320
+ });
321
+ }
322
+ return result;
323
+ }
324
+ finally {
325
+ this.fileLock.release();
326
+ }
327
+ });
328
+ }
329
+ /**
330
+ * Index specific files
331
+ *
332
+ * Uses a mutex to prevent concurrent indexing operations.
333
+ */
334
+ async indexFiles(filePaths) {
335
+ return this.indexMutex.withLock(async () => {
336
+ try {
337
+ this.fileLock.acquire();
338
+ }
339
+ catch {
340
+ return { success: false, filesIndexed: 0, filesSkipped: 0, filesErrored: 0, nodesCreated: 0, edgesCreated: 0, errors: [{ message: 'Could not acquire file lock - another process may be indexing', severity: 'error' }], durationMs: 0 };
341
+ }
342
+ try {
343
+ return this.orchestrator.indexFiles(filePaths);
344
+ }
345
+ finally {
346
+ this.fileLock.release();
347
+ }
348
+ });
349
+ }
350
+ /**
351
+ * Sync with current file state (incremental update)
352
+ *
353
+ * Uses a mutex to prevent concurrent indexing operations.
354
+ */
355
+ async sync(options = {}) {
356
+ return this.indexMutex.withLock(async () => {
357
+ try {
358
+ this.fileLock.acquire();
359
+ }
360
+ catch {
361
+ return { filesChecked: 0, filesAdded: 0, filesModified: 0, filesRemoved: 0, nodesUpdated: 0, durationMs: 0 };
362
+ }
363
+ try {
364
+ const result = await this.orchestrator.sync(options.onProgress);
365
+ // Resolve references if files were updated
366
+ if (result.filesAdded > 0 || result.filesModified > 0) {
367
+ if (result.changedFilePaths) {
368
+ // Scope resolution to changed files (git fast path — bounded set)
369
+ const unresolvedRefs = this.queries.getUnresolvedReferencesByFiles(result.changedFilePaths);
370
+ options.onProgress?.({
371
+ phase: 'resolving',
372
+ current: 0,
373
+ total: unresolvedRefs.length,
374
+ });
375
+ this.resolver.resolveAndPersist(unresolvedRefs, (current, total) => {
376
+ options.onProgress?.({
377
+ phase: 'resolving',
378
+ current,
379
+ total,
380
+ });
381
+ });
382
+ }
383
+ else {
384
+ // No git info — use batched resolution to avoid OOM
385
+ const unresolvedCount = this.queries.getUnresolvedReferencesCount();
386
+ options.onProgress?.({
387
+ phase: 'resolving',
388
+ current: 0,
389
+ total: unresolvedCount,
390
+ });
391
+ await this.resolveReferencesBatched((current, total) => {
392
+ options.onProgress?.({
393
+ phase: 'resolving',
394
+ current,
395
+ total,
396
+ });
397
+ });
398
+ }
399
+ }
400
+ return result;
401
+ }
402
+ finally {
403
+ this.fileLock.release();
404
+ }
405
+ });
406
+ }
407
+ /**
408
+ * Check if an indexing operation is currently in progress
409
+ */
410
+ isIndexing() {
411
+ return this.indexMutex.isLocked();
412
+ }
413
+ // ===========================================================================
414
+ // File Watching
415
+ // ===========================================================================
416
+ /**
417
+ * Start watching for file changes and auto-syncing.
418
+ *
419
+ * Uses native OS file events (FSEvents on macOS, inotify on Linux 19+,
420
+ * ReadDirectoryChangesW on Windows) with debouncing to avoid thrashing.
421
+ *
422
+ * @param options - Watch options (debounce delay, callbacks)
423
+ * @returns true if watching started successfully
424
+ */
425
+ watch(options = {}) {
426
+ if (this.watcher?.isActive())
427
+ return true;
428
+ this.watcher = new sync_1.FileWatcher(this.projectRoot, this.config, async () => {
429
+ const result = await this.sync();
430
+ const filesChanged = result.filesAdded + result.filesModified + result.filesRemoved;
431
+ return { filesChanged, durationMs: result.durationMs };
432
+ }, options);
433
+ return this.watcher.start();
434
+ }
435
+ /**
436
+ * Stop watching for file changes.
437
+ */
438
+ unwatch() {
439
+ if (this.watcher) {
440
+ this.watcher.stop();
441
+ this.watcher = null;
442
+ }
443
+ }
444
+ /**
445
+ * Check if the file watcher is active.
446
+ */
447
+ isWatching() {
448
+ return this.watcher?.isActive() ?? false;
449
+ }
450
+ /**
451
+ * Get files that have changed since last index
452
+ */
453
+ getChangedFiles() {
454
+ return this.orchestrator.getChangedFiles();
455
+ }
456
+ /**
457
+ * Extract nodes and edges from source code (without storing)
458
+ */
459
+ extractFromSource(filePath, source) {
460
+ return (0, extraction_1.extractFromSource)(filePath, source);
461
+ }
462
+ // ===========================================================================
463
+ // Reference Resolution
464
+ // ===========================================================================
465
+ /**
466
+ * Resolve unresolved references and create edges
467
+ *
468
+ * This method takes unresolved references from extraction and attempts
469
+ * to resolve them using multiple strategies:
470
+ * - Framework-specific patterns (React, Express, Laravel)
471
+ * - Import-based resolution
472
+ * - Name-based symbol matching
473
+ */
474
+ resolveReferences(onProgress) {
475
+ // Get all unresolved references from the database
476
+ const unresolvedRefs = this.queries.getUnresolvedReferences();
477
+ return this.resolver.resolveAndPersist(unresolvedRefs, onProgress);
478
+ }
479
+ /**
480
+ * Resolve references in batches to keep memory bounded on large codebases.
481
+ * Processes chunks of unresolved refs, persisting results after each batch.
482
+ */
483
+ async resolveReferencesBatched(onProgress) {
484
+ return this.resolver.resolveAndPersistBatched(onProgress);
485
+ }
486
+ /**
487
+ * Get detected frameworks in the project
488
+ */
489
+ getDetectedFrameworks() {
490
+ return this.resolver.getDetectedFrameworks();
491
+ }
492
+ /**
493
+ * Re-initialize the resolver (useful after adding new files)
494
+ */
495
+ reinitializeResolver() {
496
+ this.resolver.initialize();
497
+ }
498
+ // ===========================================================================
499
+ // Graph Statistics
500
+ // ===========================================================================
501
+ /**
502
+ * Get statistics about the knowledge graph
503
+ */
504
+ getStats() {
505
+ const stats = this.queries.getStats();
506
+ stats.dbSizeBytes = this.db.getSize();
507
+ return stats;
508
+ }
509
+ /**
510
+ * Active SQLite backend for this project's connection (`node-sqlite` — Node's
511
+ * built-in real-SQLite module). Surfaced via `codegraph status` and the
512
+ * `codegraph_status` MCP tool alongside the effective journal mode.
513
+ */
514
+ getBackend() {
515
+ return this.db.getBackend();
516
+ }
517
+ /**
518
+ * The journal mode actually in effect ('wal', 'delete', …). 'wal' means
519
+ * readers never block on a concurrent writer; anything else means they can,
520
+ * which is the precondition for the "database is locked" failures in issue
521
+ * #238. Surfaced via `codegraph status` and the `codegraph_status` MCP tool.
522
+ */
523
+ getJournalMode() {
524
+ return this.db.getJournalMode();
525
+ }
526
+ // ===========================================================================
527
+ // Node Operations
528
+ // ===========================================================================
529
+ /**
530
+ * Get a node by ID
531
+ */
532
+ getNode(id) {
533
+ return this.queries.getNodeById(id);
534
+ }
535
+ /**
536
+ * Get all nodes in a file
537
+ */
538
+ getNodesInFile(filePath) {
539
+ return this.queries.getNodesByFile(filePath);
540
+ }
541
+ /**
542
+ * Get all nodes of a specific kind
543
+ */
544
+ getNodesByKind(kind) {
545
+ return this.queries.getNodesByKind(kind);
546
+ }
547
+ /**
548
+ * Search nodes by text
549
+ */
550
+ searchNodes(query, options) {
551
+ return this.queries.searchNodes(query, options);
552
+ }
553
+ // ===========================================================================
554
+ // Edge Operations
555
+ // ===========================================================================
556
+ /**
557
+ * Get outgoing edges from a node
558
+ */
559
+ getOutgoingEdges(nodeId) {
560
+ return this.queries.getOutgoingEdges(nodeId);
561
+ }
562
+ /**
563
+ * Get incoming edges to a node
564
+ */
565
+ getIncomingEdges(nodeId) {
566
+ return this.queries.getIncomingEdges(nodeId);
567
+ }
568
+ // ===========================================================================
569
+ // File Operations
570
+ // ===========================================================================
571
+ /**
572
+ * Get a file record by path
573
+ */
574
+ getFile(filePath) {
575
+ return this.queries.getFileByPath(filePath);
576
+ }
577
+ /**
578
+ * Get all tracked files
579
+ */
580
+ getFiles() {
581
+ return this.queries.getAllFiles();
582
+ }
583
+ // ===========================================================================
584
+ // Graph Query Methods
585
+ // ===========================================================================
586
+ /**
587
+ * Get the context for a node (ancestors, children, references)
588
+ *
589
+ * Returns comprehensive context about a node including its containment
590
+ * hierarchy, children, incoming/outgoing references, type information,
591
+ * and relevant imports.
592
+ *
593
+ * @param nodeId - ID of the focal node
594
+ * @returns Context object with all related information
595
+ */
596
+ getContext(nodeId) {
597
+ return this.graphManager.getContext(nodeId);
598
+ }
599
+ /**
600
+ * Traverse the graph from a starting node
601
+ *
602
+ * Uses breadth-first search by default. Supports filtering by edge types,
603
+ * node types, and traversal direction.
604
+ *
605
+ * @param startId - Starting node ID
606
+ * @param options - Traversal options
607
+ * @returns Subgraph containing traversed nodes and edges
608
+ */
609
+ traverse(startId, options) {
610
+ return this.traverser.traverseBFS(startId, options);
611
+ }
612
+ /**
613
+ * Get the call graph for a function
614
+ *
615
+ * Returns both callers (functions that call this function) and
616
+ * callees (functions called by this function) up to the specified depth.
617
+ *
618
+ * @param nodeId - ID of the function/method node
619
+ * @param depth - Maximum depth in each direction (default: 2)
620
+ * @returns Subgraph containing the call graph
621
+ */
622
+ getCallGraph(nodeId, depth = 2) {
623
+ return this.traverser.getCallGraph(nodeId, depth);
624
+ }
625
+ /**
626
+ * Get the type hierarchy for a class/interface
627
+ *
628
+ * Returns both ancestors (types this extends/implements) and
629
+ * descendants (types that extend/implement this).
630
+ *
631
+ * @param nodeId - ID of the class/interface node
632
+ * @returns Subgraph containing the type hierarchy
633
+ */
634
+ getTypeHierarchy(nodeId) {
635
+ return this.traverser.getTypeHierarchy(nodeId);
636
+ }
637
+ /**
638
+ * Find all usages of a symbol
639
+ *
640
+ * Returns all nodes that reference the specified symbol through
641
+ * any edge type (calls, references, type_of, etc.).
642
+ *
643
+ * @param nodeId - ID of the symbol node
644
+ * @returns Array of nodes and edges that reference this symbol
645
+ */
646
+ findUsages(nodeId) {
647
+ return this.traverser.findUsages(nodeId);
648
+ }
649
+ /**
650
+ * Get callers of a function/method
651
+ *
652
+ * @param nodeId - ID of the function/method node
653
+ * @param maxDepth - Maximum depth to traverse (default: 1)
654
+ * @returns Array of nodes that call this function
655
+ */
656
+ getCallers(nodeId, maxDepth = 1) {
657
+ return this.traverser.getCallers(nodeId, maxDepth);
658
+ }
659
+ /**
660
+ * Get callees of a function/method
661
+ *
662
+ * @param nodeId - ID of the function/method node
663
+ * @param maxDepth - Maximum depth to traverse (default: 1)
664
+ * @returns Array of nodes called by this function
665
+ */
666
+ getCallees(nodeId, maxDepth = 1) {
667
+ return this.traverser.getCallees(nodeId, maxDepth);
668
+ }
669
+ /**
670
+ * Calculate the impact radius of a node
671
+ *
672
+ * Returns all nodes that could be affected by changes to this node.
673
+ *
674
+ * @param nodeId - ID of the node
675
+ * @param maxDepth - Maximum depth to traverse (default: 3)
676
+ * @returns Subgraph containing potentially impacted nodes
677
+ */
678
+ getImpactRadius(nodeId, maxDepth = 3) {
679
+ return this.traverser.getImpactRadius(nodeId, maxDepth);
680
+ }
681
+ /**
682
+ * Find the shortest path between two nodes
683
+ *
684
+ * @param fromId - Starting node ID
685
+ * @param toId - Target node ID
686
+ * @param edgeKinds - Edge types to consider (all if empty)
687
+ * @returns Array of nodes and edges forming the path, or null if no path exists
688
+ */
689
+ findPath(fromId, toId, edgeKinds) {
690
+ return this.traverser.findPath(fromId, toId, edgeKinds);
691
+ }
692
+ /**
693
+ * Get ancestors of a node in the containment hierarchy
694
+ *
695
+ * @param nodeId - ID of the node
696
+ * @returns Array of ancestor nodes from immediate parent to root
697
+ */
698
+ getAncestors(nodeId) {
699
+ return this.traverser.getAncestors(nodeId);
700
+ }
701
+ /**
702
+ * Get immediate children of a node
703
+ *
704
+ * @param nodeId - ID of the node
705
+ * @returns Array of child nodes
706
+ */
707
+ getChildren(nodeId) {
708
+ return this.traverser.getChildren(nodeId);
709
+ }
710
+ /**
711
+ * Get dependencies of a file
712
+ *
713
+ * @param filePath - Path to the file
714
+ * @returns Array of file paths this file depends on
715
+ */
716
+ getFileDependencies(filePath) {
717
+ return this.graphManager.getFileDependencies(filePath);
718
+ }
719
+ /**
720
+ * Get dependents of a file
721
+ *
722
+ * @param filePath - Path to the file
723
+ * @returns Array of file paths that depend on this file
724
+ */
725
+ getFileDependents(filePath) {
726
+ return this.graphManager.getFileDependents(filePath);
727
+ }
728
+ /**
729
+ * Find circular dependencies in the codebase
730
+ *
731
+ * @returns Array of cycles, each cycle is an array of file paths
732
+ */
733
+ findCircularDependencies() {
734
+ return this.graphManager.findCircularDependencies();
735
+ }
736
+ /**
737
+ * Find dead code (unreferenced symbols)
738
+ *
739
+ * @param kinds - Node kinds to check (default: functions, methods, classes)
740
+ * @returns Array of unreferenced nodes
741
+ */
742
+ findDeadCode(kinds) {
743
+ return this.graphManager.findDeadCode(kinds);
744
+ }
745
+ /**
746
+ * Get complexity metrics for a node
747
+ *
748
+ * @param nodeId - ID of the node
749
+ * @returns Object containing various complexity metrics
750
+ */
751
+ getNodeMetrics(nodeId) {
752
+ return this.graphManager.getNodeMetrics(nodeId);
753
+ }
754
+ // ===========================================================================
755
+ // Context Building
756
+ // ===========================================================================
757
+ /**
758
+ * Get the source code for a node
759
+ *
760
+ * Reads the file and extracts the code between startLine and endLine.
761
+ *
762
+ * @param nodeId - ID of the node
763
+ * @returns Code string or null if not found
764
+ */
765
+ async getCode(nodeId) {
766
+ return this.contextBuilder.getCode(nodeId);
767
+ }
768
+ /**
769
+ * Find relevant subgraph for a query
770
+ *
771
+ * Combines semantic search with graph traversal to find the most
772
+ * relevant nodes and their relationships for a given query.
773
+ *
774
+ * @param query - Natural language query describing the task
775
+ * @param options - Search and traversal options
776
+ * @returns Subgraph of relevant nodes and edges
777
+ */
778
+ async findRelevantContext(query, options) {
779
+ return this.contextBuilder.findRelevantContext(query, options);
780
+ }
781
+ /**
782
+ * Build context for a task
783
+ *
784
+ * Creates comprehensive context by:
785
+ * 1. Running FTS search to find entry points
786
+ * 2. Expanding the graph around entry points
787
+ * 3. Extracting code blocks for key nodes
788
+ * 4. Formatting output for Claude
789
+ *
790
+ * @param input - Task description (string or {title, description})
791
+ * @param options - Build options (maxNodes, includeCode, format, etc.)
792
+ * @returns TaskContext object or formatted string (markdown/JSON)
793
+ */
794
+ async buildContext(input, options) {
795
+ return this.contextBuilder.buildContext(input, options);
796
+ }
797
+ // ===========================================================================
798
+ // Database Management
799
+ // ===========================================================================
800
+ /**
801
+ * Optimize the database (vacuum and analyze)
802
+ */
803
+ optimize() {
804
+ this.db.optimize();
805
+ }
806
+ /**
807
+ * Clear all data from the graph
808
+ */
809
+ clear() {
810
+ this.queries.clear();
811
+ }
812
+ /**
813
+ * Alias for close() for backwards compatibility.
814
+ * @deprecated Use close() instead
815
+ */
816
+ destroy() {
817
+ this.close();
818
+ }
819
+ /**
820
+ * Completely remove CodeGraph from the project.
821
+ * This closes the database and deletes the .CodeGraph directory.
822
+ *
823
+ * WARNING: This permanently deletes all CodeGraph data for the project.
824
+ */
825
+ uninitialize() {
826
+ this.close();
827
+ (0, directory_1.removeDirectory)(this.projectRoot);
828
+ }
829
+ }
830
+ exports.CodeGraph = CodeGraph;
831
+ // Default export
832
+ exports.default = CodeGraph;
833
+ //# sourceMappingURL=index.js.map