@ai-coders/context 0.4.0 → 0.5.1

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 (435) hide show
  1. package/README.md +117 -146
  2. package/dist/fragments/compose.d.ts +30 -0
  3. package/dist/fragments/compose.d.ts.map +1 -0
  4. package/dist/fragments/compose.js +274 -0
  5. package/dist/fragments/compose.js.map +1 -0
  6. package/dist/fragments/extractors/index.d.ts +26 -0
  7. package/dist/fragments/extractors/index.d.ts.map +1 -0
  8. package/dist/fragments/extractors/index.js +58 -0
  9. package/dist/fragments/extractors/index.js.map +1 -0
  10. package/dist/fragments/extractors/module.d.ts +12 -0
  11. package/dist/fragments/extractors/module.d.ts.map +1 -0
  12. package/dist/fragments/extractors/module.js +302 -0
  13. package/dist/fragments/extractors/module.js.map +1 -0
  14. package/dist/fragments/extractors/project.d.ts +12 -0
  15. package/dist/fragments/extractors/project.d.ts.map +1 -0
  16. package/dist/fragments/extractors/project.js +274 -0
  17. package/dist/fragments/extractors/project.js.map +1 -0
  18. package/dist/fragments/extractors/semantic.d.ts +12 -0
  19. package/dist/fragments/extractors/semantic.d.ts.map +1 -0
  20. package/dist/fragments/extractors/semantic.js +329 -0
  21. package/dist/fragments/extractors/semantic.js.map +1 -0
  22. package/dist/fragments/index.d.ts +47 -0
  23. package/dist/fragments/index.d.ts.map +1 -0
  24. package/dist/fragments/index.js +75 -0
  25. package/dist/fragments/index.js.map +1 -0
  26. package/dist/fragments/query.d.ts +101 -0
  27. package/dist/fragments/query.d.ts.map +1 -0
  28. package/dist/fragments/query.js +200 -0
  29. package/dist/fragments/query.js.map +1 -0
  30. package/dist/fragments/render/compact.d.ts +15 -0
  31. package/dist/fragments/render/compact.d.ts.map +1 -0
  32. package/dist/fragments/render/compact.js +209 -0
  33. package/dist/fragments/render/compact.js.map +1 -0
  34. package/dist/fragments/render/index.d.ts +17 -0
  35. package/dist/fragments/render/index.d.ts.map +1 -0
  36. package/dist/fragments/render/index.js +40 -0
  37. package/dist/fragments/render/index.js.map +1 -0
  38. package/dist/fragments/render/json.d.ts +9 -0
  39. package/dist/fragments/render/json.d.ts.map +1 -0
  40. package/dist/fragments/render/json.js +44 -0
  41. package/dist/fragments/render/json.js.map +1 -0
  42. package/dist/fragments/render/markdown.d.ts +9 -0
  43. package/dist/fragments/render/markdown.d.ts.map +1 -0
  44. package/dist/fragments/render/markdown.js +291 -0
  45. package/dist/fragments/render/markdown.js.map +1 -0
  46. package/dist/fragments/store.d.ts +49 -0
  47. package/dist/fragments/store.d.ts.map +1 -0
  48. package/dist/fragments/store.js +161 -0
  49. package/dist/fragments/store.js.map +1 -0
  50. package/dist/fragments/types.d.ts +241 -0
  51. package/dist/fragments/types.d.ts.map +1 -0
  52. package/dist/fragments/types.js +8 -0
  53. package/dist/fragments/types.js.map +1 -0
  54. package/dist/generators/agents/agentGenerator.d.ts +8 -1
  55. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  56. package/dist/generators/agents/agentGenerator.js +108 -10
  57. package/dist/generators/agents/agentGenerator.js.map +1 -1
  58. package/dist/generators/agents/templates/playbookTemplate.d.ts +3 -2
  59. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
  60. package/dist/generators/agents/templates/playbookTemplate.js +147 -45
  61. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
  62. package/dist/generators/agents/templates/types.d.ts +9 -1
  63. package/dist/generators/agents/templates/types.d.ts.map +1 -1
  64. package/dist/generators/documentation/documentationGenerator.d.ts +2 -0
  65. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  66. package/dist/generators/documentation/documentationGenerator.js +18 -3
  67. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  68. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -1
  69. package/dist/generators/documentation/guideRegistry.js +0 -8
  70. package/dist/generators/documentation/guideRegistry.js.map +1 -1
  71. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +1 -1
  72. package/dist/generators/documentation/templates/apiReferenceTemplate.js +3 -22
  73. package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +1 -1
  74. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
  75. package/dist/generators/documentation/templates/architectureTemplate.js +174 -36
  76. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
  77. package/dist/generators/documentation/templates/common.d.ts +33 -1
  78. package/dist/generators/documentation/templates/common.d.ts.map +1 -1
  79. package/dist/generators/documentation/templates/common.js +144 -10
  80. package/dist/generators/documentation/templates/common.js.map +1 -1
  81. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -1
  82. package/dist/generators/documentation/templates/dataFlowTemplate.js +106 -22
  83. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -1
  84. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -1
  85. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +4 -19
  86. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -1
  87. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +1 -1
  88. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -1
  89. package/dist/generators/documentation/templates/glossaryTemplate.js +57 -25
  90. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -1
  91. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -1
  92. package/dist/generators/documentation/templates/indexTemplate.js +1 -18
  93. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -1
  94. package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +1 -1
  95. package/dist/generators/documentation/templates/migrationTemplate.js +3 -23
  96. package/dist/generators/documentation/templates/migrationTemplate.js.map +1 -1
  97. package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +1 -1
  98. package/dist/generators/documentation/templates/onboardingTemplate.js +3 -23
  99. package/dist/generators/documentation/templates/onboardingTemplate.js.map +1 -1
  100. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -1
  101. package/dist/generators/documentation/templates/projectOverviewTemplate.js +94 -28
  102. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -1
  103. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -1
  104. package/dist/generators/documentation/templates/securityTemplate.js +11 -22
  105. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -1
  106. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -1
  107. package/dist/generators/documentation/templates/testingTemplate.js +4 -19
  108. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -1
  109. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -1
  110. package/dist/generators/documentation/templates/toolingTemplate.js +11 -25
  111. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -1
  112. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +1 -1
  113. package/dist/generators/documentation/templates/troubleshootingTemplate.js +3 -23
  114. package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +1 -1
  115. package/dist/generators/documentation/templates/types.d.ts +2 -1
  116. package/dist/generators/documentation/templates/types.d.ts.map +1 -1
  117. package/dist/generators/plans/planGenerator.d.ts +4 -0
  118. package/dist/generators/plans/planGenerator.d.ts.map +1 -1
  119. package/dist/generators/plans/planGenerator.js +30 -2
  120. package/dist/generators/plans/planGenerator.js.map +1 -1
  121. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -1
  122. package/dist/generators/plans/templates/indexTemplate.js +3 -12
  123. package/dist/generators/plans/templates/indexTemplate.js.map +1 -1
  124. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
  125. package/dist/generators/plans/templates/planTemplate.js +57 -33
  126. package/dist/generators/plans/templates/planTemplate.js.map +1 -1
  127. package/dist/generators/plans/templates/types.d.ts +10 -0
  128. package/dist/generators/plans/templates/types.d.ts.map +1 -1
  129. package/dist/generators/shared/generatorUtils.d.ts.map +1 -1
  130. package/dist/generators/shared/generatorUtils.js +6 -9
  131. package/dist/generators/shared/generatorUtils.js.map +1 -1
  132. package/dist/index.d.ts.map +1 -1
  133. package/dist/index.js +646 -114
  134. package/dist/index.js.map +1 -1
  135. package/dist/prompts/defaults.d.ts +2 -2
  136. package/dist/prompts/defaults.d.ts.map +1 -1
  137. package/dist/prompts/defaults.js +26 -56
  138. package/dist/prompts/defaults.js.map +1 -1
  139. package/dist/services/ai/agentEvents.d.ts +45 -0
  140. package/dist/services/ai/agentEvents.d.ts.map +1 -0
  141. package/dist/services/ai/agentEvents.js +61 -0
  142. package/dist/services/ai/agentEvents.js.map +1 -0
  143. package/dist/services/ai/agents/documentationAgent.d.ts +53 -0
  144. package/dist/services/ai/agents/documentationAgent.d.ts.map +1 -0
  145. package/dist/services/ai/agents/documentationAgent.js +217 -0
  146. package/dist/services/ai/agents/documentationAgent.js.map +1 -0
  147. package/dist/services/ai/agents/index.d.ts +7 -0
  148. package/dist/services/ai/agents/index.d.ts.map +1 -0
  149. package/dist/services/ai/agents/index.js +10 -0
  150. package/dist/services/ai/agents/index.js.map +1 -0
  151. package/dist/services/ai/agents/planAgent.d.ts +68 -0
  152. package/dist/services/ai/agents/planAgent.d.ts.map +1 -0
  153. package/dist/services/ai/agents/planAgent.js +342 -0
  154. package/dist/services/ai/agents/planAgent.js.map +1 -0
  155. package/dist/services/ai/agents/playbookAgent.d.ts +54 -0
  156. package/dist/services/ai/agents/playbookAgent.d.ts.map +1 -0
  157. package/dist/services/ai/agents/playbookAgent.js +244 -0
  158. package/dist/services/ai/agents/playbookAgent.js.map +1 -0
  159. package/dist/services/ai/aiSdkClient.d.ts +67 -0
  160. package/dist/services/ai/aiSdkClient.d.ts.map +1 -0
  161. package/dist/services/ai/aiSdkClient.js +143 -0
  162. package/dist/services/ai/aiSdkClient.js.map +1 -0
  163. package/dist/services/ai/index.d.ts +7 -0
  164. package/dist/services/ai/index.d.ts.map +1 -0
  165. package/dist/services/ai/index.js +49 -0
  166. package/dist/services/ai/index.js.map +1 -0
  167. package/dist/services/ai/prompts/index.d.ts +2 -0
  168. package/dist/services/ai/prompts/index.d.ts.map +1 -0
  169. package/dist/services/ai/prompts/index.js +12 -0
  170. package/dist/services/ai/prompts/index.js.map +1 -0
  171. package/dist/services/ai/prompts/sharedPrompts.d.ts +33 -0
  172. package/dist/services/ai/prompts/sharedPrompts.d.ts.map +1 -0
  173. package/dist/services/ai/prompts/sharedPrompts.js +136 -0
  174. package/dist/services/ai/prompts/sharedPrompts.js.map +1 -0
  175. package/dist/services/ai/providerFactory.d.ts +35 -0
  176. package/dist/services/ai/providerFactory.d.ts.map +1 -0
  177. package/dist/services/ai/providerFactory.js +107 -0
  178. package/dist/services/ai/providerFactory.js.map +1 -0
  179. package/dist/services/ai/schemas.d.ts +331 -0
  180. package/dist/services/ai/schemas.d.ts.map +1 -0
  181. package/dist/services/ai/schemas.js +236 -0
  182. package/dist/services/ai/schemas.js.map +1 -0
  183. package/dist/services/ai/toolRegistry.d.ts +27 -0
  184. package/dist/services/ai/toolRegistry.d.ts.map +1 -0
  185. package/dist/services/ai/toolRegistry.js +126 -0
  186. package/dist/services/ai/toolRegistry.js.map +1 -0
  187. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +33 -0
  188. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +1 -0
  189. package/dist/services/ai/tools/analyzeSymbolsTool.js +57 -0
  190. package/dist/services/ai/tools/analyzeSymbolsTool.js.map +1 -0
  191. package/dist/services/ai/tools/checkScaffoldingTool.d.ts +18 -0
  192. package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -0
  193. package/dist/services/ai/tools/checkScaffoldingTool.js +86 -0
  194. package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -0
  195. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +108 -0
  196. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -0
  197. package/dist/services/ai/tools/fillScaffoldingTool.js +463 -0
  198. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -0
  199. package/dist/services/ai/tools/getFileStructureTool.d.ts +29 -0
  200. package/dist/services/ai/tools/getFileStructureTool.d.ts.map +1 -0
  201. package/dist/services/ai/tools/getFileStructureTool.js +48 -0
  202. package/dist/services/ai/tools/getFileStructureTool.js.map +1 -0
  203. package/dist/services/ai/tools/index.d.ts +20 -0
  204. package/dist/services/ai/tools/index.d.ts.map +1 -0
  205. package/dist/services/ai/tools/index.js +68 -0
  206. package/dist/services/ai/tools/index.js.map +1 -0
  207. package/dist/services/ai/tools/initializeContextTool.d.ts +25 -0
  208. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -0
  209. package/dist/services/ai/tools/initializeContextTool.js +121 -0
  210. package/dist/services/ai/tools/initializeContextTool.js.map +1 -0
  211. package/dist/services/ai/tools/listFilesTool.d.ts +18 -0
  212. package/dist/services/ai/tools/listFilesTool.d.ts.map +1 -0
  213. package/dist/services/ai/tools/listFilesTool.js +34 -0
  214. package/dist/services/ai/tools/listFilesTool.js.map +1 -0
  215. package/dist/services/ai/tools/readFileTool.d.ts +17 -0
  216. package/dist/services/ai/tools/readFileTool.d.ts.map +1 -0
  217. package/dist/services/ai/tools/readFileTool.js +63 -0
  218. package/dist/services/ai/tools/readFileTool.js.map +1 -0
  219. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +19 -0
  220. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -0
  221. package/dist/services/ai/tools/scaffoldPlanTool.js +81 -0
  222. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -0
  223. package/dist/services/ai/tools/searchCodeTool.d.ts +25 -0
  224. package/dist/services/ai/tools/searchCodeTool.d.ts.map +1 -0
  225. package/dist/services/ai/tools/searchCodeTool.js +96 -0
  226. package/dist/services/ai/tools/searchCodeTool.js.map +1 -0
  227. package/dist/services/fill/fillService.d.ts +11 -1
  228. package/dist/services/fill/fillService.d.ts.map +1 -1
  229. package/dist/services/fill/fillService.js +157 -40
  230. package/dist/services/fill/fillService.js.map +1 -1
  231. package/dist/services/init/initService.d.ts +1 -0
  232. package/dist/services/init/initService.d.ts.map +1 -1
  233. package/dist/services/init/initService.js +12 -7
  234. package/dist/services/init/initService.js.map +1 -1
  235. package/dist/services/llmClientFactory.d.ts +36 -2
  236. package/dist/services/llmClientFactory.d.ts.map +1 -1
  237. package/dist/services/llmClientFactory.js +57 -11
  238. package/dist/services/llmClientFactory.js.map +1 -1
  239. package/dist/services/mcp/index.d.ts +2 -0
  240. package/dist/services/mcp/index.d.ts.map +1 -0
  241. package/dist/services/mcp/index.js +7 -0
  242. package/dist/services/mcp/index.js.map +1 -0
  243. package/dist/services/mcp/mcpServer.d.ts +45 -0
  244. package/dist/services/mcp/mcpServer.d.ts.map +1 -0
  245. package/dist/services/mcp/mcpServer.js +411 -0
  246. package/dist/services/mcp/mcpServer.js.map +1 -0
  247. package/dist/services/openRouterClient.js +1 -1
  248. package/dist/services/openRouterClient.js.map +1 -1
  249. package/dist/services/passthrough/commandRouter.d.ts +53 -0
  250. package/dist/services/passthrough/commandRouter.d.ts.map +1 -0
  251. package/dist/services/passthrough/commandRouter.js +349 -0
  252. package/dist/services/passthrough/commandRouter.js.map +1 -0
  253. package/dist/services/passthrough/index.d.ts +7 -0
  254. package/dist/services/passthrough/index.d.ts.map +1 -0
  255. package/dist/services/passthrough/index.js +23 -0
  256. package/dist/services/passthrough/index.js.map +1 -0
  257. package/dist/services/passthrough/protocol.d.ts +269 -0
  258. package/dist/services/passthrough/protocol.d.ts.map +1 -0
  259. package/dist/services/passthrough/protocol.js +151 -0
  260. package/dist/services/passthrough/protocol.js.map +1 -0
  261. package/dist/services/passthrough/stdinReader.d.ts +42 -0
  262. package/dist/services/passthrough/stdinReader.d.ts.map +1 -0
  263. package/dist/services/passthrough/stdinReader.js +111 -0
  264. package/dist/services/passthrough/stdinReader.js.map +1 -0
  265. package/dist/services/plan/planService.d.ts +3 -1
  266. package/dist/services/plan/planService.d.ts.map +1 -1
  267. package/dist/services/plan/planService.js +49 -41
  268. package/dist/services/plan/planService.js.map +1 -1
  269. package/dist/services/semantic/codebaseAnalyzer.d.ts +40 -0
  270. package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -0
  271. package/dist/services/semantic/codebaseAnalyzer.js +540 -0
  272. package/dist/services/semantic/codebaseAnalyzer.js.map +1 -0
  273. package/dist/services/semantic/contextBuilder.d.ts +79 -0
  274. package/dist/services/semantic/contextBuilder.d.ts.map +1 -0
  275. package/dist/services/semantic/contextBuilder.js +538 -0
  276. package/dist/services/semantic/contextBuilder.js.map +1 -0
  277. package/dist/services/semantic/index.d.ts +12 -0
  278. package/dist/services/semantic/index.d.ts.map +1 -0
  279. package/dist/services/semantic/index.js +33 -0
  280. package/dist/services/semantic/index.js.map +1 -0
  281. package/dist/services/semantic/lsp/index.d.ts +2 -0
  282. package/dist/services/semantic/lsp/index.d.ts.map +1 -0
  283. package/dist/services/semantic/lsp/index.js +6 -0
  284. package/dist/services/semantic/lsp/index.js.map +1 -0
  285. package/dist/services/semantic/lsp/lspLayer.d.ts +32 -0
  286. package/dist/services/semantic/lsp/lspLayer.d.ts.map +1 -0
  287. package/dist/services/semantic/lsp/lspLayer.js +378 -0
  288. package/dist/services/semantic/lsp/lspLayer.js.map +1 -0
  289. package/dist/services/semantic/treeSitter/index.d.ts +2 -0
  290. package/dist/services/semantic/treeSitter/index.d.ts.map +1 -0
  291. package/dist/services/semantic/treeSitter/index.js +6 -0
  292. package/dist/services/semantic/treeSitter/index.js.map +1 -0
  293. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts +37 -0
  294. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts.map +1 -0
  295. package/dist/services/semantic/treeSitter/treeSitterLayer.js +518 -0
  296. package/dist/services/semantic/treeSitter/treeSitterLayer.js.map +1 -0
  297. package/dist/services/semantic/types.d.ts +122 -0
  298. package/dist/services/semantic/types.d.ts.map +1 -0
  299. package/dist/services/semantic/types.js +31 -0
  300. package/dist/services/semantic/types.js.map +1 -0
  301. package/dist/services/serve/index.d.ts +2 -0
  302. package/dist/services/serve/index.d.ts.map +1 -0
  303. package/dist/services/serve/index.js +6 -0
  304. package/dist/services/serve/index.js.map +1 -0
  305. package/dist/services/serve/serveService.d.ts +38 -0
  306. package/dist/services/serve/serveService.d.ts.map +1 -0
  307. package/dist/services/serve/serveService.js +99 -0
  308. package/dist/services/serve/serveService.js.map +1 -0
  309. package/dist/services/shared/llmConfig.d.ts +19 -3
  310. package/dist/services/shared/llmConfig.d.ts.map +1 -1
  311. package/dist/services/shared/llmConfig.js +39 -10
  312. package/dist/services/shared/llmConfig.js.map +1 -1
  313. package/dist/services/state/index.d.ts +2 -0
  314. package/dist/services/state/index.d.ts.map +1 -0
  315. package/dist/services/state/index.js +6 -0
  316. package/dist/services/state/index.js.map +1 -0
  317. package/dist/services/state/stateDetector.d.ts +53 -0
  318. package/dist/services/state/stateDetector.d.ts.map +1 -0
  319. package/dist/services/state/stateDetector.js +189 -0
  320. package/dist/services/state/stateDetector.js.map +1 -0
  321. package/dist/services/sync/index.d.ts +6 -0
  322. package/dist/services/sync/index.d.ts.map +1 -0
  323. package/dist/services/sync/index.js +16 -0
  324. package/dist/services/sync/index.js.map +1 -0
  325. package/dist/services/sync/markdownReferenceHandler.d.ts +3 -0
  326. package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -0
  327. package/dist/services/sync/markdownReferenceHandler.js +133 -0
  328. package/dist/services/sync/markdownReferenceHandler.js.map +1 -0
  329. package/dist/services/sync/presets.d.ts +6 -0
  330. package/dist/services/sync/presets.d.ts.map +1 -0
  331. package/dist/services/sync/presets.js +49 -0
  332. package/dist/services/sync/presets.js.map +1 -0
  333. package/dist/services/sync/symlinkHandler.d.ts +7 -0
  334. package/dist/services/sync/symlinkHandler.d.ts.map +1 -0
  335. package/dist/services/sync/symlinkHandler.js +129 -0
  336. package/dist/services/sync/symlinkHandler.js.map +1 -0
  337. package/dist/services/sync/syncService.d.ts +15 -0
  338. package/dist/services/sync/syncService.d.ts.map +1 -0
  339. package/dist/services/sync/syncService.js +222 -0
  340. package/dist/services/sync/syncService.js.map +1 -0
  341. package/dist/services/sync/types.d.ts +62 -0
  342. package/dist/services/sync/types.d.ts.map +1 -0
  343. package/dist/services/sync/types.js +3 -0
  344. package/dist/services/sync/types.js.map +1 -0
  345. package/dist/services/update/index.d.ts +2 -0
  346. package/dist/services/update/index.d.ts.map +1 -0
  347. package/dist/services/update/index.js +6 -0
  348. package/dist/services/update/index.js.map +1 -0
  349. package/dist/services/update/updateService.d.ts +64 -0
  350. package/dist/services/update/updateService.d.ts.map +1 -0
  351. package/dist/services/update/updateService.js +295 -0
  352. package/dist/services/update/updateService.js.map +1 -0
  353. package/dist/types.d.ts +2 -6
  354. package/dist/types.d.ts.map +1 -1
  355. package/dist/utils/cliUI.d.ts +33 -0
  356. package/dist/utils/cliUI.d.ts.map +1 -1
  357. package/dist/utils/cliUI.js +157 -107
  358. package/dist/utils/cliUI.js.map +1 -1
  359. package/dist/utils/contentSanitizer.d.ts +42 -0
  360. package/dist/utils/contentSanitizer.d.ts.map +1 -0
  361. package/dist/utils/contentSanitizer.js +238 -0
  362. package/dist/utils/contentSanitizer.js.map +1 -0
  363. package/dist/utils/frontMatter.d.ts +55 -0
  364. package/dist/utils/frontMatter.d.ts.map +1 -0
  365. package/dist/utils/frontMatter.js +173 -0
  366. package/dist/utils/frontMatter.js.map +1 -0
  367. package/dist/utils/gitService.d.ts.map +1 -1
  368. package/dist/utils/gitService.js +12 -14
  369. package/dist/utils/gitService.js.map +1 -1
  370. package/dist/utils/i18n.d.ts +101 -13
  371. package/dist/utils/i18n.d.ts.map +1 -1
  372. package/dist/utils/i18n.js +204 -28
  373. package/dist/utils/i18n.js.map +1 -1
  374. package/dist/utils/prompts/configSummary.d.ts +7 -0
  375. package/dist/utils/prompts/configSummary.d.ts.map +1 -0
  376. package/dist/utils/prompts/configSummary.js +63 -0
  377. package/dist/utils/prompts/configSummary.js.map +1 -0
  378. package/dist/utils/prompts/index.d.ts +22 -0
  379. package/dist/utils/prompts/index.d.ts.map +1 -0
  380. package/dist/utils/prompts/index.js +122 -0
  381. package/dist/utils/prompts/index.js.map +1 -0
  382. package/dist/utils/prompts/llmPrompts.d.ts +11 -0
  383. package/dist/utils/prompts/llmPrompts.d.ts.map +1 -0
  384. package/dist/utils/prompts/llmPrompts.js +96 -0
  385. package/dist/utils/prompts/llmPrompts.js.map +1 -0
  386. package/dist/utils/prompts/smartDefaults.d.ts +15 -0
  387. package/dist/utils/prompts/smartDefaults.d.ts.map +1 -0
  388. package/dist/utils/prompts/smartDefaults.js +105 -0
  389. package/dist/utils/prompts/smartDefaults.js.map +1 -0
  390. package/dist/utils/prompts/types.d.ts +38 -0
  391. package/dist/utils/prompts/types.d.ts.map +1 -0
  392. package/dist/utils/prompts/types.js +3 -0
  393. package/dist/utils/prompts/types.js.map +1 -0
  394. package/dist/utils/theme.d.ts +66 -0
  395. package/dist/utils/theme.d.ts.map +1 -0
  396. package/dist/utils/theme.js +93 -0
  397. package/dist/utils/theme.js.map +1 -0
  398. package/dist/version.d.ts +8 -0
  399. package/dist/version.d.ts.map +1 -0
  400. package/dist/version.js +15 -0
  401. package/dist/version.js.map +1 -0
  402. package/package.json +12 -2
  403. package/prompts/update_scaffold_prompt.md +14 -34
  404. package/dist/commands/shared/agents.d.ts +0 -2
  405. package/dist/commands/shared/agents.d.ts.map +0 -1
  406. package/dist/commands/shared/agents.js +0 -15
  407. package/dist/commands/shared/agents.js.map +0 -1
  408. package/dist/commands/shared/selection.d.ts +0 -12
  409. package/dist/commands/shared/selection.d.ts.map +0 -1
  410. package/dist/commands/shared/selection.js +0 -95
  411. package/dist/commands/shared/selection.js.map +0 -1
  412. package/dist/generators/documentation/templates/frontMatter.d.ts +0 -11
  413. package/dist/generators/documentation/templates/frontMatter.d.ts.map +0 -1
  414. package/dist/generators/documentation/templates/frontMatter.js +0 -29
  415. package/dist/generators/documentation/templates/frontMatter.js.map +0 -1
  416. package/dist/services/anthropicClient.d.ts +0 -12
  417. package/dist/services/anthropicClient.d.ts.map +0 -1
  418. package/dist/services/anthropicClient.js +0 -98
  419. package/dist/services/anthropicClient.js.map +0 -1
  420. package/dist/services/geminiClient.d.ts +0 -12
  421. package/dist/services/geminiClient.d.ts.map +0 -1
  422. package/dist/services/geminiClient.js +0 -96
  423. package/dist/services/geminiClient.js.map +0 -1
  424. package/dist/services/grokClient.d.ts +0 -12
  425. package/dist/services/grokClient.d.ts.map +0 -1
  426. package/dist/services/grokClient.js +0 -101
  427. package/dist/services/grokClient.js.map +0 -1
  428. package/dist/services/openaiClient.d.ts +0 -12
  429. package/dist/services/openaiClient.d.ts.map +0 -1
  430. package/dist/services/openaiClient.js +0 -98
  431. package/dist/services/openaiClient.js.map +0 -1
  432. package/dist/utils/pricing.d.ts +0 -14
  433. package/dist/utils/pricing.d.ts.map +0 -1
  434. package/dist/utils/pricing.js +0 -115
  435. package/dist/utils/pricing.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ export { AIContextMCPServer, startMCPServer, type MCPServerOptions } from './mcpServer';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.startMCPServer = exports.AIContextMCPServer = void 0;
