@ai-coders/context 0.3.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/README.md +269 -29
  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/agentConfig.d.ts.map +1 -1
  55. package/dist/generators/agents/agentConfig.js +42 -0
  56. package/dist/generators/agents/agentConfig.js.map +1 -1
  57. package/dist/generators/agents/agentGenerator.d.ts +8 -2
  58. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  59. package/dist/generators/agents/agentGenerator.js +112 -54
  60. package/dist/generators/agents/agentGenerator.js.map +1 -1
  61. package/dist/generators/agents/agentTypes.d.ts +1 -1
  62. package/dist/generators/agents/agentTypes.d.ts.map +1 -1
  63. package/dist/generators/agents/agentTypes.js +4 -1
  64. package/dist/generators/agents/agentTypes.js.map +1 -1
  65. package/dist/generators/agents/templates/indexTemplate.d.ts.map +1 -1
  66. package/dist/generators/agents/templates/indexTemplate.js +2 -1
  67. package/dist/generators/agents/templates/indexTemplate.js.map +1 -1
  68. package/dist/generators/agents/templates/playbookTemplate.d.ts +3 -2
  69. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
  70. package/dist/generators/agents/templates/playbookTemplate.js +144 -10
  71. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
  72. package/dist/generators/agents/templates/types.d.ts +9 -1
  73. package/dist/generators/agents/templates/types.d.ts.map +1 -1
  74. package/dist/generators/documentation/documentationGenerator.d.ts +5 -1
  75. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  76. package/dist/generators/documentation/documentationGenerator.js +106 -18
  77. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  78. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -1
  79. package/dist/generators/documentation/guideRegistry.js +0 -8
  80. package/dist/generators/documentation/guideRegistry.js.map +1 -1
  81. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts +2 -0
  82. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +1 -0
  83. package/dist/generators/documentation/templates/apiReferenceTemplate.js +469 -0
  84. package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +1 -0
  85. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
  86. package/dist/generators/documentation/templates/architectureTemplate.js +175 -41
  87. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
  88. package/dist/generators/documentation/templates/common.d.ts +28 -1
  89. package/dist/generators/documentation/templates/common.d.ts.map +1 -1
  90. package/dist/generators/documentation/templates/common.js +130 -10
  91. package/dist/generators/documentation/templates/common.js.map +1 -1
  92. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -1
  93. package/dist/generators/documentation/templates/dataFlowTemplate.js +98 -33
  94. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -1
  95. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -1
  96. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +2 -34
  97. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -1
  98. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +1 -1
  99. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -1
  100. package/dist/generators/documentation/templates/glossaryTemplate.js +51 -37
  101. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -1
  102. package/dist/generators/documentation/templates/index.d.ts +4 -0
  103. package/dist/generators/documentation/templates/index.d.ts.map +1 -1
  104. package/dist/generators/documentation/templates/index.js +9 -1
  105. package/dist/generators/documentation/templates/index.js.map +1 -1
  106. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -1
  107. package/dist/generators/documentation/templates/indexTemplate.js +1 -32
  108. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -1
  109. package/dist/generators/documentation/templates/migrationTemplate.d.ts +2 -0
  110. package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +1 -0
  111. package/dist/generators/documentation/templates/migrationTemplate.js +400 -0
  112. package/dist/generators/documentation/templates/migrationTemplate.js.map +1 -0
  113. package/dist/generators/documentation/templates/onboardingTemplate.d.ts +2 -0
  114. package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +1 -0
  115. package/dist/generators/documentation/templates/onboardingTemplate.js +409 -0
  116. package/dist/generators/documentation/templates/onboardingTemplate.js.map +1 -0
  117. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -1
  118. package/dist/generators/documentation/templates/projectOverviewTemplate.js +97 -38
  119. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -1
  120. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -1
  121. package/dist/generators/documentation/templates/securityTemplate.js +1 -32
  122. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -1
  123. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -1
  124. package/dist/generators/documentation/templates/testingTemplate.js +1 -33
  125. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -1
  126. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -1
  127. package/dist/generators/documentation/templates/toolingTemplate.js +2 -33
  128. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -1
  129. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts +2 -0
  130. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +1 -0
  131. package/dist/generators/documentation/templates/troubleshootingTemplate.js +270 -0
  132. package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +1 -0
  133. package/dist/generators/documentation/templates/types.d.ts +2 -1
  134. package/dist/generators/documentation/templates/types.d.ts.map +1 -1
  135. package/dist/generators/plans/planGenerator.d.ts +4 -0
  136. package/dist/generators/plans/planGenerator.d.ts.map +1 -1
  137. package/dist/generators/plans/planGenerator.js +30 -2
  138. package/dist/generators/plans/planGenerator.js.map +1 -1
  139. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -1
  140. package/dist/generators/plans/templates/indexTemplate.js +5 -13
  141. package/dist/generators/plans/templates/indexTemplate.js.map +1 -1
  142. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
  143. package/dist/generators/plans/templates/planTemplate.js +123 -30
  144. package/dist/generators/plans/templates/planTemplate.js.map +1 -1
  145. package/dist/generators/plans/templates/types.d.ts +10 -0
  146. package/dist/generators/plans/templates/types.d.ts.map +1 -1
  147. package/dist/generators/shared/generatorUtils.d.ts +1 -1
  148. package/dist/generators/shared/generatorUtils.d.ts.map +1 -1
  149. package/dist/generators/shared/generatorUtils.js +7 -10
  150. package/dist/generators/shared/generatorUtils.js.map +1 -1
  151. package/dist/index.d.ts +2 -2
  152. package/dist/index.d.ts.map +1 -1
  153. package/dist/index.js +459 -1073
  154. package/dist/index.js.map +1 -1
  155. package/dist/prompts/defaults.d.ts +2 -2
  156. package/dist/prompts/defaults.d.ts.map +1 -1
  157. package/dist/prompts/defaults.js +26 -56
  158. package/dist/prompts/defaults.js.map +1 -1
  159. package/dist/services/ai/agentEvents.d.ts +45 -0
  160. package/dist/services/ai/agentEvents.d.ts.map +1 -0
  161. package/dist/services/ai/agentEvents.js +61 -0
  162. package/dist/services/ai/agentEvents.js.map +1 -0
  163. package/dist/services/ai/agents/documentationAgent.d.ts +53 -0
  164. package/dist/services/ai/agents/documentationAgent.d.ts.map +1 -0
  165. package/dist/services/ai/agents/documentationAgent.js +243 -0
  166. package/dist/services/ai/agents/documentationAgent.js.map +1 -0
  167. package/dist/services/ai/agents/index.d.ts +7 -0
  168. package/dist/services/ai/agents/index.d.ts.map +1 -0
  169. package/dist/services/ai/agents/index.js +10 -0
  170. package/dist/services/ai/agents/index.js.map +1 -0
  171. package/dist/services/ai/agents/planAgent.d.ts +68 -0
  172. package/dist/services/ai/agents/planAgent.d.ts.map +1 -0
  173. package/dist/services/ai/agents/planAgent.js +389 -0
  174. package/dist/services/ai/agents/planAgent.js.map +1 -0
  175. package/dist/services/ai/agents/playbookAgent.d.ts +54 -0
  176. package/dist/services/ai/agents/playbookAgent.d.ts.map +1 -0
  177. package/dist/services/ai/agents/playbookAgent.js +265 -0
  178. package/dist/services/ai/agents/playbookAgent.js.map +1 -0
  179. package/dist/services/ai/aiSdkClient.d.ts +67 -0
  180. package/dist/services/ai/aiSdkClient.d.ts.map +1 -0
  181. package/dist/services/ai/aiSdkClient.js +143 -0
  182. package/dist/services/ai/aiSdkClient.js.map +1 -0
  183. package/dist/services/ai/index.d.ts +7 -0
  184. package/dist/services/ai/index.d.ts.map +1 -0
  185. package/dist/services/ai/index.js +49 -0
  186. package/dist/services/ai/index.js.map +1 -0
  187. package/dist/services/ai/providerFactory.d.ts +35 -0
  188. package/dist/services/ai/providerFactory.d.ts.map +1 -0
  189. package/dist/services/ai/providerFactory.js +107 -0
  190. package/dist/services/ai/providerFactory.js.map +1 -0
  191. package/dist/services/ai/schemas.d.ts +331 -0
  192. package/dist/services/ai/schemas.d.ts.map +1 -0
  193. package/dist/services/ai/schemas.js +236 -0
  194. package/dist/services/ai/schemas.js.map +1 -0
  195. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +33 -0
  196. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +1 -0
  197. package/dist/services/ai/tools/analyzeSymbolsTool.js +57 -0
  198. package/dist/services/ai/tools/analyzeSymbolsTool.js.map +1 -0
  199. package/dist/services/ai/tools/checkScaffoldingTool.d.ts +18 -0
  200. package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -0
  201. package/dist/services/ai/tools/checkScaffoldingTool.js +86 -0
  202. package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -0
  203. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +38 -0
  204. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -0
  205. package/dist/services/ai/tools/fillScaffoldingTool.js +259 -0
  206. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -0
  207. package/dist/services/ai/tools/getFileStructureTool.d.ts +29 -0
  208. package/dist/services/ai/tools/getFileStructureTool.d.ts.map +1 -0
  209. package/dist/services/ai/tools/getFileStructureTool.js +48 -0
  210. package/dist/services/ai/tools/getFileStructureTool.js.map +1 -0
  211. package/dist/services/ai/tools/index.d.ts +20 -0
  212. package/dist/services/ai/tools/index.d.ts.map +1 -0
  213. package/dist/services/ai/tools/index.js +62 -0
  214. package/dist/services/ai/tools/index.js.map +1 -0
  215. package/dist/services/ai/tools/initializeContextTool.d.ts +25 -0
  216. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -0
  217. package/dist/services/ai/tools/initializeContextTool.js +121 -0
  218. package/dist/services/ai/tools/initializeContextTool.js.map +1 -0
  219. package/dist/services/ai/tools/listFilesTool.d.ts +18 -0
  220. package/dist/services/ai/tools/listFilesTool.d.ts.map +1 -0
  221. package/dist/services/ai/tools/listFilesTool.js +34 -0
  222. package/dist/services/ai/tools/listFilesTool.js.map +1 -0
  223. package/dist/services/ai/tools/readFileTool.d.ts +17 -0
  224. package/dist/services/ai/tools/readFileTool.d.ts.map +1 -0
  225. package/dist/services/ai/tools/readFileTool.js +63 -0
  226. package/dist/services/ai/tools/readFileTool.js.map +1 -0
  227. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +19 -0
  228. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -0
  229. package/dist/services/ai/tools/scaffoldPlanTool.js +81 -0
  230. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -0
  231. package/dist/services/ai/tools/searchCodeTool.d.ts +25 -0
  232. package/dist/services/ai/tools/searchCodeTool.d.ts.map +1 -0
  233. package/dist/services/ai/tools/searchCodeTool.js +96 -0
  234. package/dist/services/ai/tools/searchCodeTool.js.map +1 -0
  235. package/dist/services/baseLLMClient.d.ts +3 -3
  236. package/dist/services/baseLLMClient.d.ts.map +1 -1
  237. package/dist/services/baseLLMClient.js +44 -5
  238. package/dist/services/baseLLMClient.js.map +1 -1
  239. package/dist/services/fill/fillService.d.ts +11 -5
  240. package/dist/services/fill/fillService.d.ts.map +1 -1
  241. package/dist/services/fill/fillService.js +152 -88
  242. package/dist/services/fill/fillService.js.map +1 -1
  243. package/dist/services/init/initService.d.ts +3 -2
  244. package/dist/services/init/initService.d.ts.map +1 -1
  245. package/dist/services/init/initService.js +54 -19
  246. package/dist/services/init/initService.js.map +1 -1
  247. package/dist/services/llmClientFactory.d.ts +37 -9
  248. package/dist/services/llmClientFactory.d.ts.map +1 -1
  249. package/dist/services/llmClientFactory.js +54 -94
  250. package/dist/services/llmClientFactory.js.map +1 -1
  251. package/dist/services/mcp/index.d.ts +2 -0
  252. package/dist/services/mcp/index.d.ts.map +1 -0
  253. package/dist/services/mcp/index.js +7 -0
  254. package/dist/services/mcp/index.js.map +1 -0
  255. package/dist/services/mcp/mcpServer.d.ts +45 -0
  256. package/dist/services/mcp/mcpServer.d.ts.map +1 -0
  257. package/dist/services/mcp/mcpServer.js +371 -0
  258. package/dist/services/mcp/mcpServer.js.map +1 -0
  259. package/dist/services/openRouterClient.d.ts +0 -3
  260. package/dist/services/openRouterClient.d.ts.map +1 -1
  261. package/dist/services/openRouterClient.js +2 -49
  262. package/dist/services/openRouterClient.js.map +1 -1
  263. package/dist/services/passthrough/commandRouter.d.ts +53 -0
  264. package/dist/services/passthrough/commandRouter.d.ts.map +1 -0
  265. package/dist/services/passthrough/commandRouter.js +349 -0
  266. package/dist/services/passthrough/commandRouter.js.map +1 -0
  267. package/dist/services/passthrough/index.d.ts +7 -0
  268. package/dist/services/passthrough/index.d.ts.map +1 -0
  269. package/dist/services/passthrough/index.js +23 -0
  270. package/dist/services/passthrough/index.js.map +1 -0
  271. package/dist/services/passthrough/protocol.d.ts +269 -0
  272. package/dist/services/passthrough/protocol.d.ts.map +1 -0
  273. package/dist/services/passthrough/protocol.js +151 -0
  274. package/dist/services/passthrough/protocol.js.map +1 -0
  275. package/dist/services/passthrough/stdinReader.d.ts +42 -0
  276. package/dist/services/passthrough/stdinReader.d.ts.map +1 -0
  277. package/dist/services/passthrough/stdinReader.js +111 -0
  278. package/dist/services/passthrough/stdinReader.js.map +1 -0
  279. package/dist/services/plan/planService.d.ts +5 -5
  280. package/dist/services/plan/planService.d.ts.map +1 -1
  281. package/dist/services/plan/planService.js +52 -53
  282. package/dist/services/plan/planService.js.map +1 -1
  283. package/dist/services/semantic/codebaseAnalyzer.d.ts +40 -0
  284. package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -0
  285. package/dist/services/semantic/codebaseAnalyzer.js +540 -0
  286. package/dist/services/semantic/codebaseAnalyzer.js.map +1 -0
  287. package/dist/services/semantic/contextBuilder.d.ts +79 -0
  288. package/dist/services/semantic/contextBuilder.d.ts.map +1 -0
  289. package/dist/services/semantic/contextBuilder.js +538 -0
  290. package/dist/services/semantic/contextBuilder.js.map +1 -0
  291. package/dist/services/semantic/index.d.ts +12 -0
  292. package/dist/services/semantic/index.d.ts.map +1 -0
  293. package/dist/services/semantic/index.js +33 -0
  294. package/dist/services/semantic/index.js.map +1 -0
  295. package/dist/services/semantic/lsp/index.d.ts +2 -0
  296. package/dist/services/semantic/lsp/index.d.ts.map +1 -0
  297. package/dist/services/semantic/lsp/index.js +6 -0
  298. package/dist/services/semantic/lsp/index.js.map +1 -0
  299. package/dist/services/semantic/lsp/lspLayer.d.ts +32 -0
  300. package/dist/services/semantic/lsp/lspLayer.d.ts.map +1 -0
  301. package/dist/services/semantic/lsp/lspLayer.js +378 -0
  302. package/dist/services/semantic/lsp/lspLayer.js.map +1 -0
  303. package/dist/services/semantic/treeSitter/index.d.ts +2 -0
  304. package/dist/services/semantic/treeSitter/index.d.ts.map +1 -0
  305. package/dist/services/semantic/treeSitter/index.js +6 -0
  306. package/dist/services/semantic/treeSitter/index.js.map +1 -0
  307. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts +37 -0
  308. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts.map +1 -0
  309. package/dist/services/semantic/treeSitter/treeSitterLayer.js +518 -0
  310. package/dist/services/semantic/treeSitter/treeSitterLayer.js.map +1 -0
  311. package/dist/services/semantic/types.d.ts +122 -0
  312. package/dist/services/semantic/types.d.ts.map +1 -0
  313. package/dist/services/semantic/types.js +31 -0
  314. package/dist/services/semantic/types.js.map +1 -0
  315. package/dist/services/serve/index.d.ts +2 -0
  316. package/dist/services/serve/index.d.ts.map +1 -0
  317. package/dist/services/serve/index.js +6 -0
  318. package/dist/services/serve/index.js.map +1 -0
  319. package/dist/services/serve/serveService.d.ts +38 -0
  320. package/dist/services/serve/serveService.d.ts.map +1 -0
  321. package/dist/services/serve/serveService.js +99 -0
  322. package/dist/services/serve/serveService.js.map +1 -0
  323. package/dist/services/shared/llmConfig.d.ts +19 -3
  324. package/dist/services/shared/llmConfig.d.ts.map +1 -1
  325. package/dist/services/shared/llmConfig.js +44 -57
  326. package/dist/services/shared/llmConfig.js.map +1 -1
  327. package/dist/services/sync/index.d.ts +6 -0
  328. package/dist/services/sync/index.d.ts.map +1 -0
  329. package/dist/services/sync/index.js +16 -0
  330. package/dist/services/sync/index.js.map +1 -0
  331. package/dist/services/sync/markdownReferenceHandler.d.ts +3 -0
  332. package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -0
  333. package/dist/services/sync/markdownReferenceHandler.js +133 -0
  334. package/dist/services/sync/markdownReferenceHandler.js.map +1 -0
  335. package/dist/services/sync/presets.d.ts +6 -0
  336. package/dist/services/sync/presets.d.ts.map +1 -0
  337. package/dist/services/sync/presets.js +49 -0
  338. package/dist/services/sync/presets.js.map +1 -0
  339. package/dist/services/sync/symlinkHandler.d.ts +7 -0
  340. package/dist/services/sync/symlinkHandler.d.ts.map +1 -0
  341. package/dist/services/sync/symlinkHandler.js +129 -0
  342. package/dist/services/sync/symlinkHandler.js.map +1 -0
  343. package/dist/services/sync/syncService.d.ts +15 -0
  344. package/dist/services/sync/syncService.d.ts.map +1 -0
  345. package/dist/services/sync/syncService.js +222 -0
  346. package/dist/services/sync/syncService.js.map +1 -0
  347. package/dist/services/sync/types.d.ts +62 -0
  348. package/dist/services/sync/types.d.ts.map +1 -0
  349. package/dist/services/sync/types.js +3 -0
  350. package/dist/services/sync/types.js.map +1 -0
  351. package/dist/types.d.ts +8 -2
  352. package/dist/types.d.ts.map +1 -1
  353. package/dist/utils/cliUI.d.ts +33 -0
  354. package/dist/utils/cliUI.d.ts.map +1 -1
  355. package/dist/utils/cliUI.js +157 -107
  356. package/dist/utils/cliUI.js.map +1 -1
  357. package/dist/utils/contentSanitizer.d.ts +42 -0
  358. package/dist/utils/contentSanitizer.d.ts.map +1 -0
  359. package/dist/utils/contentSanitizer.js +238 -0
  360. package/dist/utils/contentSanitizer.js.map +1 -0
  361. package/dist/utils/fileMapper.d.ts +1 -1
  362. package/dist/utils/fileMapper.d.ts.map +1 -1
  363. package/dist/utils/fileMapper.js +40 -19
  364. package/dist/utils/fileMapper.js.map +1 -1
  365. package/dist/utils/gitService.d.ts.map +1 -1
  366. package/dist/utils/gitService.js +12 -14
  367. package/dist/utils/gitService.js.map +1 -1
  368. package/dist/utils/i18n.d.ts +96 -43
  369. package/dist/utils/i18n.d.ts.map +1 -1
  370. package/dist/utils/i18n.js +194 -88
  371. package/dist/utils/i18n.js.map +1 -1
  372. package/dist/utils/prompts/configSummary.d.ts +7 -0
  373. package/dist/utils/prompts/configSummary.d.ts.map +1 -0
  374. package/dist/utils/prompts/configSummary.js +63 -0
  375. package/dist/utils/prompts/configSummary.js.map +1 -0
  376. package/dist/utils/prompts/index.d.ts +22 -0
  377. package/dist/utils/prompts/index.d.ts.map +1 -0
  378. package/dist/utils/prompts/index.js +122 -0
  379. package/dist/utils/prompts/index.js.map +1 -0
  380. package/dist/utils/prompts/llmPrompts.d.ts +11 -0
  381. package/dist/utils/prompts/llmPrompts.d.ts.map +1 -0
  382. package/dist/utils/prompts/llmPrompts.js +96 -0
  383. package/dist/utils/prompts/llmPrompts.js.map +1 -0
  384. package/dist/utils/prompts/smartDefaults.d.ts +15 -0
  385. package/dist/utils/prompts/smartDefaults.d.ts.map +1 -0
  386. package/dist/utils/prompts/smartDefaults.js +105 -0
  387. package/dist/utils/prompts/smartDefaults.js.map +1 -0
  388. package/dist/utils/prompts/types.d.ts +38 -0
  389. package/dist/utils/prompts/types.d.ts.map +1 -0
  390. package/dist/utils/prompts/types.js +3 -0
  391. package/dist/utils/prompts/types.js.map +1 -0
  392. package/dist/utils/theme.d.ts +66 -0
  393. package/dist/utils/theme.d.ts.map +1 -0
  394. package/dist/utils/theme.js +93 -0
  395. package/dist/utils/theme.js.map +1 -0
  396. package/dist/version.d.ts +8 -0
  397. package/dist/version.d.ts.map +1 -0
  398. package/dist/version.js +15 -0
  399. package/dist/version.js.map +1 -0
  400. package/package.json +18 -11
  401. package/prompts/update_plan_prompt.md +4 -5
  402. package/prompts/update_scaffold_prompt.md +14 -35
  403. package/dist/commands/shared/agents.d.ts +0 -2
  404. package/dist/commands/shared/agents.d.ts.map +0 -1
  405. package/dist/commands/shared/agents.js +0 -15
  406. package/dist/commands/shared/agents.js.map +0 -1
  407. package/dist/commands/shared/selection.d.ts +0 -12
  408. package/dist/commands/shared/selection.d.ts.map +0 -1
  409. package/dist/commands/shared/selection.js +0 -95
  410. package/dist/commands/shared/selection.js.map +0 -1
  411. package/dist/generators/agents/contextUtils.d.ts +0 -8
  412. package/dist/generators/agents/contextUtils.d.ts.map +0 -1
  413. package/dist/generators/agents/contextUtils.js +0 -15
  414. package/dist/generators/agents/contextUtils.js.map +0 -1
  415. package/dist/generators/agents/promptFormatter.d.ts +0 -9
  416. package/dist/generators/agents/promptFormatter.d.ts.map +0 -1
  417. package/dist/generators/agents/promptFormatter.js +0 -84
  418. package/dist/generators/agents/promptFormatter.js.map +0 -1
  419. package/dist/generators/analyzers/codebaseAnalyzer.d.ts +0 -45
  420. package/dist/generators/analyzers/codebaseAnalyzer.d.ts.map +0 -1
  421. package/dist/generators/analyzers/codebaseAnalyzer.js +0 -293
  422. package/dist/generators/analyzers/codebaseAnalyzer.js.map +0 -1
  423. package/dist/generators/analyzers/index.d.ts +0 -3
  424. package/dist/generators/analyzers/index.d.ts.map +0 -1
  425. package/dist/generators/analyzers/index.js +0 -6
  426. package/dist/generators/analyzers/index.js.map +0 -1
  427. package/dist/generators/documentation/documentationTemplates.d.ts +0 -21
  428. package/dist/generators/documentation/documentationTemplates.d.ts.map +0 -1
  429. package/dist/generators/documentation/documentationTemplates.js +0 -359
  430. package/dist/generators/documentation/documentationTemplates.js.map +0 -1
  431. package/dist/generators/documentation/documentationTypes.d.ts +0 -11
  432. package/dist/generators/documentation/documentationTypes.d.ts.map +0 -1
  433. package/dist/generators/documentation/documentationTypes.js +0 -22
  434. package/dist/generators/documentation/documentationTypes.js.map +0 -1
  435. package/dist/generators/documentation/documentationUtils.d.ts +0 -7
  436. package/dist/generators/documentation/documentationUtils.d.ts.map +0 -1
  437. package/dist/generators/documentation/documentationUtils.js +0 -28
  438. package/dist/generators/documentation/documentationUtils.js.map +0 -1
  439. package/dist/generators/documentation/incrementalDocumentationGenerator.d.ts +0 -33
  440. package/dist/generators/documentation/incrementalDocumentationGenerator.d.ts.map +0 -1
  441. package/dist/generators/documentation/incrementalDocumentationGenerator.js +0 -400
  442. package/dist/generators/documentation/incrementalDocumentationGenerator.js.map +0 -1
  443. package/dist/generators/documentation/templates/frontMatter.d.ts +0 -11
  444. package/dist/generators/documentation/templates/frontMatter.d.ts.map +0 -1
  445. package/dist/generators/documentation/templates/frontMatter.js +0 -29
  446. package/dist/generators/documentation/templates/frontMatter.js.map +0 -1
  447. package/dist/generators/documentation/templates.d.ts +0 -31
  448. package/dist/generators/documentation/templates.d.ts.map +0 -1
  449. package/dist/generators/documentation/templates.js +0 -566
  450. package/dist/generators/documentation/templates.js.map +0 -1
  451. package/dist/generators/guidelines/agentIntegration.d.ts +0 -43
  452. package/dist/generators/guidelines/agentIntegration.d.ts.map +0 -1
  453. package/dist/generators/guidelines/agentIntegration.js +0 -157
  454. package/dist/generators/guidelines/agentIntegration.js.map +0 -1
  455. package/dist/generators/guidelines/guidelineTypes.d.ts +0 -40
  456. package/dist/generators/guidelines/guidelineTypes.d.ts.map +0 -1
  457. package/dist/generators/guidelines/guidelineTypes.js +0 -144
  458. package/dist/generators/guidelines/guidelineTypes.js.map +0 -1
  459. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts +0 -30
  460. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts.map +0 -1
  461. package/dist/generators/guidelines/guidelinesAnalyzer.js +0 -263
  462. package/dist/generators/guidelines/guidelinesAnalyzer.js.map +0 -1
  463. package/dist/generators/guidelines/guidelinesGenerator.d.ts +0 -30
  464. package/dist/generators/guidelines/guidelinesGenerator.d.ts.map +0 -1
  465. package/dist/generators/guidelines/guidelinesGenerator.js +0 -249
  466. package/dist/generators/guidelines/guidelinesGenerator.js.map +0 -1
  467. package/dist/generators/guidelines/guidelinesTemplates.d.ts +0 -23
  468. package/dist/generators/guidelines/guidelinesTemplates.d.ts.map +0 -1
  469. package/dist/generators/guidelines/guidelinesTemplates.js +0 -304
  470. package/dist/generators/guidelines/guidelinesTemplates.js.map +0 -1
  471. package/dist/generators/guidelines/index.d.ts +0 -6
  472. package/dist/generators/guidelines/index.d.ts.map +0 -1
  473. package/dist/generators/guidelines/index.js +0 -16
  474. package/dist/generators/guidelines/index.js.map +0 -1
  475. package/dist/generators/moduleGrouper.d.ts +0 -14
  476. package/dist/generators/moduleGrouper.d.ts.map +0 -1
  477. package/dist/generators/moduleGrouper.js +0 -82
  478. package/dist/generators/moduleGrouper.js.map +0 -1
  479. package/dist/generators/projectAnalyzer.d.ts +0 -14
  480. package/dist/generators/projectAnalyzer.d.ts.map +0 -1
  481. package/dist/generators/projectAnalyzer.js +0 -217
  482. package/dist/generators/projectAnalyzer.js.map +0 -1
  483. package/dist/services/anthropicClient.d.ts +0 -12
  484. package/dist/services/anthropicClient.d.ts.map +0 -1
  485. package/dist/services/anthropicClient.js +0 -98
  486. package/dist/services/anthropicClient.js.map +0 -1
  487. package/dist/services/changeAnalyzer.d.ts +0 -44
  488. package/dist/services/changeAnalyzer.d.ts.map +0 -1
  489. package/dist/services/changeAnalyzer.js +0 -344
  490. package/dist/services/changeAnalyzer.js.map +0 -1
  491. package/dist/services/geminiClient.d.ts +0 -12
  492. package/dist/services/geminiClient.d.ts.map +0 -1
  493. package/dist/services/geminiClient.js +0 -96
  494. package/dist/services/geminiClient.js.map +0 -1
  495. package/dist/services/grokClient.d.ts +0 -12
  496. package/dist/services/grokClient.d.ts.map +0 -1
  497. package/dist/services/grokClient.js +0 -101
  498. package/dist/services/grokClient.js.map +0 -1
  499. package/dist/services/openaiClient.d.ts +0 -12
  500. package/dist/services/openaiClient.d.ts.map +0 -1
  501. package/dist/services/openaiClient.js +0 -98
  502. package/dist/services/openaiClient.js.map +0 -1
  503. package/dist/utils/interactiveMode.d.ts +0 -21
  504. package/dist/utils/interactiveMode.d.ts.map +0 -1
  505. package/dist/utils/interactiveMode.js +0 -737
  506. package/dist/utils/interactiveMode.js.map +0 -1
  507. package/dist/utils/pricing.d.ts +0 -14
  508. package/dist/utils/pricing.d.ts.map +0 -1
  509. package/dist/utils/pricing.js +0 -115
  510. package/dist/utils/pricing.js.map +0 -1
  511. package/dist/utils/tokenEstimator.d.ts +0 -28
  512. package/dist/utils/tokenEstimator.d.ts.map +0 -1
  513. package/dist/utils/tokenEstimator.js +0 -134
  514. package/dist/utils/tokenEstimator.js.map +0 -1
