agentic-qe 2.5.9 → 2.6.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 (336) hide show
  1. package/.claude/agents/qe-code-intelligence.md +359 -0
  2. package/CHANGELOG.md +136 -0
  3. package/README.md +4 -3
  4. package/dist/agents/BaseAgent.d.ts +167 -0
  5. package/dist/agents/BaseAgent.d.ts.map +1 -1
  6. package/dist/agents/BaseAgent.js +414 -0
  7. package/dist/agents/BaseAgent.js.map +1 -1
  8. package/dist/agents/CodeIntelligenceAgent.d.ts +133 -0
  9. package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -0
  10. package/dist/agents/CodeIntelligenceAgent.js +473 -0
  11. package/dist/agents/CodeIntelligenceAgent.js.map +1 -0
  12. package/dist/agents/FlakyTestHunterAgent.d.ts +15 -0
  13. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  14. package/dist/agents/FlakyTestHunterAgent.js +93 -0
  15. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  16. package/dist/agents/SecurityScannerAgent.d.ts +19 -0
  17. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  18. package/dist/agents/SecurityScannerAgent.js +137 -0
  19. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  20. package/dist/agents/context/ContextCache.d.ts +105 -0
  21. package/dist/agents/context/ContextCache.d.ts.map +1 -0
  22. package/dist/agents/context/ContextCache.js +235 -0
  23. package/dist/agents/context/ContextCache.js.map +1 -0
  24. package/dist/agents/context/ContextFormatter.d.ts +92 -0
  25. package/dist/agents/context/ContextFormatter.d.ts.map +1 -0
  26. package/dist/agents/context/ContextFormatter.js +338 -0
  27. package/dist/agents/context/ContextFormatter.js.map +1 -0
  28. package/dist/agents/context/GraphExpander.d.ts +87 -0
  29. package/dist/agents/context/GraphExpander.d.ts.map +1 -0
  30. package/dist/agents/context/GraphExpander.js +215 -0
  31. package/dist/agents/context/GraphExpander.js.map +1 -0
  32. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts +160 -0
  33. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts.map +1 -0
  34. package/dist/agents/context/KnowledgeGraphContextBuilder.js +300 -0
  35. package/dist/agents/context/KnowledgeGraphContextBuilder.js.map +1 -0
  36. package/dist/agents/context/index.d.ts +15 -0
  37. package/dist/agents/context/index.d.ts.map +1 -0
  38. package/dist/agents/context/index.js +18 -0
  39. package/dist/agents/context/index.js.map +1 -0
  40. package/dist/agents/index.d.ts +1 -0
  41. package/dist/agents/index.d.ts.map +1 -1
  42. package/dist/agents/index.js +67 -3
  43. package/dist/agents/index.js.map +1 -1
  44. package/dist/cli/commands/knowledge-graph.d.ts +112 -0
  45. package/dist/cli/commands/knowledge-graph.d.ts.map +1 -0
  46. package/dist/cli/commands/knowledge-graph.js +466 -0
  47. package/dist/cli/commands/knowledge-graph.js.map +1 -0
  48. package/dist/cli/commands/ruvector/index.d.ts +13 -0
  49. package/dist/cli/commands/ruvector/index.d.ts.map +1 -0
  50. package/dist/cli/commands/ruvector/index.js +308 -0
  51. package/dist/cli/commands/ruvector/index.js.map +1 -0
  52. package/dist/cli/formatters/KGOutputFormatter.d.ts +50 -0
  53. package/dist/cli/formatters/KGOutputFormatter.d.ts.map +1 -0
  54. package/dist/cli/formatters/KGOutputFormatter.js +237 -0
  55. package/dist/cli/formatters/KGOutputFormatter.js.map +1 -0
  56. package/dist/cli/index-working.js +138 -0
  57. package/dist/cli/index-working.js.map +1 -1
  58. package/dist/cli/index.js +5 -0
  59. package/dist/cli/index.js.map +1 -1
  60. package/dist/cli/init/claude-config.d.ts +13 -1
  61. package/dist/cli/init/claude-config.d.ts.map +1 -1
  62. package/dist/cli/init/claude-config.js +70 -8
  63. package/dist/cli/init/claude-config.js.map +1 -1
  64. package/dist/cli/init/code-intelligence-init.d.ts +52 -0
  65. package/dist/cli/init/code-intelligence-init.d.ts.map +1 -0
  66. package/dist/cli/init/code-intelligence-init.js +250 -0
  67. package/dist/cli/init/code-intelligence-init.js.map +1 -0
  68. package/dist/cli/init/index.d.ts +2 -2
  69. package/dist/cli/init/index.d.ts.map +1 -1
  70. package/dist/cli/init/index.js +21 -1
  71. package/dist/cli/init/index.js.map +1 -1
  72. package/dist/code-intelligence/chunking/ASTChunker.d.ts +64 -0
  73. package/dist/code-intelligence/chunking/ASTChunker.d.ts.map +1 -0
  74. package/dist/code-intelligence/chunking/ASTChunker.js +344 -0
  75. package/dist/code-intelligence/chunking/ASTChunker.js.map +1 -0
  76. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts +48 -0
  77. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts.map +1 -0
  78. package/dist/code-intelligence/chunking/ChunkSplitter.js +278 -0
  79. package/dist/code-intelligence/chunking/ChunkSplitter.js.map +1 -0
  80. package/dist/code-intelligence/chunking/index.d.ts +8 -0
  81. package/dist/code-intelligence/chunking/index.d.ts.map +1 -0
  82. package/dist/code-intelligence/chunking/index.js +13 -0
  83. package/dist/code-intelligence/chunking/index.js.map +1 -0
  84. package/dist/code-intelligence/chunking/types.d.ts +52 -0
  85. package/dist/code-intelligence/chunking/types.d.ts.map +1 -0
  86. package/dist/code-intelligence/chunking/types.js +6 -0
  87. package/dist/code-intelligence/chunking/types.js.map +1 -0
  88. package/dist/code-intelligence/config/database-schema.d.ts +245 -0
  89. package/dist/code-intelligence/config/database-schema.d.ts.map +1 -0
  90. package/dist/code-intelligence/config/database-schema.js +110 -0
  91. package/dist/code-intelligence/config/database-schema.js.map +1 -0
  92. package/dist/code-intelligence/config/environment.d.ts +53 -0
  93. package/dist/code-intelligence/config/environment.d.ts.map +1 -0
  94. package/dist/code-intelligence/config/environment.js +86 -0
  95. package/dist/code-intelligence/config/environment.js.map +1 -0
  96. package/dist/code-intelligence/config/index.d.ts +10 -0
  97. package/dist/code-intelligence/config/index.d.ts.map +1 -0
  98. package/dist/code-intelligence/config/index.js +36 -0
  99. package/dist/code-intelligence/config/index.js.map +1 -0
  100. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts +81 -0
  101. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts.map +1 -0
  102. package/dist/code-intelligence/embeddings/EmbeddingCache.js +168 -0
  103. package/dist/code-intelligence/embeddings/EmbeddingCache.js.map +1 -0
  104. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts +82 -0
  105. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts.map +1 -0
  106. package/dist/code-intelligence/embeddings/NomicEmbedder.js +233 -0
  107. package/dist/code-intelligence/embeddings/NomicEmbedder.js.map +1 -0
  108. package/dist/code-intelligence/embeddings/OllamaClient.d.ts +42 -0
  109. package/dist/code-intelligence/embeddings/OllamaClient.d.ts.map +1 -0
  110. package/dist/code-intelligence/embeddings/OllamaClient.js +142 -0
  111. package/dist/code-intelligence/embeddings/OllamaClient.js.map +1 -0
  112. package/dist/code-intelligence/embeddings/index.d.ts +33 -0
  113. package/dist/code-intelligence/embeddings/index.d.ts.map +1 -0
  114. package/dist/code-intelligence/embeddings/index.js +39 -0
  115. package/dist/code-intelligence/embeddings/index.js.map +1 -0
  116. package/dist/code-intelligence/embeddings/types.d.ts +84 -0
  117. package/dist/code-intelligence/embeddings/types.d.ts.map +1 -0
  118. package/dist/code-intelligence/embeddings/types.js +19 -0
  119. package/dist/code-intelligence/embeddings/types.js.map +1 -0
  120. package/dist/code-intelligence/graph/GraphBuilder.d.ts +126 -0
  121. package/dist/code-intelligence/graph/GraphBuilder.d.ts.map +1 -0
  122. package/dist/code-intelligence/graph/GraphBuilder.js +416 -0
  123. package/dist/code-intelligence/graph/GraphBuilder.js.map +1 -0
  124. package/dist/code-intelligence/graph/ImportParser.d.ts +72 -0
  125. package/dist/code-intelligence/graph/ImportParser.d.ts.map +1 -0
  126. package/dist/code-intelligence/graph/ImportParser.js +422 -0
  127. package/dist/code-intelligence/graph/ImportParser.js.map +1 -0
  128. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts +74 -0
  129. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts.map +1 -0
  130. package/dist/code-intelligence/graph/RelationshipExtractor.js +310 -0
  131. package/dist/code-intelligence/graph/RelationshipExtractor.js.map +1 -0
  132. package/dist/code-intelligence/graph/TestMapper.d.ts +99 -0
  133. package/dist/code-intelligence/graph/TestMapper.d.ts.map +1 -0
  134. package/dist/code-intelligence/graph/TestMapper.js +335 -0
  135. package/dist/code-intelligence/graph/TestMapper.js.map +1 -0
  136. package/dist/code-intelligence/graph/index.d.ts +14 -0
  137. package/dist/code-intelligence/graph/index.d.ts.map +1 -0
  138. package/dist/code-intelligence/graph/index.js +19 -0
  139. package/dist/code-intelligence/graph/index.js.map +1 -0
  140. package/dist/code-intelligence/graph/types.d.ts +141 -0
  141. package/dist/code-intelligence/graph/types.d.ts.map +1 -0
  142. package/dist/code-intelligence/graph/types.js +18 -0
  143. package/dist/code-intelligence/graph/types.js.map +1 -0
  144. package/dist/code-intelligence/indexing/FileWatcher.d.ts +90 -0
  145. package/dist/code-intelligence/indexing/FileWatcher.d.ts.map +1 -0
  146. package/dist/code-intelligence/indexing/FileWatcher.js +304 -0
  147. package/dist/code-intelligence/indexing/FileWatcher.js.map +1 -0
  148. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts +76 -0
  149. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts.map +1 -0
  150. package/dist/code-intelligence/indexing/GitChangeDetector.js +347 -0
  151. package/dist/code-intelligence/indexing/GitChangeDetector.js.map +1 -0
  152. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts +108 -0
  153. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts.map +1 -0
  154. package/dist/code-intelligence/indexing/IncrementalIndexer.js +269 -0
  155. package/dist/code-intelligence/indexing/IncrementalIndexer.js.map +1 -0
  156. package/dist/code-intelligence/indexing/index.d.ts +11 -0
  157. package/dist/code-intelligence/indexing/index.d.ts.map +1 -0
  158. package/dist/code-intelligence/indexing/index.js +18 -0
  159. package/dist/code-intelligence/indexing/index.js.map +1 -0
  160. package/dist/code-intelligence/indexing/types.d.ts +133 -0
  161. package/dist/code-intelligence/indexing/types.d.ts.map +1 -0
  162. package/dist/code-intelligence/indexing/types.js +27 -0
  163. package/dist/code-intelligence/indexing/types.js.map +1 -0
  164. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts +150 -0
  165. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts.map +1 -0
  166. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js +806 -0
  167. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js.map +1 -0
  168. package/dist/code-intelligence/orchestrator/index.d.ts +8 -0
  169. package/dist/code-intelligence/orchestrator/index.d.ts.map +1 -0
  170. package/dist/code-intelligence/orchestrator/index.js +24 -0
  171. package/dist/code-intelligence/orchestrator/index.js.map +1 -0
  172. package/dist/code-intelligence/orchestrator/types.d.ts +164 -0
  173. package/dist/code-intelligence/orchestrator/types.d.ts.map +1 -0
  174. package/dist/code-intelligence/orchestrator/types.js +18 -0
  175. package/dist/code-intelligence/orchestrator/types.js.map +1 -0
  176. package/dist/code-intelligence/parser/LanguageRegistry.d.ts +13 -0
  177. package/dist/code-intelligence/parser/LanguageRegistry.d.ts.map +1 -0
  178. package/dist/code-intelligence/parser/LanguageRegistry.js +150 -0
  179. package/dist/code-intelligence/parser/LanguageRegistry.js.map +1 -0
  180. package/dist/code-intelligence/parser/TreeSitterParser.d.ts +98 -0
  181. package/dist/code-intelligence/parser/TreeSitterParser.d.ts.map +1 -0
  182. package/dist/code-intelligence/parser/TreeSitterParser.js +530 -0
  183. package/dist/code-intelligence/parser/TreeSitterParser.js.map +1 -0
  184. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts +36 -0
  185. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts.map +1 -0
  186. package/dist/code-intelligence/parser/extractors/BaseExtractor.js +31 -0
  187. package/dist/code-intelligence/parser/extractors/BaseExtractor.js.map +1 -0
  188. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts +21 -0
  189. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts.map +1 -0
  190. package/dist/code-intelligence/parser/extractors/GoExtractor.js +249 -0
  191. package/dist/code-intelligence/parser/extractors/GoExtractor.js.map +1 -0
  192. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts +21 -0
  193. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts.map +1 -0
  194. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js +217 -0
  195. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js.map +1 -0
  196. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts +20 -0
  197. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts.map +1 -0
  198. package/dist/code-intelligence/parser/extractors/PythonExtractor.js +237 -0
  199. package/dist/code-intelligence/parser/extractors/PythonExtractor.js.map +1 -0
  200. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts +21 -0
  201. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts.map +1 -0
  202. package/dist/code-intelligence/parser/extractors/RustExtractor.js +234 -0
  203. package/dist/code-intelligence/parser/extractors/RustExtractor.js.map +1 -0
  204. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts +23 -0
  205. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts.map +1 -0
  206. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js +247 -0
  207. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js.map +1 -0
  208. package/dist/code-intelligence/parser/extractors/index.d.ts +7 -0
  209. package/dist/code-intelligence/parser/extractors/index.d.ts.map +1 -0
  210. package/dist/code-intelligence/parser/extractors/index.js +16 -0
  211. package/dist/code-intelligence/parser/extractors/index.js.map +1 -0
  212. package/dist/code-intelligence/parser/index.d.ts +8 -0
  213. package/dist/code-intelligence/parser/index.d.ts.map +1 -0
  214. package/dist/code-intelligence/parser/index.js +12 -0
  215. package/dist/code-intelligence/parser/index.js.map +1 -0
  216. package/dist/code-intelligence/parser/types.d.ts +60 -0
  217. package/dist/code-intelligence/parser/types.d.ts.map +1 -0
  218. package/dist/code-intelligence/parser/types.js +6 -0
  219. package/dist/code-intelligence/parser/types.js.map +1 -0
  220. package/dist/code-intelligence/rag/ContextBuilder.d.ts +82 -0
  221. package/dist/code-intelligence/rag/ContextBuilder.d.ts.map +1 -0
  222. package/dist/code-intelligence/rag/ContextBuilder.js +242 -0
  223. package/dist/code-intelligence/rag/ContextBuilder.js.map +1 -0
  224. package/dist/code-intelligence/rag/GraphExpander.d.ts +95 -0
  225. package/dist/code-intelligence/rag/GraphExpander.d.ts.map +1 -0
  226. package/dist/code-intelligence/rag/GraphExpander.js +250 -0
  227. package/dist/code-intelligence/rag/GraphExpander.js.map +1 -0
  228. package/dist/code-intelligence/rag/index.d.ts +9 -0
  229. package/dist/code-intelligence/rag/index.d.ts.map +1 -0
  230. package/dist/code-intelligence/rag/index.js +25 -0
  231. package/dist/code-intelligence/rag/index.js.map +1 -0
  232. package/dist/code-intelligence/rag/types.d.ts +121 -0
  233. package/dist/code-intelligence/rag/types.d.ts.map +1 -0
  234. package/dist/code-intelligence/rag/types.js +50 -0
  235. package/dist/code-intelligence/rag/types.js.map +1 -0
  236. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts +62 -0
  237. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts.map +1 -0
  238. package/dist/code-intelligence/retrieval/SemanticRetriever.js +174 -0
  239. package/dist/code-intelligence/retrieval/SemanticRetriever.js.map +1 -0
  240. package/dist/code-intelligence/retrieval/index.d.ts +9 -0
  241. package/dist/code-intelligence/retrieval/index.d.ts.map +1 -0
  242. package/dist/code-intelligence/retrieval/index.js +16 -0
  243. package/dist/code-intelligence/retrieval/index.js.map +1 -0
  244. package/dist/code-intelligence/retrieval/types.d.ts +118 -0
  245. package/dist/code-intelligence/retrieval/types.d.ts.map +1 -0
  246. package/dist/code-intelligence/retrieval/types.js +46 -0
  247. package/dist/code-intelligence/retrieval/types.js.map +1 -0
  248. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts +167 -0
  249. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts.map +1 -0
  250. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js +365 -0
  251. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js.map +1 -0
  252. package/dist/code-intelligence/router/index.d.ts +7 -0
  253. package/dist/code-intelligence/router/index.d.ts.map +1 -0
  254. package/dist/code-intelligence/router/index.js +14 -0
  255. package/dist/code-intelligence/router/index.js.map +1 -0
  256. package/dist/code-intelligence/search/BM25Search.d.ts +74 -0
  257. package/dist/code-intelligence/search/BM25Search.d.ts.map +1 -0
  258. package/dist/code-intelligence/search/BM25Search.js +233 -0
  259. package/dist/code-intelligence/search/BM25Search.js.map +1 -0
  260. package/dist/code-intelligence/search/HybridSearchEngine.d.ts +94 -0
  261. package/dist/code-intelligence/search/HybridSearchEngine.d.ts.map +1 -0
  262. package/dist/code-intelligence/search/HybridSearchEngine.js +168 -0
  263. package/dist/code-intelligence/search/HybridSearchEngine.js.map +1 -0
  264. package/dist/code-intelligence/search/RRFFusion.d.ts +46 -0
  265. package/dist/code-intelligence/search/RRFFusion.d.ts.map +1 -0
  266. package/dist/code-intelligence/search/RRFFusion.js +223 -0
  267. package/dist/code-intelligence/search/RRFFusion.js.map +1 -0
  268. package/dist/code-intelligence/search/VectorSearch.d.ts +157 -0
  269. package/dist/code-intelligence/search/VectorSearch.d.ts.map +1 -0
  270. package/dist/code-intelligence/search/VectorSearch.js +301 -0
  271. package/dist/code-intelligence/search/VectorSearch.js.map +1 -0
  272. package/dist/code-intelligence/search/index.d.ts +14 -0
  273. package/dist/code-intelligence/search/index.d.ts.map +1 -0
  274. package/dist/code-intelligence/search/index.js +23 -0
  275. package/dist/code-intelligence/search/index.js.map +1 -0
  276. package/dist/code-intelligence/search/types.d.ts +201 -0
  277. package/dist/code-intelligence/search/types.d.ts.map +1 -0
  278. package/dist/code-intelligence/search/types.js +35 -0
  279. package/dist/code-intelligence/search/types.js.map +1 -0
  280. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts +171 -0
  281. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts.map +1 -0
  282. package/dist/code-intelligence/service/CodeIntelligenceService.js +325 -0
  283. package/dist/code-intelligence/service/CodeIntelligenceService.js.map +1 -0
  284. package/dist/code-intelligence/service/index.d.ts +7 -0
  285. package/dist/code-intelligence/service/index.d.ts.map +1 -0
  286. package/dist/code-intelligence/service/index.js +14 -0
  287. package/dist/code-intelligence/service/index.js.map +1 -0
  288. package/dist/code-intelligence/storage/CodeChunkStore.d.ts +213 -0
  289. package/dist/code-intelligence/storage/CodeChunkStore.d.ts.map +1 -0
  290. package/dist/code-intelligence/storage/CodeChunkStore.js +542 -0
  291. package/dist/code-intelligence/storage/CodeChunkStore.js.map +1 -0
  292. package/dist/code-intelligence/storage/index.d.ts +7 -0
  293. package/dist/code-intelligence/storage/index.d.ts.map +1 -0
  294. package/dist/code-intelligence/storage/index.js +13 -0
  295. package/dist/code-intelligence/storage/index.js.map +1 -0
  296. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts +51 -0
  297. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts.map +1 -0
  298. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js +180 -0
  299. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js.map +1 -0
  300. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts +66 -0
  301. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts.map +1 -0
  302. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js +203 -0
  303. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js.map +1 -0
  304. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts +76 -0
  305. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts.map +1 -0
  306. package/dist/code-intelligence/visualization/MermaidGenerator.js +368 -0
  307. package/dist/code-intelligence/visualization/MermaidGenerator.js.map +1 -0
  308. package/dist/code-intelligence/visualization/index.d.ts +9 -0
  309. package/dist/code-intelligence/visualization/index.d.ts.map +1 -0
  310. package/dist/code-intelligence/visualization/index.js +15 -0
  311. package/dist/code-intelligence/visualization/index.js.map +1 -0
  312. package/dist/core/FleetManager.d.ts +27 -0
  313. package/dist/core/FleetManager.d.ts.map +1 -1
  314. package/dist/core/FleetManager.js +84 -0
  315. package/dist/core/FleetManager.js.map +1 -1
  316. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  317. package/dist/mcp/server-instructions.d.ts +1 -1
  318. package/dist/mcp/server-instructions.js +1 -1
  319. package/dist/memory/RuVectorPatternStore.d.ts +258 -0
  320. package/dist/memory/RuVectorPatternStore.d.ts.map +1 -0
  321. package/dist/memory/RuVectorPatternStore.js +525 -0
  322. package/dist/memory/RuVectorPatternStore.js.map +1 -0
  323. package/dist/providers/RuVectorPostgresAdapter.d.ts +134 -0
  324. package/dist/providers/RuVectorPostgresAdapter.d.ts.map +1 -0
  325. package/dist/providers/RuVectorPostgresAdapter.js +504 -0
  326. package/dist/providers/RuVectorPostgresAdapter.js.map +1 -0
  327. package/dist/providers/index.d.ts +2 -0
  328. package/dist/providers/index.d.ts.map +1 -1
  329. package/dist/providers/index.js +7 -1
  330. package/dist/providers/index.js.map +1 -1
  331. package/dist/types/index.d.ts +2 -1
  332. package/dist/types/index.d.ts.map +1 -1
  333. package/dist/types/index.js +2 -0
  334. package/dist/types/index.js.map +1 -1
  335. package/docs/reference/agents.md +44 -1
  336. package/package.json +15 -2
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Code Intelligence Hybrid Router
3
+ *
4
+ * Extends HybridRouter with code-specific routing optimizations:
5
+ * - Code-aware embedding generation with nomic-embed-text
6
+ * - Automatic storage of code chunks and relationships
7
+ * - Integration with CodeChunkStore for persistent vector storage
8
+ *
9
+ * @module code-intelligence/router/CodeIntelligenceHybridRouter
10
+ */
11
+ import { HybridRouter, HybridRouterConfig } from '../../providers/HybridRouter.js';
12
+ import { CodeChunkStore, CodeChunkStoreConfig } from '../storage/CodeChunkStore.js';
13
+ import type { CodeChunk } from '../chunking/types.js';
14
+ import type { CodeEntity } from '../parser/types.js';
15
+ import type { EdgeType } from '../graph/types.js';
16
+ /**
17
+ * Configuration for code intelligence routing
18
+ */
19
+ export interface CodeIntelligenceRouterConfig extends HybridRouterConfig {
20
+ /** Database configuration for CodeChunkStore */
21
+ database?: CodeChunkStoreConfig;
22
+ /** Whether to auto-store chunks in database (default: true) */
23
+ autoStoreChunks?: boolean;
24
+ /** Whether to store entity relationships (default: true) */
25
+ storeRelationships?: boolean;
26
+ /** Embedding dimension (default: 768 for nomic-embed-text) */
27
+ embeddingDimension?: number;
28
+ /** Batch size for bulk embedding operations */
29
+ embeddingBatchSize?: number;
30
+ }
31
+ /**
32
+ * Code chunk with embedding
33
+ */
34
+ export interface EmbeddedChunk {
35
+ chunk: CodeChunk;
36
+ embedding: number[];
37
+ }
38
+ /**
39
+ * Default configuration
40
+ */
41
+ export declare const DEFAULT_CODE_ROUTER_CONFIG: Partial<CodeIntelligenceRouterConfig>;
42
+ /**
43
+ * CodeIntelligenceHybridRouter - Specialized router for code intelligence
44
+ *
45
+ * Extends HybridRouter with:
46
+ * - CodeChunkStore integration for persistent vector storage
47
+ * - Code-specific embedding generation
48
+ * - Automatic storage of code chunks and relationships
49
+ */
50
+ export declare class CodeIntelligenceHybridRouter extends HybridRouter {
51
+ private codeConfig;
52
+ private chunkStore;
53
+ private embeddingDimension;
54
+ private isCodeRouterInitialized;
55
+ constructor(config?: CodeIntelligenceRouterConfig);
56
+ /**
57
+ * Initialize the router and code chunk store
58
+ */
59
+ initialize(): Promise<void>;
60
+ /**
61
+ * Generate embedding for a code chunk
62
+ */
63
+ embedChunk(chunk: CodeChunk): Promise<EmbeddedChunk>;
64
+ /**
65
+ * Generate embeddings for multiple chunks in batch
66
+ */
67
+ embedChunks(chunks: CodeChunk[]): Promise<EmbeddedChunk[]>;
68
+ /**
69
+ * Store a chunk with its embedding
70
+ */
71
+ storeChunk(chunk: CodeChunk, embedding: number[]): Promise<void>;
72
+ /**
73
+ * Embed and store a chunk in one operation
74
+ */
75
+ embedAndStoreChunk(chunk: CodeChunk): Promise<EmbeddedChunk>;
76
+ /**
77
+ * Embed and store multiple chunks
78
+ */
79
+ embedAndStoreChunks(chunks: CodeChunk[]): Promise<EmbeddedChunk[]>;
80
+ /**
81
+ * Store a code entity
82
+ */
83
+ storeEntity(entity: CodeEntity, filePath: string): Promise<void>;
84
+ /**
85
+ * Store a relationship between entities
86
+ */
87
+ storeRelationship(sourceId: string, targetId: string, type: EdgeType, metadata?: Record<string, unknown>): Promise<void>;
88
+ /**
89
+ * Search for similar code chunks
90
+ */
91
+ searchCode(query: string, options?: {
92
+ topK?: number;
93
+ language?: string;
94
+ entityType?: string;
95
+ filePattern?: string;
96
+ }): Promise<Array<{
97
+ id: string;
98
+ filePath: string;
99
+ content: string;
100
+ startLine: number;
101
+ endLine: number;
102
+ score: number;
103
+ entityType?: string;
104
+ entityName?: string;
105
+ }>>;
106
+ /**
107
+ * Hybrid search combining vector and keyword search
108
+ */
109
+ hybridSearchCode(query: string, options?: {
110
+ topK?: number;
111
+ vectorWeight?: number;
112
+ keywordWeight?: number;
113
+ }): Promise<Array<{
114
+ id: string;
115
+ filePath: string;
116
+ content: string;
117
+ startLine: number;
118
+ endLine: number;
119
+ score: number;
120
+ vectorScore?: number;
121
+ keywordScore?: number;
122
+ }>>;
123
+ /**
124
+ * Get the underlying CodeChunkStore
125
+ */
126
+ getChunkStore(): CodeChunkStore | null;
127
+ /**
128
+ * Check if router is using database storage
129
+ */
130
+ isUsingDatabase(): boolean;
131
+ /**
132
+ * Get router statistics
133
+ */
134
+ getCodeRouterStats(): Promise<{
135
+ embeddingDimension: number;
136
+ chunkCount: number;
137
+ entityCount: number;
138
+ relationshipCount: number;
139
+ databaseHealthy: boolean;
140
+ routerHealthy: boolean;
141
+ }>;
142
+ /**
143
+ * Remove chunks for a file
144
+ */
145
+ removeFile(filePath: string): Promise<number>;
146
+ /**
147
+ * Clear all stored data
148
+ */
149
+ clearStorage(): Promise<void>;
150
+ /**
151
+ * Shutdown router and close connections
152
+ */
153
+ shutdown(): Promise<void>;
154
+ /**
155
+ * Format a code chunk for embedding
156
+ */
157
+ private formatChunkForEmbedding;
158
+ }
159
+ /**
160
+ * Factory function to create router with Docker defaults
161
+ */
162
+ export declare function createDockerCodeIntelligenceRouter(config?: Partial<CodeIntelligenceRouterConfig>): CodeIntelligenceHybridRouter;
163
+ /**
164
+ * Factory function to create router from environment
165
+ */
166
+ export declare function createCodeIntelligenceRouterFromEnv(): CodeIntelligenceHybridRouter;
167
+ //# sourceMappingURL=CodeIntelligenceHybridRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeIntelligenceHybridRouter.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/router/CodeIntelligenceHybridRouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,365 @@
1
+ "use strict";
2
+ /**
3
+ * Code Intelligence Hybrid Router
4
+ *
5
+ * Extends HybridRouter with code-specific routing optimizations:
6
+ * - Code-aware embedding generation with nomic-embed-text
7
+ * - Automatic storage of code chunks and relationships
8
+ * - Integration with CodeChunkStore for persistent vector storage
9
+ *
10
+ * @module code-intelligence/router/CodeIntelligenceHybridRouter
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CodeIntelligenceHybridRouter = exports.DEFAULT_CODE_ROUTER_CONFIG = void 0;
14
+ exports.createDockerCodeIntelligenceRouter = createDockerCodeIntelligenceRouter;
15
+ exports.createCodeIntelligenceRouterFromEnv = createCodeIntelligenceRouterFromEnv;
16
+ const HybridRouter_js_1 = require("../../providers/HybridRouter.js");
17
+ const CodeChunkStore_js_1 = require("../storage/CodeChunkStore.js");
18
+ /**
19
+ * Default configuration
20
+ */
21
+ exports.DEFAULT_CODE_ROUTER_CONFIG = {
22
+ autoStoreChunks: true,
23
+ storeRelationships: true,
24
+ embeddingDimension: 768,
25
+ embeddingBatchSize: 32,
26
+ defaultStrategy: HybridRouter_js_1.RoutingStrategy.BALANCED,
27
+ };
28
+ /**
29
+ * CodeIntelligenceHybridRouter - Specialized router for code intelligence
30
+ *
31
+ * Extends HybridRouter with:
32
+ * - CodeChunkStore integration for persistent vector storage
33
+ * - Code-specific embedding generation
34
+ * - Automatic storage of code chunks and relationships
35
+ */
36
+ class CodeIntelligenceHybridRouter extends HybridRouter_js_1.HybridRouter {
37
+ constructor(config = {}) {
38
+ // Merge with defaults
39
+ const mergedConfig = { ...exports.DEFAULT_CODE_ROUTER_CONFIG, ...config };
40
+ super(mergedConfig);
41
+ this.chunkStore = null;
42
+ this.isCodeRouterInitialized = false;
43
+ this.codeConfig = mergedConfig;
44
+ this.embeddingDimension = mergedConfig.embeddingDimension ?? 768;
45
+ // Initialize CodeChunkStore if database configured
46
+ if (config.database) {
47
+ this.chunkStore = new CodeChunkStore_js_1.CodeChunkStore({
48
+ ...config.database,
49
+ embeddingDimension: this.embeddingDimension,
50
+ });
51
+ }
52
+ }
53
+ /**
54
+ * Initialize the router and code chunk store
55
+ */
56
+ async initialize() {
57
+ // Initialize parent HybridRouter
58
+ await super.initialize();
59
+ // Initialize CodeChunkStore
60
+ if (this.chunkStore) {
61
+ await this.chunkStore.initialize();
62
+ }
63
+ this.isCodeRouterInitialized = true;
64
+ }
65
+ /**
66
+ * Generate embedding for a code chunk
67
+ */
68
+ async embedChunk(chunk) {
69
+ // Format chunk for embedding
70
+ const text = this.formatChunkForEmbedding(chunk);
71
+ // Generate embedding using parent's embed method
72
+ const response = await this.embed({
73
+ text,
74
+ model: 'nomic-embed-text',
75
+ });
76
+ return {
77
+ chunk,
78
+ embedding: response.embedding,
79
+ };
80
+ }
81
+ /**
82
+ * Generate embeddings for multiple chunks in batch
83
+ */
84
+ async embedChunks(chunks) {
85
+ const batchSize = this.codeConfig.embeddingBatchSize ?? 32;
86
+ const results = [];
87
+ // Process in batches
88
+ for (let i = 0; i < chunks.length; i += batchSize) {
89
+ const batch = chunks.slice(i, i + batchSize);
90
+ // Generate embeddings in parallel within batch
91
+ const batchResults = await Promise.all(batch.map((chunk) => this.embedChunk(chunk)));
92
+ results.push(...batchResults);
93
+ }
94
+ return results;
95
+ }
96
+ /**
97
+ * Store a chunk with its embedding
98
+ */
99
+ async storeChunk(chunk, embedding) {
100
+ if (!this.chunkStore) {
101
+ throw new Error('CodeChunkStore not configured. Provide database config.');
102
+ }
103
+ await this.chunkStore.storeChunk({
104
+ id: chunk.id,
105
+ filePath: chunk.filePath,
106
+ content: chunk.content,
107
+ embedding,
108
+ chunkType: chunk.entityType,
109
+ name: chunk.parentEntity, // Use parentEntity as name
110
+ startLine: chunk.lineStart,
111
+ endLine: chunk.lineEnd,
112
+ language: chunk.language,
113
+ metadata: chunk.metadata,
114
+ });
115
+ }
116
+ /**
117
+ * Embed and store a chunk in one operation
118
+ */
119
+ async embedAndStoreChunk(chunk) {
120
+ const embedded = await this.embedChunk(chunk);
121
+ if (this.chunkStore && this.codeConfig.autoStoreChunks) {
122
+ await this.storeChunk(chunk, embedded.embedding);
123
+ }
124
+ return embedded;
125
+ }
126
+ /**
127
+ * Embed and store multiple chunks
128
+ */
129
+ async embedAndStoreChunks(chunks) {
130
+ const embedded = await this.embedChunks(chunks);
131
+ if (this.chunkStore && this.codeConfig.autoStoreChunks) {
132
+ // Store all chunks in batch
133
+ await this.chunkStore.storeChunks(embedded.map((e) => ({
134
+ id: e.chunk.id,
135
+ filePath: e.chunk.filePath,
136
+ content: e.chunk.content,
137
+ embedding: e.embedding,
138
+ chunkType: e.chunk.entityType,
139
+ name: e.chunk.parentEntity,
140
+ startLine: e.chunk.lineStart,
141
+ endLine: e.chunk.lineEnd,
142
+ language: e.chunk.language,
143
+ metadata: e.chunk.metadata,
144
+ })));
145
+ }
146
+ return embedded;
147
+ }
148
+ /**
149
+ * Store a code entity
150
+ */
151
+ async storeEntity(entity, filePath) {
152
+ if (!this.chunkStore) {
153
+ throw new Error('CodeChunkStore not configured');
154
+ }
155
+ await this.chunkStore.storeEntity({
156
+ id: `${filePath}:${entity.name}`,
157
+ name: entity.name,
158
+ entityType: entity.type,
159
+ filePath,
160
+ startLine: entity.lineStart,
161
+ endLine: entity.lineEnd,
162
+ signature: entity.signature,
163
+ });
164
+ }
165
+ /**
166
+ * Store a relationship between entities
167
+ */
168
+ async storeRelationship(sourceId, targetId, type, metadata) {
169
+ if (!this.chunkStore || !this.codeConfig.storeRelationships) {
170
+ return;
171
+ }
172
+ await this.chunkStore.storeRelationship({
173
+ sourceId,
174
+ targetId,
175
+ relationshipType: type,
176
+ metadata,
177
+ });
178
+ }
179
+ /**
180
+ * Search for similar code chunks
181
+ */
182
+ async searchCode(query, options = {}) {
183
+ if (!this.chunkStore) {
184
+ throw new Error('CodeChunkStore not configured');
185
+ }
186
+ // Generate query embedding
187
+ const response = await this.embed({
188
+ text: query,
189
+ model: 'nomic-embed-text',
190
+ });
191
+ // Search in CodeChunkStore
192
+ const results = await this.chunkStore.search(response.embedding, {
193
+ topK: options.topK ?? 10,
194
+ language: options.language,
195
+ entityType: options.entityType,
196
+ filePattern: options.filePattern,
197
+ });
198
+ return results.map((r) => ({
199
+ id: r.id,
200
+ filePath: r.filePath,
201
+ content: r.content,
202
+ startLine: r.startLine,
203
+ endLine: r.endLine,
204
+ score: r.score,
205
+ entityType: r.chunkType,
206
+ entityName: r.name,
207
+ }));
208
+ }
209
+ /**
210
+ * Hybrid search combining vector and keyword search
211
+ */
212
+ async hybridSearchCode(query, options = {}) {
213
+ if (!this.chunkStore) {
214
+ throw new Error('CodeChunkStore not configured');
215
+ }
216
+ // Generate query embedding
217
+ const response = await this.embed({
218
+ text: query,
219
+ model: 'nomic-embed-text',
220
+ });
221
+ // Perform hybrid search with correct signature
222
+ const semanticWeight = options.vectorWeight ?? 0.7;
223
+ const results = await this.chunkStore.hybridSearch(response.embedding, query, {
224
+ topK: options.topK ?? 10,
225
+ semanticWeight,
226
+ });
227
+ return results.map((r) => ({
228
+ id: r.id,
229
+ filePath: r.filePath,
230
+ content: r.content,
231
+ startLine: r.startLine,
232
+ endLine: r.endLine,
233
+ score: r.score,
234
+ vectorScore: r.metadata?.semanticScore,
235
+ keywordScore: r.metadata?.keywordScore,
236
+ }));
237
+ }
238
+ /**
239
+ * Get the underlying CodeChunkStore
240
+ */
241
+ getChunkStore() {
242
+ return this.chunkStore;
243
+ }
244
+ /**
245
+ * Check if router is using database storage
246
+ */
247
+ isUsingDatabase() {
248
+ return this.chunkStore !== null;
249
+ }
250
+ /**
251
+ * Get router statistics
252
+ */
253
+ async getCodeRouterStats() {
254
+ const routerHealth = await this.healthCheck();
255
+ if (this.chunkStore) {
256
+ const dbHealth = await this.chunkStore.healthCheck();
257
+ const stats = await this.chunkStore.getStats();
258
+ return {
259
+ embeddingDimension: this.embeddingDimension,
260
+ chunkCount: stats.chunkCount,
261
+ entityCount: stats.entityCount,
262
+ relationshipCount: stats.relationshipCount,
263
+ databaseHealthy: dbHealth.healthy,
264
+ routerHealthy: routerHealth.healthy,
265
+ };
266
+ }
267
+ return {
268
+ embeddingDimension: this.embeddingDimension,
269
+ chunkCount: 0,
270
+ entityCount: 0,
271
+ relationshipCount: 0,
272
+ databaseHealthy: false,
273
+ routerHealthy: routerHealth.healthy,
274
+ };
275
+ }
276
+ /**
277
+ * Remove chunks for a file
278
+ */
279
+ async removeFile(filePath) {
280
+ if (!this.chunkStore) {
281
+ return 0;
282
+ }
283
+ return this.chunkStore.deleteByFilePath(filePath);
284
+ }
285
+ /**
286
+ * Clear all stored data
287
+ */
288
+ async clearStorage() {
289
+ if (this.chunkStore) {
290
+ await this.chunkStore.clear();
291
+ }
292
+ }
293
+ /**
294
+ * Shutdown router and close connections
295
+ */
296
+ async shutdown() {
297
+ // Shutdown parent
298
+ await super.shutdown();
299
+ // Close CodeChunkStore connection
300
+ if (this.chunkStore) {
301
+ await this.chunkStore.close();
302
+ this.chunkStore = null;
303
+ }
304
+ this.isCodeRouterInitialized = false;
305
+ }
306
+ /**
307
+ * Format a code chunk for embedding
308
+ */
309
+ formatChunkForEmbedding(chunk) {
310
+ const parts = [];
311
+ // Add metadata context for better semantic understanding
312
+ if (chunk.language) {
313
+ parts.push(`Language: ${chunk.language}`);
314
+ }
315
+ if (chunk.entityType) {
316
+ parts.push(`Type: ${chunk.entityType}`);
317
+ }
318
+ if (chunk.parentEntity) {
319
+ parts.push(`Name: ${chunk.parentEntity}`);
320
+ }
321
+ parts.push('');
322
+ parts.push(chunk.content);
323
+ return parts.join('\n');
324
+ }
325
+ }
326
+ exports.CodeIntelligenceHybridRouter = CodeIntelligenceHybridRouter;
327
+ /**
328
+ * Factory function to create router with Docker defaults
329
+ */
330
+ function createDockerCodeIntelligenceRouter(config) {
331
+ return new CodeIntelligenceHybridRouter({
332
+ database: {
333
+ host: process.env.RUVECTOR_HOST ?? 'localhost',
334
+ port: parseInt(process.env.RUVECTOR_PORT ?? '5432'),
335
+ database: process.env.RUVECTOR_DATABASE ?? 'ruvector',
336
+ user: process.env.RUVECTOR_USER ?? 'ruvector',
337
+ password: process.env.RUVECTOR_PASSWORD ?? 'ruvector',
338
+ embeddingDimension: 768,
339
+ },
340
+ ruvllm: {
341
+ port: parseInt(process.env.RUVLLM_PORT ?? '11434'),
342
+ },
343
+ ruvector: {
344
+ enabled: true,
345
+ baseUrl: process.env.RUVECTOR_URL ?? 'http://localhost:8080',
346
+ },
347
+ ...config,
348
+ });
349
+ }
350
+ /**
351
+ * Factory function to create router from environment
352
+ */
353
+ function createCodeIntelligenceRouterFromEnv() {
354
+ const connectionString = process.env.RUVECTOR_CONNECTION_STRING;
355
+ if (connectionString) {
356
+ return new CodeIntelligenceHybridRouter({
357
+ database: {
358
+ connectionString,
359
+ embeddingDimension: parseInt(process.env.EMBEDDING_DIMENSION ?? '768'),
360
+ },
361
+ });
362
+ }
363
+ return createDockerCodeIntelligenceRouter();
364
+ }
365
+ //# sourceMappingURL=CodeIntelligenceHybridRouter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeIntelligenceHybridRouter.js","sourceRoot":"","sources":["../../../src/code-intelligence/router/CodeIntelligenceHybridRouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Code Intelligence Router Module
3
+ *
4
+ * Exports the CodeIntelligenceHybridRouter for code-specific LLM routing.
5
+ */
6
+ export { CodeIntelligenceHybridRouter, CodeIntelligenceRouterConfig, EmbeddedChunk, DEFAULT_CODE_ROUTER_CONFIG, createDockerCodeIntelligenceRouter, createCodeIntelligenceRouterFromEnv, } from './CodeIntelligenceHybridRouter.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/router/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,aAAa,EACb,0BAA0B,EAC1B,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ /**
3
+ * Code Intelligence Router Module
4
+ *
5
+ * Exports the CodeIntelligenceHybridRouter for code-specific LLM routing.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.createCodeIntelligenceRouterFromEnv = exports.createDockerCodeIntelligenceRouter = exports.DEFAULT_CODE_ROUTER_CONFIG = exports.CodeIntelligenceHybridRouter = void 0;
9
+ var CodeIntelligenceHybridRouter_js_1 = require("./CodeIntelligenceHybridRouter.js");
10
+ Object.defineProperty(exports, "CodeIntelligenceHybridRouter", { enumerable: true, get: function () { return CodeIntelligenceHybridRouter_js_1.CodeIntelligenceHybridRouter; } });
11
+ Object.defineProperty(exports, "DEFAULT_CODE_ROUTER_CONFIG", { enumerable: true, get: function () { return CodeIntelligenceHybridRouter_js_1.DEFAULT_CODE_ROUTER_CONFIG; } });
12
+ Object.defineProperty(exports, "createDockerCodeIntelligenceRouter", { enumerable: true, get: function () { return CodeIntelligenceHybridRouter_js_1.createDockerCodeIntelligenceRouter; } });
13
+ Object.defineProperty(exports, "createCodeIntelligenceRouterFromEnv", { enumerable: true, get: function () { return CodeIntelligenceHybridRouter_js_1.createCodeIntelligenceRouterFromEnv; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/code-intelligence/router/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,qFAO2C;AANzC,+IAAA,4BAA4B,OAAA;AAG5B,6IAAA,0BAA0B,OAAA;AAC1B,qJAAA,kCAAkC,OAAA;AAClC,sJAAA,mCAAmC,OAAA"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * BM25 Search Engine
3
+ *
4
+ * Implements Best Matching 25 algorithm for keyword-based
5
+ * code search with:
6
+ * - Term frequency saturation
7
+ * - Document length normalization
8
+ * - Inverse document frequency weighting
9
+ */
10
+ import { BM25Config, BM25Document, SearchResult } from './types.js';
11
+ export declare class BM25Search {
12
+ private config;
13
+ private index;
14
+ constructor(config?: Partial<BM25Config>);
15
+ /**
16
+ * Add a document to the index.
17
+ */
18
+ addDocument(doc: Omit<BM25Document, 'terms'>): void;
19
+ /**
20
+ * Add multiple documents.
21
+ */
22
+ addDocuments(docs: Array<Omit<BM25Document, 'terms'>>): void;
23
+ /**
24
+ * Remove a document from the index.
25
+ */
26
+ removeDocument(docId: string): boolean;
27
+ /**
28
+ * Search for documents matching a query.
29
+ */
30
+ search(query: string, topK?: number): SearchResult[];
31
+ /**
32
+ * Get term matches in content for highlighting.
33
+ */
34
+ getHighlights(content: string, queryTerms: string[]): string[];
35
+ /**
36
+ * Get index statistics.
37
+ */
38
+ getStats(): {
39
+ docCount: number;
40
+ avgDocLength: number;
41
+ uniqueTerms: number;
42
+ };
43
+ /**
44
+ * Clear the index.
45
+ */
46
+ clear(): void;
47
+ /**
48
+ * Get configuration.
49
+ */
50
+ getConfig(): BM25Config;
51
+ /**
52
+ * Calculate Inverse Document Frequency.
53
+ * IDF = ln((N - df + 0.5) / (df + 0.5))
54
+ */
55
+ private calculateIDF;
56
+ /**
57
+ * Calculate normalized term frequency.
58
+ * TF = (tf * (k1 + 1)) / (tf + k1 * (1 - b + b * dl/avgdl))
59
+ */
60
+ private calculateTF;
61
+ /**
62
+ * Tokenize text into terms.
63
+ */
64
+ private tokenize;
65
+ /**
66
+ * Update average document length.
67
+ */
68
+ private updateAvgDocLength;
69
+ /**
70
+ * Create empty index structure.
71
+ */
72
+ private createEmptyIndex;
73
+ }
74
+ //# sourceMappingURL=BM25Search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BM25Search.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/search/BM25Search.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,UAAU,EAEV,YAAY,EACZ,YAAY,EAEb,MAAM,YAAY,CAAC;AAEpB,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAAY;gBAEb,MAAM,GAAE,OAAO,CAAC,UAAU,CAAM;IAK5C;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,IAAI;IA6BnD;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI;IAM5D;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IA6BtC;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,MAAW,GAAG,YAAY,EAAE;IA6DxD;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAe9D;;OAEG;IACH,QAAQ,IAAI;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;KACrB;IAQD;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAKpB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAYhB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAUzB"}