4
+ var mcpServer_1 = require("./mcpServer");
5
+ Object.defineProperty(exports, "AIContextMCPServer", { enumerable: true, get: function () { return mcpServer_1.AIContextMCPServer; } });
6
+ Object.defineProperty(exports, "startMCPServer", { enumerable: true, get: function () { return mcpServer_1.startMCPServer; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/mcp/index.ts"],"names":[],"mappings":";;;AAAA,yCAAwF;AAA/E,+GAAA,kBAAkB,OAAA;AAAE,2GAAA,cAAc,OAAA"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * MCP Server - Model Context Protocol server for Claude Code integration
3
+ *
4
+ * Exposes code analysis tools and semantic context as MCP resources.
5
+ */
6
+ export interface MCPServerOptions {
7
+ /** Default repository path for tools */
8
+ repoPath?: string;
9
+ /** Server name */
10
+ name?: string;
11
+ /** Enable verbose logging */
12
+ verbose?: boolean;
13
+ }
14
+ export declare class AIContextMCPServer {
15
+ private server;
16
+ private contextBuilder;
17
+ private options;
18
+ private transport;
19
+ constructor(options?: MCPServerOptions);
20
+ /**
21
+ * Register code analysis tools
22
+ */
23
+ private registerTools;
24
+ /**
25
+ * Register semantic context resources
26
+ */
27
+ private registerResources;
28
+ /**
29
+ * Start the MCP server with stdio transport
30
+ */
31
+ start(): Promise<void>;
32
+ /**
33
+ * Stop the MCP server
34
+ */
35
+ stop(): Promise<void>;
36
+ /**
37
+ * Log message to stderr (not stdout, to avoid polluting MCP messages)
38
+ */
39
+ private log;
40
+ }
41
+ /**
42
+ * Create and start an MCP server
43
+ */
44
+ export declare function startMCPServer(options?: MCPServerOptions): Promise<AIContextMCPServer>;
45
+ //# sourceMappingURL=mcpServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpServer.d.ts","sourceRoot":"","sources":["../../../src/services/mcp/mcpServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuBH,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAqC;gBAE1C,OAAO,GAAE,gBAAqB;IAkB1C;;OAEG;IACH,OAAO,CAAC,aAAa;IAuVrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2EzB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B;;OAEG;IACH,OAAO,CAAC,GAAG;CAKZ;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAIhG"}
@@ -0,0 +1,411 @@
1
+ "use strict";
2
+ /**
3
+ * MCP Server - Model Context Protocol server for Claude Code integration
4
+ *
5
+ * Exposes code analysis tools and semantic context as MCP resources.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.AIContextMCPServer = void 0;
9
+ exports.startMCPServer = startMCPServer;
10
+ const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
11
+ const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
12
+ const zod_1 = require("zod");
13
+ const tools_1 = require("../ai/tools");
14
+ const toolRegistry_1 = require("../ai/toolRegistry");
15
+ const contextBuilder_1 = require("../semantic/contextBuilder");
16
+ const version_1 = require("../../version");
17
+ class AIContextMCPServer {
18
+ constructor(options = {}) {
19
+ this.transport = null;
20
+ this.options = {
21
+ name: 'ai-context',
22
+ verbose: false,
23
+ ...options
24
+ };
25
+ this.server = new mcp_js_1.McpServer({
26
+ name: this.options.name,
27
+ version: version_1.VERSION
28
+ });
29
+ this.contextBuilder = new contextBuilder_1.SemanticContextBuilder();
30
+ this.registerTools();
31
+ this.registerResources();
32
+ }
33
+ /**
34
+ * Register code analysis tools
35
+ */
36
+ registerTools() {
37
+ // readFile tool
38
+ this.server.registerTool('readFile', {
39
+ description: (0, toolRegistry_1.getToolDescription)('readFile'),
40
+ inputSchema: {
41
+ filePath: zod_1.z.string().describe('Absolute or relative path to the file to read'),
42
+ encoding: zod_1.z.enum(['utf-8', 'ascii', 'binary']).default('utf-8').optional()
43
+ }
44
+ }, async ({ filePath, encoding }) => {
45
+ const result = await tools_1.readFileTool.execute({ filePath, encoding }, { toolCallId: '', messages: [] });
46
+ return {
47
+ content: [{
48
+ type: 'text',
49
+ text: JSON.stringify(result, null, 2)
50
+ }]
51
+ };
52
+ });
53
+ // listFiles tool
54
+ this.server.registerTool('listFiles', {
55
+ description: (0, toolRegistry_1.getToolDescription)('listFiles'),
56
+ inputSchema: {
57
+ pattern: zod_1.z.string().describe('Glob pattern to match files (e.g., "**/*.ts")'),
58
+ cwd: zod_1.z.string().optional().describe('Working directory for the glob pattern'),
59
+ ignore: zod_1.z.array(zod_1.z.string()).optional().describe('Patterns to ignore')
60
+ }
61
+ }, async ({ pattern, cwd, ignore }) => {
62
+ const result = await tools_1.listFilesTool.execute({ pattern, cwd: cwd || this.options.repoPath, ignore }, { toolCallId: '', messages: [] });
63
+ return {
64
+ content: [{
65
+ type: 'text',
66
+ text: JSON.stringify(result, null, 2)
67
+ }]
68
+ };
69
+ });
70
+ // analyzeSymbols tool
71
+ this.server.registerTool('analyzeSymbols', {
72
+ description: (0, toolRegistry_1.getToolDescription)('analyzeSymbols'),
73
+ inputSchema: {
74
+ filePath: zod_1.z.string().describe('Path to the file to analyze'),
75
+ symbolTypes: zod_1.z.array(zod_1.z.enum(['class', 'interface', 'function', 'type', 'enum']))
76
+ .optional()
77
+ .describe('Types of symbols to extract')
78
+ }
79
+ }, async ({ filePath, symbolTypes }) => {
80
+ const result = await tools_1.analyzeSymbolsTool.execute({ filePath, symbolTypes }, { toolCallId: '', messages: [] });
81
+ return {
82
+ content: [{
83
+ type: 'text',
84
+ text: JSON.stringify(result, null, 2)
85
+ }]
86
+ };
87
+ });
88
+ // getFileStructure tool
89
+ this.server.registerTool('getFileStructure', {
90
+ description: (0, toolRegistry_1.getToolDescription)('getFileStructure'),
91
+ inputSchema: {
92
+ rootPath: zod_1.z.string().describe('Root path of the repository'),
93
+ maxDepth: zod_1.z.number().optional().default(3).describe('Maximum directory depth'),
94
+ includePatterns: zod_1.z.array(zod_1.z.string()).optional()
95
+ }
96
+ }, async ({ rootPath, maxDepth, includePatterns }) => {
97
+ const result = await tools_1.getFileStructureTool.execute({ rootPath: rootPath || this.options.repoPath || '.', maxDepth, includePatterns }, { toolCallId: '', messages: [] });
98
+ return {
99
+ content: [{
100
+ type: 'text',
101
+ text: JSON.stringify(result, null, 2)
102
+ }]
103
+ };
104
+ });
105
+ // searchCode tool
106
+ this.server.registerTool('searchCode', {
107
+ description: (0, toolRegistry_1.getToolDescription)('searchCode'),
108
+ inputSchema: {
109
+ pattern: zod_1.z.string().describe('Regex pattern to search for'),
110
+ fileGlob: zod_1.z.string().optional().describe('Glob pattern to filter files'),
111
+ maxResults: zod_1.z.number().optional().default(50),
112
+ cwd: zod_1.z.string().optional().describe('Working directory for the search')
113
+ }
114
+ }, async ({ pattern, fileGlob, maxResults, cwd }) => {
115
+ const result = await tools_1.searchCodeTool.execute({
116
+ pattern,
117
+ fileGlob,
118
+ maxResults,
119
+ cwd: cwd || this.options.repoPath
120
+ }, { toolCallId: '', messages: [] });
121
+ return {
122
+ content: [{
123
+ type: 'text',
124
+ text: JSON.stringify(result, null, 2)
125
+ }]
126
+ };
127
+ });
128
+ // buildSemanticContext tool - higher-level context building
129
+ this.server.registerTool('buildSemanticContext', {
130
+ description: (0, toolRegistry_1.getToolDescription)('buildSemanticContext'),
131
+ inputSchema: {
132
+ repoPath: zod_1.z.string().describe('Path to the repository'),
133
+ contextType: zod_1.z.enum(['documentation', 'playbook', 'plan', 'compact'])
134
+ .default('compact')
135
+ .describe('Type of context to build'),
136
+ targetFile: zod_1.z.string().optional().describe('Optional target file for focused context'),
137
+ options: zod_1.z.object({
138
+ useLSP: zod_1.z.boolean().optional(),
139
+ maxContextLength: zod_1.z.number().optional(),
140
+ includeDocumentation: zod_1.z.boolean().optional(),
141
+ includeSignatures: zod_1.z.boolean().optional()
142
+ }).optional()
143
+ }
144
+ }, async ({ repoPath, contextType, targetFile, options }) => {
145
+ const isLocalBuilder = !!options;
146
+ const builder = isLocalBuilder
147
+ ? new contextBuilder_1.SemanticContextBuilder(options)
148
+ : this.contextBuilder;
149
+ try {
150
+ let context;
151
+ const resolvedPath = repoPath || this.options.repoPath || '.';
152
+ switch (contextType) {
153
+ case 'documentation':
154
+ context = await builder.buildDocumentationContext(resolvedPath, targetFile);
155
+ break;
156
+ case 'playbook':
157
+ context = await builder.buildPlaybookContext(resolvedPath, targetFile || 'generic');
158
+ break;
159
+ case 'plan':
160
+ context = await builder.buildPlanContext(resolvedPath, targetFile);
161
+ break;
162
+ case 'compact':
163
+ default:
164
+ context = await builder.buildCompactContext(resolvedPath);
165
+ break;
166
+ }
167
+ return {
168
+ content: [{
169
+ type: 'text',
170
+ text: context
171
+ }]
172
+ };
173
+ }
174
+ finally {
175
+ if (isLocalBuilder) {
176
+ await builder.shutdown();
177
+ }
178
+ }
179
+ });
180
+ // checkScaffolding tool
181
+ this.server.registerTool('checkScaffolding', {
182
+ description: (0, toolRegistry_1.getToolDescription)('checkScaffolding'),
183
+ inputSchema: {
184
+ repoPath: zod_1.z.string().optional().describe('Repository path to check (defaults to cwd)')
185
+ }
186
+ }, async ({ repoPath }) => {
187
+ const result = await tools_1.checkScaffoldingTool.execute({ repoPath: repoPath || this.options.repoPath }, { toolCallId: '', messages: [] });
188
+ return {
189
+ content: [{
190
+ type: 'text',
191
+ text: JSON.stringify(result, null, 2)
192
+ }]
193
+ };
194
+ });
195
+ // initializeContext tool
196
+ this.server.registerTool('initializeContext', {
197
+ description: (0, toolRegistry_1.getToolDescription)('initializeContext', true),
198
+ inputSchema: {
199
+ repoPath: zod_1.z.string().describe('Repository path to initialize'),
200
+ type: zod_1.z.enum(['docs', 'agents', 'both']).default('both').optional()
201
+ .describe('Type of scaffolding to create'),
202
+ outputDir: zod_1.z.string().optional().describe('Output directory (default: ./.context)'),
203
+ semantic: zod_1.z.boolean().default(true).optional()
204
+ .describe('Enable semantic analysis for richer templates'),
205
+ include: zod_1.z.array(zod_1.z.string()).optional().describe('Include patterns'),
206
+ exclude: zod_1.z.array(zod_1.z.string()).optional().describe('Exclude patterns')
207
+ }
208
+ }, async ({ repoPath, type, outputDir, semantic, include, exclude }) => {
209
+ const result = await tools_1.initializeContextTool.execute({
210
+ repoPath: repoPath || this.options.repoPath || process.cwd(),
211
+ type,
212
+ outputDir,
213
+ semantic,
214
+ include,
215
+ exclude
216
+ }, { toolCallId: '', messages: [] });
217
+ return {
218
+ content: [{
219
+ type: 'text',
220
+ text: JSON.stringify(result, null, 2)
221
+ }]
222
+ };
223
+ });
224
+ // scaffoldPlan tool
225
+ this.server.registerTool('scaffoldPlan', {
226
+ description: (0, toolRegistry_1.getToolDescription)('scaffoldPlan'),
227
+ inputSchema: {
228
+ planName: zod_1.z.string().describe('Name of the plan (will be slugified)'),
229
+ repoPath: zod_1.z.string().optional().describe('Repository path'),
230
+ outputDir: zod_1.z.string().optional().describe('Output directory'),
231
+ title: zod_1.z.string().optional().describe('Plan title (defaults to formatted planName)'),
232
+ summary: zod_1.z.string().optional().describe('Plan summary/goal'),
233
+ semantic: zod_1.z.boolean().default(true).optional().describe('Enable semantic analysis')
234
+ }
235
+ }, async ({ planName, repoPath, outputDir, title, summary, semantic }) => {
236
+ const result = await tools_1.scaffoldPlanTool.execute({
237
+ planName,
238
+ repoPath: repoPath || this.options.repoPath || process.cwd(),
239
+ outputDir,
240
+ title,
241
+ summary,
242
+ semantic
243
+ }, { toolCallId: '', messages: [] });
244
+ return {
245
+ content: [{
246
+ type: 'text',
247
+ text: JSON.stringify(result, null, 2)
248
+ }]
249
+ };
250
+ });
251
+ // fillScaffolding tool (with pagination)
252
+ this.server.registerTool('fillScaffolding', {
253
+ description: (0, toolRegistry_1.getToolDescription)('fillScaffolding', true),
254
+ inputSchema: {
255
+ repoPath: zod_1.z.string().describe('Repository path'),
256
+ outputDir: zod_1.z.string().optional().describe('Scaffold directory (default: ./.context)'),
257
+ target: zod_1.z.enum(['docs', 'agents', 'plans', 'all']).default('all').optional()
258
+ .describe('Which scaffolding to fill'),
259
+ offset: zod_1.z.number().optional().describe('Skip first N files (for pagination)'),
260
+ limit: zod_1.z.number().optional().describe('Max files to return (default: 3, use 0 for all)')
261
+ }
262
+ }, async ({ repoPath, outputDir, target, offset, limit }) => {
263
+ const result = await tools_1.fillScaffoldingTool.execute({
264
+ repoPath: repoPath || this.options.repoPath || process.cwd(),
265
+ outputDir,
266
+ target,
267
+ offset,
268
+ limit
269
+ }, { toolCallId: '', messages: [] });
270
+ return {
271
+ content: [{
272
+ type: 'text',
273
+ text: JSON.stringify(result, null, 2)
274
+ }]
275
+ };
276
+ });
277
+ // listFilesToFill tool - lightweight listing without content
278
+ this.server.registerTool('listFilesToFill', {
279
+ description: (0, toolRegistry_1.getToolDescription)('listFilesToFill', true),
280
+ inputSchema: {
281
+ repoPath: zod_1.z.string().describe('Repository path'),
282
+ outputDir: zod_1.z.string().optional().describe('Scaffold directory (default: ./.context)'),
283
+ target: zod_1.z.enum(['docs', 'agents', 'plans', 'all']).default('all').optional()
284
+ .describe('Which scaffolding to list')
285
+ }
286
+ }, async ({ repoPath, outputDir, target }) => {
287
+ const result = await tools_1.listFilesToFillTool.execute({
288
+ repoPath: repoPath || this.options.repoPath || process.cwd(),
289
+ outputDir,
290
+ target
291
+ }, { toolCallId: '', messages: [] });
292
+ return {
293
+ content: [{
294
+ type: 'text',
295
+ text: JSON.stringify(result, null, 2)
296
+ }]
297
+ };
298
+ });
299
+ // fillSingleFile tool - process one file at a time
300
+ this.server.registerTool('fillSingleFile', {
301
+ description: (0, toolRegistry_1.getToolDescription)('fillSingleFile', true),
302
+ inputSchema: {
303
+ repoPath: zod_1.z.string().describe('Repository path'),
304
+ filePath: zod_1.z.string().describe('Absolute path to the scaffold file to fill')
305
+ }
306
+ }, async ({ repoPath, filePath }) => {
307
+ const result = await tools_1.fillSingleFileTool.execute({
308
+ repoPath: repoPath || this.options.repoPath || process.cwd(),
309
+ filePath
310
+ }, { toolCallId: '', messages: [] });
311
+ return {
312
+ content: [{
313
+ type: 'text',
314
+ text: JSON.stringify(result, null, 2)
315
+ }]
316
+ };
317
+ });
318
+ this.log('Registered 12 tools');
319
+ }
320
+ /**
321
+ * Register semantic context resources
322
+ */
323
+ registerResources() {
324
+ const repoPath = this.options.repoPath || process.cwd();
325
+ // Register context resources as templates with URI patterns
326
+ this.server.registerResource('codebase-context', `context://codebase/{contextType}`, {
327
+ description: 'Semantic context for the codebase. Use contextType: documentation, playbook, plan, or compact',
328
+ mimeType: 'text/markdown'
329
+ }, async (uri) => {
330
+ // Extract context type from URI
331
+ const match = uri.pathname.match(/\/([^/]+)$/);
332
+ const contextType = (match?.[1] || 'compact');
333
+ let context;
334
+ switch (contextType) {
335
+ case 'documentation':
336
+ context = await this.contextBuilder.buildDocumentationContext(repoPath);
337
+ break;
338
+ case 'playbook':
339
+ context = await this.contextBuilder.buildPlaybookContext(repoPath, 'generic');
340
+ break;
341
+ case 'plan':
342
+ context = await this.contextBuilder.buildPlanContext(repoPath);
343
+ break;
344
+ case 'compact':
345
+ default:
346
+ context = await this.contextBuilder.buildCompactContext(repoPath);
347
+ break;
348
+ }
349
+ return {
350
+ contents: [{
351
+ uri: uri.href,
352
+ mimeType: 'text/markdown',
353
+ text: context
354
+ }]
355
+ };
356
+ });
357
+ // Register file resource template
358
+ this.server.registerResource('file-content', `file://{path}`, {
359
+ description: 'Read file contents from the repository',
360
+ mimeType: 'text/plain'
361
+ }, async (uri) => {
362
+ const filePath = uri.pathname;
363
+ const result = await tools_1.readFileTool.execute({ filePath }, { toolCallId: '', messages: [] });
364
+ if (!result.success) {
365
+ throw new Error(result.error || 'Failed to read file');
366
+ }
367
+ return {
368
+ contents: [{
369
+ uri: uri.href,
370
+ mimeType: 'text/plain',
371
+ text: result.content || ''
372
+ }]
373
+ };
374
+ });
375
+ this.log('Registered 2 resource templates');
376
+ }
377
+ /**
378
+ * Start the MCP server with stdio transport
379
+ */
380
+ async start() {
381
+ this.transport = new stdio_js_1.StdioServerTransport();
382
+ await this.server.connect(this.transport);
383
+ this.log('MCP Server started on stdio');
384
+ }
385
+ /**
386
+ * Stop the MCP server
387
+ */
388
+ async stop() {
389
+ await this.server.close();
390
+ await this.contextBuilder.shutdown();
391
+ this.log('MCP Server stopped');
392
+ }
393
+ /**
394
+ * Log message to stderr (not stdout, to avoid polluting MCP messages)
395
+ */
396
+ log(message) {
397
+ if (this.options.verbose) {
398
+ process.stderr.write(`[mcp] ${message}\n`);
399
+ }
400
+ }
401
+ }
402
+ exports.AIContextMCPServer = AIContextMCPServer;
403
+ /**
404
+ * Create and start an MCP server
405
+ */
406
+ async function startMCPServer(options = {}) {
407
+ const server = new AIContextMCPServer(options);
408
+ await server.start();
409
+ return server;
410
+ }
411
+ //# sourceMappingURL=mcpServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpServer.js","sourceRoot":"","sources":["../../../src/services/mcp/mcpServer.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ class OpenRouterClient extends baseLLMClient_1.BaseLLMClient {
28
28
  }
29
29
  messages.push({ role: 'user', content: prompt });
30
30
  const response = await this.client.post('/chat/completions', {
31
- model: this.config.model || 'x-ai/grok-4-fast',
31
+ model: this.config.model || 'x-ai/grok-4.1-fast',
32
32
  messages,
33
33
  max_tokens: 4000,
34
34
  temperature: 0.7
@@ -1 +1 @@
1
- {"version":3,"file":"openRouterClient.js","sourceRoot":"","sources":["../../src/services/openRouterClient.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAE7C,mDAAgD;AAEhD,MAAa,gBAAiB,SAAQ,6BAAa;IAIjD,YAAY,MAAwB;QAClC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,eAAK,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,8BAA8B;YACzD,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE;gBAC1C,cAAc,EAAE,kBAAkB;gBAClC,cAAc,EAAE,2BAA2B;gBAC3C,SAAS,EAAE,mBAAmB;aAC/B;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,YAAqB;QACtD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,EAAE,CAAC;YAEpB,IAAI,YAAY,EAAE,CAAC;gBACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAEjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC3D,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,kBAAkB;gBAC9C,QAAQ;gBACR,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,GAAG;aACjB,CAAC,CAAC;YAEH,yBAAyB;YACzB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAErC,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACpG,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CAEF;AA/CD,4CA+CC"}
1
+ {"version":3,"file":"openRouterClient.js","sourceRoot":"","sources":["../../src/services/openRouterClient.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAE7C,mDAAgD;AAEhD,MAAa,gBAAiB,SAAQ,6BAAa;IAIjD,YAAY,MAAwB;QAClC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,eAAK,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,8BAA8B;YACzD,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE;gBAC1C,cAAc,EAAE,kBAAkB;gBAClC,cAAc,EAAE,2BAA2B;gBAC3C,SAAS,EAAE,mBAAmB;aAC/B;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,YAAqB;QACtD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,EAAE,CAAC;YAEpB,IAAI,YAAY,EAAE,CAAC;gBACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAEjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC3D,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,oBAAoB;gBAChD,QAAQ;gBACR,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,GAAG;aACjB,CAAC,CAAC;YAEH,yBAAyB;YACzB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAErC,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACpG,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CAEF;AA/CD,4CA+CC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * CommandRouter - Routes JSON-RPC style commands to appropriate handlers
3
+ */
4
+ import { type BaseRequest, type Response, type Notification } from './protocol';
5
+ export interface CommandRouterOptions {
6
+ /** Default repository path for tools */
7
+ defaultRepoPath?: string;
8
+ /** Callback for sending notifications */
9
+ onNotification?: (notification: Notification) => void;
10
+ }
11
+ export declare class CommandRouter {
12
+ private options;
13
+ private contextBuilder;
14
+ private toolRegistry;
15
+ constructor(options?: CommandRouterOptions);
16
+ /**
17
+ * Build the tool registry from existing tools
18
+ */
19
+ private buildToolRegistry;
20
+ /**
21
+ * Route a request to the appropriate handler
22
+ */
23
+ route(request: BaseRequest): Promise<Response>;
24
+ /**
25
+ * Handle capabilities request
26
+ */
27
+ private handleCapabilities;
28
+ /**
29
+ * Handle tool.list request
30
+ */
31
+ private handleToolList;
32
+ /**
33
+ * Handle tool.call request
34
+ */
35
+ private handleToolCall;
36
+ /**
37
+ * Handle context.build request
38
+ */
39
+ private handleContextBuild;
40
+ /**
41
+ * Handle agent.run request
42
+ */
43
+ private handleAgentRun;
44
+ /**
45
+ * Send a notification if callback is registered
46
+ */
47
+ private notify;
48
+ /**
49
+ * Cleanup resources
50
+ */
51
+ shutdown(): Promise<void>;
52
+ }
53
+ //# sourceMappingURL=commandRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandRouter.d.ts","sourceRoot":"","sources":["../../../src/services/passthrough/commandRouter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,YAAY,EAUlB,MAAM,YAAY,CAAC;AAgFpB,MAAM,WAAW,oBAAoB;IACnC,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAC;CACvD;AAWD,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,YAAY,CAAyB;gBAEjC,OAAO,GAAE,oBAAyB;IAM9C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IA+DpD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;YACW,cAAc;IAgC5B;;OAEG;YACW,kBAAkB;IA6ChC;;OAEG;YACW,cAAc;IAiH5B;;OAEG;IACH,OAAO,CAAC,MAAM;IAMd;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC"}