@@ -0,0 +1,265 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlaybookAgent = void 0;
4
+ const ai_1 = require("ai");
5
+ const providerFactory_1 = require("../providerFactory");
6
+ const tools_1 = require("../tools");
7
+ const schemas_1 = require("../schemas");
8
+ const agentEvents_1 = require("../agentEvents");
9
+ const semantic_1 = require("../../semantic");
10
+ const contentSanitizer_1 = require("../../../utils/contentSanitizer");
11
+ const SYSTEM_PROMPT = `You are an expert at creating AI agent playbooks for software development.
12
+
13
+ You have access to code analysis tools. Use them to understand the codebase before generating the playbook.
14
+
15
+ A good playbook includes:
16
+ 1. Clear understanding of what files/areas the agent should focus on
17
+ 2. Specific workflows and steps for common tasks
18
+ 3. Best practices derived from the actual codebase
19
+ 4. Relevant code patterns and conventions
20
+ 5. Key files and their purposes
21
+
22
+ Use the tools to discover:
23
+ - Relevant source files for the agent type
24
+ - Test files and testing patterns
25
+ - Configuration files
26
+ - Existing documentation
27
+ - Code patterns and conventions
28
+
29
+ IMPORTANT OUTPUT FORMAT:
30
+ - Output ONLY the final playbook content in Markdown format
31
+ - Do NOT include your reasoning, planning, or analysis process
32
+ - Do NOT start with phrases like "I will...", "Let me...", "First, I need to..."
33
+ - Begin directly with the playbook title or content structure
34
+ - Your response will be saved directly to a .md file`;
35
+ const AGENT_TYPE_FOCUS = {
36
+ 'code-reviewer': ['**/*.ts', '**/*.tsx', '.eslintrc*', 'tsconfig.json'],
37
+ 'bug-fixer': ['**/*.ts', '**/*.test.ts', '**/error*', '**/exception*'],
38
+ 'feature-developer': ['src/**/*', 'package.json', 'README.md'],
39
+ 'refactoring-specialist': ['src/**/*.ts', 'tsconfig.json', '.eslintrc*'],
40
+ 'test-writer': ['**/*.test.ts', '**/*.spec.ts', 'jest.config*', 'vitest.config*'],
41
+ 'documentation-writer': ['**/*.md', 'docs/**/*', 'README.md', 'src/**/*.ts'],
42
+ 'performance-optimizer': ['**/*.ts', 'webpack.config*', 'package.json'],
43
+ 'security-auditor': ['**/*.ts', '.env*', 'package.json', '**/auth*', '**/security*'],
44
+ 'backend-specialist': ['src/services/**/*', 'src/api/**/*', 'server/**/*'],
45
+ 'frontend-specialist': ['src/components/**/*', 'src/pages/**/*', '**/*.tsx', '**/*.css'],
46
+ 'architect-specialist': ['src/**/*', 'package.json', 'tsconfig.json', 'docs/**/*'],
47
+ 'devops-specialist': ['Dockerfile*', 'docker-compose*', '.github/**/*', 'ci/**/*'],
48
+ 'database-specialist': ['**/models/**/*', '**/migrations/**/*', '**/schema*', 'prisma/**/*'],
49
+ 'mobile-specialist': ['**/*.tsx', 'app/**/*', 'expo*', 'react-native*']
50
+ };
51
+ class PlaybookAgent {
52
+ constructor(config) {
53
+ this.config = config;
54
+ this.providerResult = (0, providerFactory_1.createProvider)(config);
55
+ this.tools = (0, tools_1.getCodeAnalysisTools)();
56
+ }
57
+ /**
58
+ * Generate a playbook using tools for context gathering
59
+ */
60
+ async generatePlaybook(options) {
61
+ const { repoPath, agentType, existingContext, maxSteps = 12, maxOutputTokens = 8000, callbacks, useSemanticContext = true, useLSP = false } = options;
62
+ // Emit agent start event
63
+ callbacks?.onAgentStart?.({ agent: 'playbook', target: agentType });
64
+ // Use semantic context mode for token efficiency
65
+ if (useSemanticContext) {
66
+ return this.generateWithSemanticContext(repoPath, agentType, existingContext, maxOutputTokens, callbacks, useLSP);
67
+ }
68
+ // Tool-based mode for thorough analysis
69
+ return this.generateWithTools(repoPath, agentType, existingContext, maxSteps, maxOutputTokens, callbacks);
70
+ }
71
+ /**
72
+ * Generate playbook using pre-computed semantic context (more token efficient)
73
+ */
74
+ async generateWithSemanticContext(repoPath, agentType, existingContext, maxOutputTokens, callbacks, useLSP = false) {
75
+ const toolName = useLSP ? 'semanticAnalysis+LSP' : 'semanticAnalysis';
76
+ callbacks?.onToolCall?.({
77
+ agent: 'playbook',
78
+ toolName,
79
+ args: { repoPath, agentType, useLSP }
80
+ });
81
+ // Create context builder with LSP option
82
+ const contextBuilder = new semantic_1.SemanticContextBuilder({ useLSP });
83
+ // Pre-compute semantic context
84
+ const semanticContext = await contextBuilder.buildPlaybookContext(repoPath, agentType);
85
+ // Cleanup LSP servers if enabled
86
+ await contextBuilder.shutdown();
87
+ callbacks?.onToolResult?.({
88
+ agent: 'playbook',
89
+ toolName,
90
+ success: true,
91
+ summary: `Analyzed codebase for ${agentType}${useLSP ? ' with LSP' : ''}: ${semanticContext.length} chars of context`
92
+ });
93
+ const userPrompt = `Generate a comprehensive playbook for a ${agentType} agent.
94
+
95
+ Repository: ${repoPath}
96
+
97
+ ${semanticContext}
98
+
99
+ ${existingContext ? `Existing context:\n${existingContext}` : ''}
100
+
101
+ Generate a detailed, actionable playbook with:
102
+ 1. Clear understanding of what files/areas the agent should focus on
103
+ 2. Specific workflows and steps for common tasks
104
+ 3. Best practices derived from the actual codebase
105
+ 4. Key files and their purposes`;
106
+ const { provider, modelId } = this.providerResult;
107
+ const result = await (0, ai_1.generateText)({
108
+ model: provider(modelId),
109
+ system: SYSTEM_PROMPT,
110
+ prompt: userPrompt,
111
+ maxOutputTokens
112
+ });
113
+ // Emit agent complete event
114
+ callbacks?.onAgentComplete?.({ agent: 'playbook', toolsUsed: [toolName], steps: 1 });
115
+ return {
116
+ text: (0, contentSanitizer_1.sanitizeAIResponse)(result.text, { preserveFrontMatter: true }),
117
+ toolsUsed: [toolName],
118
+ steps: 1
119
+ };
120
+ }
121
+ /**
122
+ * Generate playbook using multi-step tool-based exploration (more thorough)
123
+ */
124
+ async generateWithTools(repoPath, agentType, existingContext, maxSteps, maxOutputTokens, callbacks) {
125
+ const focusPatterns = AGENT_TYPE_FOCUS[agentType] || ['src/**/*'];
126
+ const userPrompt = `Generate a comprehensive playbook for a ${agentType} agent.
127
+
128
+ Repository: ${repoPath}
129
+ Focus patterns: ${focusPatterns.join(', ')}
130
+ ${existingContext ? `Existing context:\n${existingContext}` : ''}
131
+
132
+ Use the tools to analyze the codebase and identify:
133
+ - Relevant files for this agent type
134
+ - Patterns and conventions
135
+ - Testing strategies (if applicable)
136
+ - Key workflows
137
+
138
+ Then generate a detailed, actionable playbook.`;
139
+ const { provider, modelId } = this.providerResult;
140
+ let stepCount = 0;
141
+ const result = await (0, ai_1.generateText)({
142
+ model: provider(modelId),
143
+ system: SYSTEM_PROMPT,
144
+ prompt: userPrompt,
145
+ tools: this.tools,
146
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps),
147
+ maxOutputTokens,
148
+ onStepFinish: (step) => {
149
+ stepCount++;
150
+ callbacks?.onAgentStep?.({ agent: 'playbook', step: stepCount });
151
+ for (const toolCall of step.toolCalls || []) {
152
+ callbacks?.onToolCall?.({
153
+ agent: 'playbook',
154
+ toolName: toolCall.toolName,
155
+ args: 'args' in toolCall ? toolCall.args : undefined
156
+ });
157
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
158
+ if (toolResult && 'result' in toolResult) {
159
+ callbacks?.onToolResult?.({
160
+ agent: 'playbook',
161
+ toolName: toolCall.toolName,
162
+ success: true,
163
+ summary: (0, agentEvents_1.summarizeToolResult)(toolCall.toolName, toolResult.result)
164
+ });
165
+ }
166
+ }
167
+ }
168
+ });
169
+ // Extract tool names used
170
+ const toolsUsed = new Set();
171
+ for (const step of result.steps || []) {
172
+ for (const toolCall of step.toolCalls || []) {
173
+ toolsUsed.add(toolCall.toolName);
174
+ }
175
+ }
176
+ const toolsUsedArray = Array.from(toolsUsed);
177
+ const totalSteps = result.steps?.length || 1;
178
+ // Emit agent complete event
179
+ callbacks?.onAgentComplete?.({ agent: 'playbook', toolsUsed: toolsUsedArray, steps: totalSteps });
180
+ return {
181
+ text: (0, contentSanitizer_1.sanitizeAIResponse)(result.text, { preserveFrontMatter: true }),
182
+ toolsUsed: toolsUsedArray,
183
+ steps: totalSteps
184
+ };
185
+ }
186
+ /**
187
+ * Generate structured playbook output
188
+ */
189
+ async generateStructuredPlaybook(options) {
190
+ const { repoPath, agentType, existingContext, maxSteps = 8, maxOutputTokens = 8000, callbacks } = options;
191
+ // Emit agent start event
192
+ callbacks?.onAgentStart?.({ agent: 'playbook', target: agentType });
193
+ const focusPatterns = AGENT_TYPE_FOCUS[agentType] || ['src/**/*'];
194
+ const analysisPrompt = `For a ${agentType} agent working in ${repoPath}, find:
195
+ 1. Relevant source files (focus on: ${focusPatterns.join(', ')})
196
+ 2. Test files and patterns
197
+ 3. Configuration files
198
+ 4. Documentation
199
+ ${existingContext ? `\nExisting context: ${existingContext}` : ''}`;
200
+ const { provider, modelId } = this.providerResult;
201
+ let stepCount = 0;
202
+ // First gather context using tools
203
+ const analysisResult = await (0, ai_1.generateText)({
204
+ model: provider(modelId),
205
+ system: 'Analyze the codebase for the specified agent type.',
206
+ prompt: analysisPrompt,
207
+ tools: this.tools,
208
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps),
209
+ maxOutputTokens: Math.floor(maxOutputTokens / 2),
210
+ onStepFinish: (step) => {
211
+ stepCount++;
212
+ callbacks?.onAgentStep?.({ agent: 'playbook', step: stepCount });
213
+ for (const toolCall of step.toolCalls || []) {
214
+ callbacks?.onToolCall?.({
215
+ agent: 'playbook',
216
+ toolName: toolCall.toolName,
217
+ args: 'args' in toolCall ? toolCall.args : undefined
218
+ });
219
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
220
+ if (toolResult && 'result' in toolResult) {
221
+ callbacks?.onToolResult?.({
222
+ agent: 'playbook',
223
+ toolName: toolCall.toolName,
224
+ success: true,
225
+ summary: (0, agentEvents_1.summarizeToolResult)(toolCall.toolName, toolResult.result)
226
+ });
227
+ }
228
+ }
229
+ }
230
+ });
231
+ // Extract tool names used
232
+ const toolsUsed = new Set();
233
+ for (const step of analysisResult.steps || []) {
234
+ for (const toolCall of step.toolCalls || []) {
235
+ toolsUsed.add(toolCall.toolName);
236
+ }
237
+ }
238
+ // Then generate structured playbook
239
+ const playbook = await (0, ai_1.generateObject)({
240
+ model: provider(modelId),
241
+ schema: schemas_1.AgentPlaybookSchema,
242
+ system: 'Generate a structured agent playbook based on the analysis.',
243
+ prompt: `Analysis:\n${analysisResult.text}\n\nGenerate a structured playbook for: ${agentType}`,
244
+ maxOutputTokens: Math.floor(maxOutputTokens / 2)
245
+ });
246
+ const toolsUsedArray = Array.from(toolsUsed);
247
+ // Emit agent complete event
248
+ callbacks?.onAgentComplete?.({ agent: 'playbook', toolsUsed: toolsUsedArray, steps: stepCount });
249
+ return {
250
+ playbook: playbook.object,
251
+ toolsUsed: toolsUsedArray
252
+ };
253
+ }
254
+ /**
255
+ * Get the current configuration
256
+ */
257
+ getConfig() {
258
+ return {
259
+ provider: this.config.provider,
260
+ model: this.providerResult.modelId
261
+ };
262
+ }
263
+ }
264
+ exports.PlaybookAgent = PlaybookAgent;
265
+ //# sourceMappingURL=playbookAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playbookAgent.js","sourceRoot":"","sources":["../../../../src/services/ai/agents/playbookAgent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import type { ToolSet } from 'ai';
2
+ import type { z } from 'zod';
3
+ import { BaseLLMClient } from '../baseLLMClient';
4
+ import type { LLMConfig } from '../../types';
5
+ export declare class AISdkClient extends BaseLLMClient {
6
+ private providerResult;
7
+ private config;
8
+ private tools;
9
+ constructor(config: LLMConfig);
10
+ /**
11
+ * Sets the tools available for tool-enabled generation
12
+ */
13
+ setTools(tools: ToolSet): void;
14
+ /**
15
+ * Gets the configured tools
16
+ */
17
+ getTools(): ToolSet;
18
+ /**
19
+ * Basic text generation (compatible with BaseLLMClient interface)
20
+ */
21
+ generateText(prompt: string, systemPrompt?: string): Promise<string>;
22
+ /**
23
+ * Text generation with tool usage enabled
24
+ */
25
+ generateWithTools(prompt: string, systemPrompt?: string, options?: {
26
+ enabledTools?: string[];
27
+ maxSteps?: number;
28
+ maxOutputTokens?: number;
29
+ }): Promise<{
30
+ text: string;
31
+ toolCalls: Array<{
32
+ toolName: string;
33
+ args: unknown;
34
+ result: unknown;
35
+ }>;
36
+ steps: number;
37
+ }>;
38
+ /**
39
+ * Generate structured output conforming to a Zod schema
40
+ */
41
+ generateStructured<T>(prompt: string, schema: z.ZodSchema<T>, systemPrompt?: string, options?: {
42
+ maxOutputTokens?: number;
43
+ }): Promise<T>;
44
+ /**
45
+ * Generate text with tools and then produce structured output
46
+ */
47
+ generateWithToolsAndStructure<T>(prompt: string, schema: z.ZodSchema<T>, systemPrompt?: string, options?: {
48
+ enabledTools?: string[];
49
+ maxSteps?: number;
50
+ maxOutputTokens?: number;
51
+ }): Promise<{
52
+ object: T;
53
+ toolCalls: Array<{
54
+ toolName: string;
55
+ args: unknown;
56
+ result: unknown;
57
+ }>;
58
+ }>;
59
+ /**
60
+ * Get the current provider configuration
61
+ */
62
+ getProviderConfig(): {
63
+ provider: string;
64
+ model: string;
65
+ };
66
+ }
67
+ //# sourceMappingURL=aiSdkClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkClient.d.ts","sourceRoot":"","sources":["../../../src/services/ai/aiSdkClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAsB,OAAO,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,qBAAa,WAAY,SAAQ,aAAa;IAC5C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAe;gBAEhB,MAAM,EAAE,SAAS;IAM7B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9B;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B1E;;OAEG;IACG,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GACA,OAAO,CAAC;QACT,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QACvE,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAqDF;;OAEG;IACG,kBAAkB,CAAC,CAAC,EACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GACA,OAAO,CAAC,CAAC,CAAC;IAqBb;;OAEG;IACG,6BAA6B,CAAC,CAAC,EACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GACA,OAAO,CAAC;QACT,MAAM,EAAE,CAAC,CAAC;QACV,SAAS,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACxE,CAAC;IAmBF;;OAEG;IACH,iBAAiB,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;CAMzD"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AISdkClient = void 0;
4
+ const ai_1 = require("ai");
5
+ const baseLLMClient_1 = require("../baseLLMClient");
6
+ const providerFactory_1 = require("./providerFactory");
7
+ class AISdkClient extends baseLLMClient_1.BaseLLMClient {
8
+ constructor(config) {
9
+ super(config.model);
10
+ this.tools = {};
11
+ this.config = config;
12
+ this.providerResult = (0, providerFactory_1.createProvider)(config);
13
+ }
14
+ /**
15
+ * Sets the tools available for tool-enabled generation
16
+ */
17
+ setTools(tools) {
18
+ this.tools = tools;
19
+ }
20
+ /**
21
+ * Gets the configured tools
22
+ */
23
+ getTools() {
24
+ return this.tools;
25
+ }
26
+ /**
27
+ * Basic text generation (compatible with BaseLLMClient interface)
28
+ */
29
+ async generateText(prompt, systemPrompt) {
30
+ const messages = [];
31
+ if (systemPrompt) {
32
+ messages.push({ role: 'system', content: systemPrompt });
33
+ }
34
+ messages.push({ role: 'user', content: prompt });
35
+ const { provider, modelId } = this.providerResult;
36
+ const result = await (0, ai_1.generateText)({
37
+ model: provider(modelId),
38
+ messages,
39
+ maxOutputTokens: 4000,
40
+ temperature: 0.7
41
+ });
42
+ this.trackUsage({
43
+ prompt_tokens: result.usage?.inputTokens || 0,
44
+ completion_tokens: result.usage?.outputTokens || 0,
45
+ total_tokens: (result.usage?.inputTokens || 0) + (result.usage?.outputTokens || 0)
46
+ });
47
+ return result.text;
48
+ }
49
+ /**
50
+ * Text generation with tool usage enabled
51
+ */
52
+ async generateWithTools(prompt, systemPrompt, options) {
53
+ const { enabledTools, maxSteps = 10, maxOutputTokens = 8000 } = options || {};
54
+ const activeTools = enabledTools
55
+ ? Object.fromEntries(Object.entries(this.tools).filter(([name]) => enabledTools.includes(name)))
56
+ : this.tools;
57
+ const messages = [];
58
+ if (systemPrompt) {
59
+ messages.push({ role: 'system', content: systemPrompt });
60
+ }
61
+ messages.push({ role: 'user', content: prompt });
62
+ const { provider, modelId } = this.providerResult;
63
+ const result = await (0, ai_1.generateText)({
64
+ model: provider(modelId),
65
+ messages,
66
+ tools: activeTools,
67
+ maxOutputTokens,
68
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps)
69
+ });
70
+ this.trackUsage({
71
+ prompt_tokens: result.usage?.inputTokens || 0,
72
+ completion_tokens: result.usage?.outputTokens || 0,
73
+ total_tokens: (result.usage?.inputTokens || 0) + (result.usage?.outputTokens || 0)
74
+ });
75
+ // Extract tool calls from all steps
76
+ const toolCalls = [];
77
+ for (const step of result.steps || []) {
78
+ for (const toolCall of step.toolCalls || []) {
79
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
80
+ toolCalls.push({
81
+ toolName: toolCall.toolName,
82
+ args: 'args' in toolCall ? toolCall.args : undefined,
83
+ result: toolResult && 'result' in toolResult ? toolResult.result : undefined
84
+ });
85
+ }
86
+ }
87
+ return {
88
+ text: result.text,
89
+ toolCalls,
90
+ steps: result.steps?.length || 1
91
+ };
92
+ }
93
+ /**
94
+ * Generate structured output conforming to a Zod schema
95
+ */
96
+ async generateStructured(prompt, schema, systemPrompt, options) {
97
+ const { maxOutputTokens = 4000 } = options || {};
98
+ const { provider, modelId } = this.providerResult;
99
+ const result = await (0, ai_1.generateObject)({
100
+ model: provider(modelId),
101
+ schema,
102
+ system: systemPrompt,
103
+ prompt,
104
+ maxOutputTokens
105
+ });
106
+ this.trackUsage({
107
+ prompt_tokens: result.usage?.inputTokens || 0,
108
+ completion_tokens: result.usage?.outputTokens || 0,
109
+ total_tokens: (result.usage?.inputTokens || 0) + (result.usage?.outputTokens || 0)
110
+ });
111
+ return result.object;
112
+ }
113
+ /**
114
+ * Generate text with tools and then produce structured output
115
+ */
116
+ async generateWithToolsAndStructure(prompt, schema, systemPrompt, options) {
117
+ // First, gather context using tools
118
+ const toolResult = await this.generateWithTools(prompt, systemPrompt, {
119
+ ...options,
120
+ maxOutputTokens: (options?.maxOutputTokens || 8000) / 2
121
+ });
122
+ // Then generate structured output based on the analysis
123
+ const structuredPrompt = `Based on this analysis:\n\n${toolResult.text}\n\nGenerate the structured output.`;
124
+ const object = await this.generateStructured(structuredPrompt, schema, systemPrompt, {
125
+ maxOutputTokens: (options?.maxOutputTokens || 8000) / 2
126
+ });
127
+ return {
128
+ object,
129
+ toolCalls: toolResult.toolCalls
130
+ };
131
+ }
132
+ /**
133
+ * Get the current provider configuration
134
+ */
135
+ getProviderConfig() {
136
+ return {
137
+ provider: this.config.provider,
138
+ model: this.providerResult.modelId
139
+ };
140
+ }
141
+ }
142
+ exports.AISdkClient = AISdkClient;
143
+ //# sourceMappingURL=aiSdkClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkClient.js","sourceRoot":"","sources":["../../../src/services/ai/aiSdkClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export { AISdkClient } from './aiSdkClient';
2
+ export { createProvider, detectProviderFromEnv, getApiKeyFromEnv, getModelFromEnv, DEFAULT_MODELS, PROVIDER_ENV_VARS, type ProviderInstance, type ProviderResult } from './providerFactory';
3
+ export * from './schemas';
4
+ export { getCodeAnalysisTools, readFileTool, listFilesTool, analyzeSymbolsTool, getFileStructureTool, searchCodeTool, TOOL_NAMES, type ToolName } from './tools';
5
+ export { DocumentationAgent, PlaybookAgent, PlanAgent, type DocumentationAgentOptions, type DocumentationAgentResult, type PlaybookAgentOptions, type PlaybookAgentResult, type PlanAgentOptions, type PlanAgentResult } from './agents';
6
+ export { type AgentType, type AgentStartEvent, type AgentStepEvent, type ToolCallEvent, type ToolResultEvent, type AgentCompleteEvent, type AgentEventCallbacks, summarizeToolArgs, summarizeToolResult } from './agentEvents';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/ai/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,KAAK,QAAQ,EACd,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACrB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.summarizeToolResult = exports.summarizeToolArgs = exports.PlanAgent = exports.PlaybookAgent = exports.DocumentationAgent = exports.TOOL_NAMES = exports.searchCodeTool = exports.getFileStructureTool = exports.analyzeSymbolsTool = exports.listFilesTool = exports.readFileTool = exports.getCodeAnalysisTools = exports.PROVIDER_ENV_VARS = exports.DEFAULT_MODELS = exports.getModelFromEnv = exports.getApiKeyFromEnv = exports.detectProviderFromEnv = exports.createProvider = exports.AISdkClient = void 0;
18
+ // Main AI SDK client
19
+ var aiSdkClient_1 = require("./aiSdkClient");
20
+ Object.defineProperty(exports, "AISdkClient", { enumerable: true, get: function () { return aiSdkClient_1.AISdkClient; } });
21
+ // Provider factory
22
+ var providerFactory_1 = require("./providerFactory");
23
+ Object.defineProperty(exports, "createProvider", { enumerable: true, get: function () { return providerFactory_1.createProvider; } });
24
+ Object.defineProperty(exports, "detectProviderFromEnv", { enumerable: true, get: function () { return providerFactory_1.detectProviderFromEnv; } });
25
+ Object.defineProperty(exports, "getApiKeyFromEnv", { enumerable: true, get: function () { return providerFactory_1.getApiKeyFromEnv; } });
26
+ Object.defineProperty(exports, "getModelFromEnv", { enumerable: true, get: function () { return providerFactory_1.getModelFromEnv; } });
27
+ Object.defineProperty(exports, "DEFAULT_MODELS", { enumerable: true, get: function () { return providerFactory_1.DEFAULT_MODELS; } });
28
+ Object.defineProperty(exports, "PROVIDER_ENV_VARS", { enumerable: true, get: function () { return providerFactory_1.PROVIDER_ENV_VARS; } });
29
+ // Schemas
30
+ __exportStar(require("./schemas"), exports);
31
+ // Tools
32
+ var tools_1 = require("./tools");
33
+ Object.defineProperty(exports, "getCodeAnalysisTools", { enumerable: true, get: function () { return tools_1.getCodeAnalysisTools; } });
34
+ Object.defineProperty(exports, "readFileTool", { enumerable: true, get: function () { return tools_1.readFileTool; } });
35
+ Object.defineProperty(exports, "listFilesTool", { enumerable: true, get: function () { return tools_1.listFilesTool; } });
36
+ Object.defineProperty(exports, "analyzeSymbolsTool", { enumerable: true, get: function () { return tools_1.analyzeSymbolsTool; } });
37
+ Object.defineProperty(exports, "getFileStructureTool", { enumerable: true, get: function () { return tools_1.getFileStructureTool; } });
38
+ Object.defineProperty(exports, "searchCodeTool", { enumerable: true, get: function () { return tools_1.searchCodeTool; } });
39
+ Object.defineProperty(exports, "TOOL_NAMES", { enumerable: true, get: function () { return tools_1.TOOL_NAMES; } });
40
+ // Agents
41
+ var agents_1 = require("./agents");
42
+ Object.defineProperty(exports, "DocumentationAgent", { enumerable: true, get: function () { return agents_1.DocumentationAgent; } });
43
+ Object.defineProperty(exports, "PlaybookAgent", { enumerable: true, get: function () { return agents_1.PlaybookAgent; } });
44
+ Object.defineProperty(exports, "PlanAgent", { enumerable: true, get: function () { return agents_1.PlanAgent; } });
45
+ // Agent Events
46
+ var agentEvents_1 = require("./agentEvents");
47
+ Object.defineProperty(exports, "summarizeToolArgs", { enumerable: true, get: function () { return agentEvents_1.summarizeToolArgs; } });
48
+ Object.defineProperty(exports, "summarizeToolResult", { enumerable: true, get: function () { return agentEvents_1.summarizeToolResult; } });
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/ai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qBAAqB;AACrB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AAEpB,mBAAmB;AACnB,qDAS2B;AARzB,iHAAA,cAAc,OAAA;AACd,wHAAA,qBAAqB,OAAA;AACrB,mHAAA,gBAAgB,OAAA;AAChB,kHAAA,eAAe,OAAA;AACf,iHAAA,cAAc,OAAA;AACd,oHAAA,iBAAiB,OAAA;AAKnB,UAAU;AACV,4CAA0B;AAE1B,QAAQ;AACR,iCASiB;AARf,6GAAA,oBAAoB,OAAA;AACpB,qGAAA,YAAY,OAAA;AACZ,sGAAA,aAAa,OAAA;AACb,2GAAA,kBAAkB,OAAA;AAClB,6GAAA,oBAAoB,OAAA;AACpB,uGAAA,cAAc,OAAA;AACd,mGAAA,UAAU,OAAA;AAIZ,SAAS;AACT,mCAUkB;AAThB,4GAAA,kBAAkB,OAAA;AAClB,uGAAA,aAAa,OAAA;AACb,mGAAA,SAAS,OAAA;AASX,eAAe;AACf,6CAUuB;AAFrB,gHAAA,iBAAiB,OAAA;AACjB,kHAAA,mBAAmB,OAAA"}
@@ -0,0 +1,35 @@
1
+ import { createOpenAI } from '@ai-sdk/openai';
2
+ import { createAnthropic } from '@ai-sdk/anthropic';
3
+ import { createGoogleGenerativeAI } from '@ai-sdk/google';
4
+ import type { AIProvider, LLMConfig } from '../../types';
5
+ export type ProviderInstance = ReturnType<typeof createOpenAI> | ReturnType<typeof createAnthropic> | ReturnType<typeof createGoogleGenerativeAI>;
6
+ export interface ProviderResult {
7
+ provider: ProviderInstance;
8
+ modelId: string;
9
+ }
10
+ /**
11
+ * Default models for each provider
12
+ */
13
+ export declare const DEFAULT_MODELS: Record<AIProvider, string>;
14
+ /**
15
+ * Environment variable names for API keys
16
+ */
17
+ export declare const PROVIDER_ENV_VARS: Record<AIProvider, string[]>;
18
+ /**
19
+ * Creates a provider instance based on the configuration.
20
+ * OpenRouter uses OpenAI SDK with a custom base URL.
21
+ */
22
+ export declare function createProvider(config: LLMConfig): ProviderResult;
23
+ /**
24
+ * Detects the provider from available environment variables
25
+ */
26
+ export declare function detectProviderFromEnv(): AIProvider | null;
27
+ /**
28
+ * Gets the API key for a provider from environment variables
29
+ */
30
+ export declare function getApiKeyFromEnv(provider: AIProvider): string | undefined;
31
+ /**
32
+ * Gets the model override from environment for a provider
33
+ */
34
+ export declare function getModelFromEnv(provider: AIProvider): string | undefined;
35
+ //# sourceMappingURL=providerFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerFactory.d.ts","sourceRoot":"","sources":["../../../src/services/ai/providerFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEzD,MAAM,MAAM,gBAAgB,GACxB,UAAU,CAAC,OAAO,YAAY,CAAC,GAC/B,UAAU,CAAC,OAAO,eAAe,CAAC,GAClC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEhD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAKrD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAK1D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,cAAc,CA4ChE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,UAAU,GAAG,IAAI,CAMzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAOzE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAGxE"}