@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,389 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlanAgent = 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 software development planner. Your task is to create or update development plans that coordinate AI agents and documentation.
12
+
13
+ You have access to code analysis tools:
14
+ - readFile: Read file contents
15
+ - listFiles: List files matching patterns
16
+ - analyzeSymbols: Extract code symbols (classes, functions, etc.)
17
+ - getFileStructure: Get repository structure
18
+ - searchCode: Search for code patterns
19
+
20
+ A good development plan includes:
21
+ 1. Clear goal and scope definition
22
+ 2. Agent lineup with specific roles and focus areas
23
+ 3. Documentation touchpoints that need updates
24
+ 4. Phased implementation with concrete steps
25
+ 5. Each step has an owner (agent type), deliverable, and evidence of completion
26
+ 6. Git commit checkpoints for each phase
27
+ 7. Success criteria and risk mitigation
28
+
29
+ Use the tools to:
30
+ - Understand the codebase structure
31
+ - Identify key files and patterns
32
+ - Find existing documentation and agent playbooks
33
+ - Discover dependencies and relationships
34
+
35
+ Then create a detailed, actionable plan.
36
+
37
+ IMPORTANT OUTPUT FORMAT:
38
+ - Output ONLY the final plan content in Markdown format
39
+ - Do NOT include your reasoning, planning, or analysis process
40
+ - Do NOT start with phrases like "I will...", "Let me...", "First, I need to..."
41
+ - Begin directly with the plan content (YAML front matter or title)
42
+ - Your response will be saved directly to a file`;
43
+ const PLAN_UPDATE_PROMPT = `You are updating an existing development plan with fresh context from the repository.
44
+
45
+ Preserve:
46
+ - YAML front matter
47
+ - agent-update wrapper comments
48
+ - Overall structure and formatting
49
+
50
+ Update:
51
+ - Replace TODOs with concrete steps
52
+ - Ensure agent lineup matches available agents
53
+ - Update documentation touchpoints based on actual docs
54
+ - Add specific file paths and code references
55
+ - Segment work into clear phases with commit checkpoints
56
+
57
+ CRITICAL OUTPUT REQUIREMENT:
58
+ - Return ONLY the complete updated Markdown plan content
59
+ - Do NOT include reasoning, thinking, or analysis
60
+ - Do NOT start with "I will...", "Let me...", etc.
61
+ - Your response replaces the plan file directly`;
62
+ class PlanAgent {
63
+ constructor(config) {
64
+ this.config = config;
65
+ this.providerResult = (0, providerFactory_1.createProvider)(config);
66
+ this.tools = (0, tools_1.getCodeAnalysisTools)();
67
+ }
68
+ /**
69
+ * Generate a new development plan using tools for context gathering
70
+ */
71
+ async generatePlan(options) {
72
+ const { repoPath, planName, summary, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxSteps = 15, maxOutputTokens = 8000, callbacks } = options;
73
+ // Emit agent start event
74
+ callbacks?.onAgentStart?.({ agent: 'plan', target: planName });
75
+ const contextParts = [
76
+ `Create a development plan named "${planName}" for the repository at: ${repoPath}`,
77
+ summary ? `\nPlan summary/goal: ${summary}` : '',
78
+ '\nUse the tools to analyze the codebase and understand:',
79
+ '1. The project structure and main components',
80
+ '2. Key files and their purposes',
81
+ '3. Existing patterns and conventions',
82
+ '4. Areas that need attention',
83
+ '\nThen generate a comprehensive development plan.'
84
+ ];
85
+ if (docsIndex) {
86
+ contextParts.push('\n\nAvailable documentation (docs/README.md):', docsIndex);
87
+ }
88
+ if (agentsIndex) {
89
+ contextParts.push('\n\nAvailable agents (agents/README.md):', agentsIndex);
90
+ }
91
+ if (referencedDocs && referencedDocs.length > 0) {
92
+ const docSummary = referencedDocs.map((d) => `- ${d.path}`).join('\n');
93
+ contextParts.push('\n\nExisting documentation files:', docSummary);
94
+ }
95
+ if (referencedAgents && referencedAgents.length > 0) {
96
+ const agentSummary = referencedAgents.map((a) => `- ${a.path}`).join('\n');
97
+ contextParts.push('\n\nExisting agent playbooks:', agentSummary);
98
+ }
99
+ const userPrompt = contextParts.filter(Boolean).join('\n');
100
+ const { provider, modelId } = this.providerResult;
101
+ let stepCount = 0;
102
+ const result = await (0, ai_1.generateText)({
103
+ model: provider(modelId),
104
+ system: SYSTEM_PROMPT,
105
+ prompt: userPrompt,
106
+ tools: this.tools,
107
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps),
108
+ maxOutputTokens,
109
+ onStepFinish: (step) => {
110
+ stepCount++;
111
+ callbacks?.onAgentStep?.({ agent: 'plan', step: stepCount });
112
+ for (const toolCall of step.toolCalls || []) {
113
+ callbacks?.onToolCall?.({
114
+ agent: 'plan',
115
+ toolName: toolCall.toolName,
116
+ args: 'args' in toolCall ? toolCall.args : undefined
117
+ });
118
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
119
+ if (toolResult && 'result' in toolResult) {
120
+ callbacks?.onToolResult?.({
121
+ agent: 'plan',
122
+ toolName: toolCall.toolName,
123
+ success: true,
124
+ summary: (0, agentEvents_1.summarizeToolResult)(toolCall.toolName, toolResult.result)
125
+ });
126
+ }
127
+ }
128
+ }
129
+ });
130
+ const toolsUsed = new Set();
131
+ for (const step of result.steps || []) {
132
+ for (const toolCall of step.toolCalls || []) {
133
+ toolsUsed.add(toolCall.toolName);
134
+ }
135
+ }
136
+ const toolsUsedArray = Array.from(toolsUsed);
137
+ const totalSteps = result.steps?.length || 1;
138
+ // Emit agent complete event
139
+ callbacks?.onAgentComplete?.({ agent: 'plan', toolsUsed: toolsUsedArray, steps: totalSteps });
140
+ return {
141
+ text: (0, contentSanitizer_1.sanitizeAIResponse)(result.text, { preserveFrontMatter: true, preserveComments: true }),
142
+ toolsUsed: toolsUsedArray,
143
+ steps: totalSteps
144
+ };
145
+ }
146
+ /**
147
+ * Update an existing plan with fresh context
148
+ */
149
+ async updatePlan(options) {
150
+ const { repoPath, planName, existingPlanContent, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxSteps = 12, maxOutputTokens = 8000, callbacks, useSemanticContext = true, useLSP = false } = options;
151
+ if (!existingPlanContent) {
152
+ return this.generatePlan(options);
153
+ }
154
+ // Emit agent start event
155
+ callbacks?.onAgentStart?.({ agent: 'plan', target: planName });
156
+ // Use semantic context mode for token efficiency
157
+ if (useSemanticContext) {
158
+ return this.updatePlanWithSemanticContext(repoPath, planName, existingPlanContent, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxOutputTokens, callbacks, useLSP);
159
+ }
160
+ // Tool-based mode for thorough analysis
161
+ return this.updatePlanWithTools(repoPath, planName, existingPlanContent, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxSteps, maxOutputTokens, callbacks);
162
+ }
163
+ /**
164
+ * Update plan using pre-computed semantic context (more token efficient)
165
+ */
166
+ async updatePlanWithSemanticContext(repoPath, planName, existingPlanContent, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxOutputTokens, callbacks, useLSP = false) {
167
+ const toolName = useLSP ? 'semanticAnalysis+LSP' : 'semanticAnalysis';
168
+ callbacks?.onToolCall?.({
169
+ agent: 'plan',
170
+ toolName,
171
+ args: { repoPath, planName, useLSP }
172
+ });
173
+ // Create context builder with LSP option
174
+ const contextBuilder = new semantic_1.SemanticContextBuilder({ useLSP });
175
+ // Pre-compute semantic context
176
+ const semanticContext = await contextBuilder.buildPlanContext(repoPath, planName);
177
+ // Cleanup LSP servers if enabled
178
+ await contextBuilder.shutdown();
179
+ callbacks?.onToolResult?.({
180
+ agent: 'plan',
181
+ toolName,
182
+ success: true,
183
+ summary: `Analyzed codebase for plan${useLSP ? ' with LSP' : ''}: ${semanticContext.length} chars of context`
184
+ });
185
+ const contextParts = [
186
+ `Update the development plan "${planName}" for repository: ${repoPath}`,
187
+ '',
188
+ semanticContext,
189
+ '',
190
+ 'Current plan content:',
191
+ '<plan>',
192
+ existingPlanContent,
193
+ '</plan>'
194
+ ];
195
+ if (docsIndex) {
196
+ contextParts.push('\n\nDocumentation index:', '<docs-index>', docsIndex, '</docs-index>');
197
+ }
198
+ if (agentsIndex) {
199
+ contextParts.push('\n\nAgent index:', '<agents-index>', agentsIndex, '</agents-index>');
200
+ }
201
+ if (referencedDocs && referencedDocs.length > 0) {
202
+ const docContent = referencedDocs
203
+ .map((d) => `<doc path="${d.path}">\n${d.content}\n</doc>`)
204
+ .join('\n\n');
205
+ contextParts.push('\n\nReferenced documentation:', docContent);
206
+ }
207
+ if (referencedAgents && referencedAgents.length > 0) {
208
+ const agentContent = referencedAgents
209
+ .map((a) => `<agent path="${a.path}">\n${a.content}\n</agent>`)
210
+ .join('\n\n');
211
+ contextParts.push('\n\nReferenced agents:', agentContent);
212
+ }
213
+ const userPrompt = contextParts.join('\n');
214
+ const { provider, modelId } = this.providerResult;
215
+ const result = await (0, ai_1.generateText)({
216
+ model: provider(modelId),
217
+ system: PLAN_UPDATE_PROMPT,
218
+ prompt: userPrompt,
219
+ maxOutputTokens
220
+ });
221
+ // Emit agent complete event
222
+ callbacks?.onAgentComplete?.({ agent: 'plan', toolsUsed: [toolName], steps: 1 });
223
+ return {
224
+ text: (0, contentSanitizer_1.sanitizeAIResponse)(result.text, { preserveFrontMatter: true, preserveComments: true }),
225
+ toolsUsed: [toolName],
226
+ steps: 1
227
+ };
228
+ }
229
+ /**
230
+ * Update plan using multi-step tool-based exploration (more thorough)
231
+ */
232
+ async updatePlanWithTools(repoPath, planName, existingPlanContent, docsIndex, agentsIndex, referencedDocs, referencedAgents, maxSteps, maxOutputTokens, callbacks) {
233
+ const contextParts = [
234
+ `Update the development plan "${planName}" for repository: ${repoPath}`,
235
+ '\nFirst, use tools to gather fresh context about the codebase.',
236
+ '\nCurrent plan content:',
237
+ '<plan>',
238
+ existingPlanContent,
239
+ '</plan>'
240
+ ];
241
+ if (docsIndex) {
242
+ contextParts.push('\n\nDocumentation index:', '<docs-index>', docsIndex, '</docs-index>');
243
+ }
244
+ if (agentsIndex) {
245
+ contextParts.push('\n\nAgent index:', '<agents-index>', agentsIndex, '</agents-index>');
246
+ }
247
+ if (referencedDocs && referencedDocs.length > 0) {
248
+ const docContent = referencedDocs
249
+ .map((d) => `<doc path="${d.path}">\n${d.content}\n</doc>`)
250
+ .join('\n\n');
251
+ contextParts.push('\n\nReferenced documentation:', docContent);
252
+ }
253
+ if (referencedAgents && referencedAgents.length > 0) {
254
+ const agentContent = referencedAgents
255
+ .map((a) => `<agent path="${a.path}">\n${a.content}\n</agent>`)
256
+ .join('\n\n');
257
+ contextParts.push('\n\nReferenced agents:', agentContent);
258
+ }
259
+ const userPrompt = contextParts.join('\n');
260
+ const { provider, modelId } = this.providerResult;
261
+ let stepCount = 0;
262
+ const result = await (0, ai_1.generateText)({
263
+ model: provider(modelId),
264
+ system: PLAN_UPDATE_PROMPT,
265
+ prompt: userPrompt,
266
+ tools: this.tools,
267
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps),
268
+ maxOutputTokens,
269
+ onStepFinish: (step) => {
270
+ stepCount++;
271
+ callbacks?.onAgentStep?.({ agent: 'plan', step: stepCount });
272
+ for (const toolCall of step.toolCalls || []) {
273
+ callbacks?.onToolCall?.({
274
+ agent: 'plan',
275
+ toolName: toolCall.toolName,
276
+ args: 'args' in toolCall ? toolCall.args : undefined
277
+ });
278
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
279
+ if (toolResult && 'result' in toolResult) {
280
+ callbacks?.onToolResult?.({
281
+ agent: 'plan',
282
+ toolName: toolCall.toolName,
283
+ success: true,
284
+ summary: (0, agentEvents_1.summarizeToolResult)(toolCall.toolName, toolResult.result)
285
+ });
286
+ }
287
+ }
288
+ }
289
+ });
290
+ const toolsUsed = new Set();
291
+ for (const step of result.steps || []) {
292
+ for (const toolCall of step.toolCalls || []) {
293
+ toolsUsed.add(toolCall.toolName);
294
+ }
295
+ }
296
+ const toolsUsedArray = Array.from(toolsUsed);
297
+ const totalSteps = result.steps?.length || 1;
298
+ // Emit agent complete event
299
+ callbacks?.onAgentComplete?.({ agent: 'plan', toolsUsed: toolsUsedArray, steps: totalSteps });
300
+ return {
301
+ text: (0, contentSanitizer_1.sanitizeAIResponse)(result.text, { preserveFrontMatter: true, preserveComments: true }),
302
+ toolsUsed: toolsUsedArray,
303
+ steps: totalSteps
304
+ };
305
+ }
306
+ /**
307
+ * Generate a structured development plan
308
+ */
309
+ async generateStructuredPlan(options) {
310
+ const { repoPath, planName, summary, docsIndex, agentsIndex, maxSteps = 10, maxOutputTokens = 8000, callbacks } = options;
311
+ // Emit agent start event
312
+ callbacks?.onAgentStart?.({ agent: 'plan', target: planName });
313
+ const analysisPrompt = `Analyze the repository at ${repoPath} for creating a development plan "${planName}".
314
+ ${summary ? `Goal: ${summary}` : ''}
315
+
316
+ Gather information about:
317
+ 1. Project structure and key directories
318
+ 2. Main source files and their purposes
319
+ 3. Existing tests and testing patterns
320
+ 4. Configuration files
321
+ 5. Dependencies and integrations
322
+
323
+ ${docsIndex ? `\nAvailable docs:\n${docsIndex}` : ''}
324
+ ${agentsIndex ? `\nAvailable agents:\n${agentsIndex}` : ''}`;
325
+ const { provider, modelId } = this.providerResult;
326
+ let stepCount = 0;
327
+ // First gather context using tools
328
+ const analysisResult = await (0, ai_1.generateText)({
329
+ model: provider(modelId),
330
+ system: 'Analyze the codebase to understand its structure for development planning.',
331
+ prompt: analysisPrompt,
332
+ tools: this.tools,
333
+ stopWhen: (0, ai_1.stepCountIs)(maxSteps),
334
+ maxOutputTokens: Math.floor(maxOutputTokens / 2),
335
+ onStepFinish: (step) => {
336
+ stepCount++;
337
+ callbacks?.onAgentStep?.({ agent: 'plan', step: stepCount });
338
+ for (const toolCall of step.toolCalls || []) {
339
+ callbacks?.onToolCall?.({
340
+ agent: 'plan',
341
+ toolName: toolCall.toolName,
342
+ args: 'args' in toolCall ? toolCall.args : undefined
343
+ });
344
+ const toolResult = step.toolResults?.find((r) => 'toolCallId' in r && r.toolCallId === toolCall.toolCallId);
345
+ if (toolResult && 'result' in toolResult) {
346
+ callbacks?.onToolResult?.({
347
+ agent: 'plan',
348
+ toolName: toolCall.toolName,
349
+ success: true,
350
+ summary: (0, agentEvents_1.summarizeToolResult)(toolCall.toolName, toolResult.result)
351
+ });
352
+ }
353
+ }
354
+ }
355
+ });
356
+ const toolsUsed = new Set();
357
+ for (const step of analysisResult.steps || []) {
358
+ for (const toolCall of step.toolCalls || []) {
359
+ toolsUsed.add(toolCall.toolName);
360
+ }
361
+ }
362
+ // Then generate structured plan
363
+ const plan = await (0, ai_1.generateObject)({
364
+ model: provider(modelId),
365
+ schema: schemas_1.DevelopmentPlanSchema,
366
+ system: 'Generate a structured development plan based on the codebase analysis.',
367
+ prompt: `Based on this analysis:\n${analysisResult.text}\n\nCreate a structured development plan for: ${planName}${summary ? `\nGoal: ${summary}` : ''}`,
368
+ maxOutputTokens: Math.floor(maxOutputTokens / 2)
369
+ });
370
+ const toolsUsedArray = Array.from(toolsUsed);
371
+ // Emit agent complete event
372
+ callbacks?.onAgentComplete?.({ agent: 'plan', toolsUsed: toolsUsedArray, steps: stepCount });
373
+ return {
374
+ plan: plan.object,
375
+ toolsUsed: toolsUsedArray
376
+ };
377
+ }
378
+ /**
379
+ * Get the current configuration
380
+ */
381
+ getConfig() {
382
+ return {
383
+ provider: this.config.provider,
384
+ model: this.providerResult.modelId
385
+ };
386
+ }
387
+ }
388
+ exports.PlanAgent = PlanAgent;
389
+ //# sourceMappingURL=planAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planAgent.js","sourceRoot":"","sources":["../../../../src/services/ai/agents/planAgent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import type { LLMConfig } from '../../../types';
2
+ import type { AgentType as GeneratorAgentType } from '../../../generators/agents/agentTypes';
3
+ import type { AgentPlaybook } from '../schemas';
4
+ import type { AgentEventCallbacks } from '../agentEvents';
5
+ export interface PlaybookAgentOptions {
6
+ repoPath: string;
7
+ agentType: GeneratorAgentType;
8
+ existingContext?: string;
9
+ maxSteps?: number;
10
+ maxOutputTokens?: number;
11
+ callbacks?: AgentEventCallbacks;
12
+ /** Use pre-computed semantic context instead of tool-based exploration (more token efficient) */
13
+ useSemanticContext?: boolean;
14
+ /** Enable LSP for deeper semantic analysis (type info, references, implementations) */
15
+ useLSP?: boolean;
16
+ }
17
+ export interface PlaybookAgentResult {
18
+ text: string;
19
+ toolsUsed: string[];
20
+ steps: number;
21
+ }
22
+ export declare class PlaybookAgent {
23
+ private config;
24
+ private providerResult;
25
+ private tools;
26
+ constructor(config: LLMConfig);
27
+ /**
28
+ * Generate a playbook using tools for context gathering
29
+ */
30
+ generatePlaybook(options: PlaybookAgentOptions): Promise<PlaybookAgentResult>;
31
+ /**
32
+ * Generate playbook using pre-computed semantic context (more token efficient)
33
+ */
34
+ private generateWithSemanticContext;
35
+ /**
36
+ * Generate playbook using multi-step tool-based exploration (more thorough)
37
+ */
38
+ private generateWithTools;
39
+ /**
40
+ * Generate structured playbook output
41
+ */
42
+ generateStructuredPlaybook(options: PlaybookAgentOptions): Promise<{
43
+ playbook: AgentPlaybook;
44
+ toolsUsed: string[];
45
+ }>;
46
+ /**
47
+ * Get the current configuration
48
+ */
49
+ getConfig(): {
50
+ provider: string;
51
+ model: string;
52
+ };
53
+ }
54
+ //# sourceMappingURL=playbookAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playbookAgent.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/agents/playbookAgent.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAK1D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,iGAAiG;IACjG,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AA4CD,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,KAAK,CAAU;gBAEX,MAAM,EAAE,SAAS;IAM7B;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAenF;;OAEG;YACW,2BAA2B;IAiEzC;;OAEG;YACW,iBAAiB;IAiF/B;;OAEG;IACG,0BAA0B,CAC9B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC;QACT,QAAQ,EAAE,aAAa,CAAC;QACxB,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IAgFF;;OAEG;IACH,SAAS,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;CAMjD"}