genaicode 0.14.2 → 1.0.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 (283) hide show
  1. package/README.md +0 -7
  2. package/dist/ai-service/ai-studio.d.ts +2 -18
  3. package/dist/ai-service/ai-studio.js +87 -31
  4. package/dist/ai-service/ai-studio.js.map +1 -1
  5. package/dist/ai-service/anthropic.js +87 -45
  6. package/dist/ai-service/anthropic.js.map +1 -1
  7. package/dist/ai-service/common-types.d.ts +36 -3
  8. package/dist/ai-service/common-types.js +0 -2
  9. package/dist/ai-service/common-types.js.map +1 -1
  10. package/dist/ai-service/common.js +0 -2
  11. package/dist/ai-service/common.js.map +1 -1
  12. package/dist/ai-service/files-api.d.ts +33 -0
  13. package/dist/ai-service/files-api.js +239 -0
  14. package/dist/ai-service/files-api.js.map +1 -0
  15. package/dist/ai-service/github-models.js +0 -2
  16. package/dist/ai-service/github-models.js.map +1 -1
  17. package/dist/ai-service/local-llm.js +0 -4
  18. package/dist/ai-service/local-llm.js.map +1 -1
  19. package/dist/ai-service/openai-responses.js +62 -16
  20. package/dist/ai-service/openai-responses.js.map +1 -1
  21. package/dist/ai-service/openai.js +157 -54
  22. package/dist/ai-service/openai.js.map +1 -1
  23. package/dist/ai-service/service-configurations-types.d.ts +0 -1
  24. package/dist/ai-service/service-configurations.js +19 -20
  25. package/dist/ai-service/service-configurations.js.map +1 -1
  26. package/dist/ai-service/vertex-ai.js +2 -1
  27. package/dist/ai-service/vertex-ai.js.map +1 -1
  28. package/dist/cli/cli-params.js +2 -2
  29. package/dist/cli/cli-params.js.map +1 -1
  30. package/dist/index.d.ts +1 -1
  31. package/dist/index.js +1 -1
  32. package/dist/index.js.map +1 -1
  33. package/dist/main/codegen-types.d.ts +2 -2
  34. package/dist/main/codegen.d.ts +1 -3
  35. package/dist/main/codegen.js +2 -19
  36. package/dist/main/codegen.js.map +1 -1
  37. package/dist/main/common/content-bus-types.d.ts +14 -0
  38. package/dist/main/common/content-bus.d.ts +1 -1
  39. package/dist/main/common/content-bus.js +21 -3
  40. package/dist/main/common/content-bus.js.map +1 -1
  41. package/dist/main/common/user-actions.d.ts +1 -1
  42. package/dist/main/config-types.d.ts +0 -3
  43. package/dist/main/config-types.js.map +1 -1
  44. package/dist/main/config.js +1 -1
  45. package/dist/main/config.js.map +1 -1
  46. package/dist/main/generate-content-functions.d.ts +3 -0
  47. package/dist/main/generate-content-functions.js +19 -0
  48. package/dist/main/generate-content-functions.js.map +1 -0
  49. package/dist/main/plugin-loader.d.ts +1 -1
  50. package/dist/main/ui/backend/endpoints/config-endpoint.js +1 -1
  51. package/dist/main/ui/backend/endpoints/config-endpoint.js.map +1 -1
  52. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js +9 -6
  53. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js.map +1 -1
  54. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +2 -4
  55. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +1 -1
  56. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js +1 -1
  57. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js.map +1 -1
  58. package/dist/main/ui/backend/service.d.ts +5 -4
  59. package/dist/main/ui/backend/service.js +54 -28
  60. package/dist/main/ui/backend/service.js.map +1 -1
  61. package/dist/main/ui/common/api-types.d.ts +1 -2
  62. package/dist/main/ui/common/api-types.js.map +1 -1
  63. package/dist/main/ui/frontend/assets/index-C_k1AhO2.js +3445 -0
  64. package/dist/main/ui/frontend/index.html +1 -1
  65. package/dist/prompt/dynamic-function-generator.d.ts +2 -0
  66. package/dist/prompt/dynamic-function-generator.js +58 -0
  67. package/dist/prompt/dynamic-function-generator.js.map +1 -0
  68. package/dist/prompt/function-calling.js +4 -5
  69. package/dist/prompt/function-calling.js.map +1 -1
  70. package/dist/prompt/function-defs/code-execution.d.ts +7 -0
  71. package/dist/prompt/function-defs/code-execution.js +27 -0
  72. package/dist/prompt/function-defs/code-execution.js.map +1 -0
  73. package/dist/prompt/function-defs/conversation-graph.d.ts +1 -1
  74. package/dist/prompt/function-defs/conversation-graph.js +1 -1
  75. package/dist/prompt/function-defs/conversation-graph.js.map +1 -1
  76. package/dist/prompt/function-defs/iterate.d.ts +20 -0
  77. package/dist/prompt/function-defs/iterate.js +373 -0
  78. package/dist/prompt/function-defs/iterate.js.map +1 -0
  79. package/dist/prompt/prompt-service.js +6 -6
  80. package/dist/prompt/prompt-service.js.map +1 -1
  81. package/dist/prompt/steps/step-codegen-planning.js +6 -2
  82. package/dist/prompt/steps/step-codegen-planning.js.map +1 -1
  83. package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.d.ts +7 -0
  84. package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.js +301 -0
  85. package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.js.map +1 -0
  86. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.d.ts +4 -0
  87. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.js +49 -0
  88. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.js.map +1 -0
  89. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.d.ts +4 -0
  90. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.js +190 -0
  91. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.js.map +1 -0
  92. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.d.ts +4 -0
  93. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.js +139 -0
  94. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.js.map +1 -0
  95. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.d.ts +10 -0
  96. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.js +93 -0
  97. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.js.map +1 -0
  98. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.d.ts +4 -0
  99. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.js +72 -0
  100. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.js.map +1 -0
  101. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.d.ts +10 -0
  102. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.js +125 -0
  103. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.js.map +1 -0
  104. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.d.ts +19 -0
  105. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.js +33 -0
  106. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.js.map +1 -0
  107. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.d.ts +8 -0
  108. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.js +85 -0
  109. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.js.map +1 -0
  110. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.d.ts +6 -0
  111. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.js +122 -0
  112. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.js.map +1 -0
  113. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.d.ts +7 -0
  114. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.js +146 -0
  115. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.js.map +1 -0
  116. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.d.ts +4 -0
  117. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.js +56 -0
  118. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.js.map +1 -0
  119. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.d.ts +4 -0
  120. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.js +56 -0
  121. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.js.map +1 -0
  122. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.d.ts +4 -0
  123. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.js +39 -0
  124. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.js.map +1 -0
  125. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.d.ts +10 -0
  126. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.js +95 -0
  127. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.js.map +1 -0
  128. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.d.ts +2 -0
  129. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.js +96 -0
  130. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.js.map +1 -0
  131. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.d.ts +4 -0
  132. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.js +123 -0
  133. package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.js.map +1 -0
  134. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.d.ts +11 -0
  135. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.js +50 -0
  136. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.js.map +1 -0
  137. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.d.ts +28 -0
  138. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.js +2 -0
  139. package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.js.map +1 -0
  140. package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.d.ts +2 -0
  141. package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.js +202 -0
  142. package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.js.map +1 -0
  143. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.d.ts +4 -0
  144. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.js +15 -0
  145. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.js.map +1 -0
  146. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.d.ts +50 -0
  147. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.js +358 -0
  148. package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.js.map +1 -0
  149. package/dist/prompt/steps/step-iterate/handlers/file-request-utils.d.ts +47 -0
  150. package/dist/prompt/steps/step-iterate/handlers/file-request-utils.js +114 -0
  151. package/dist/prompt/steps/step-iterate/handlers/file-request-utils.js.map +1 -0
  152. package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.d.ts +1 -0
  153. package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.js +133 -0
  154. package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.js.map +1 -0
  155. package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.d.ts +4 -0
  156. package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.js +177 -0
  157. package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.js.map +1 -0
  158. package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.d.ts +20 -0
  159. package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.js +305 -0
  160. package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.js.map +1 -0
  161. package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.d.ts +2 -0
  162. package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.js +40 -0
  163. package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.js.map +1 -0
  164. package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.d.ts +2 -0
  165. package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.js +35 -0
  166. package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.js.map +1 -0
  167. package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.d.ts +2 -0
  168. package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.js +34 -0
  169. package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.js.map +1 -0
  170. package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.d.ts +11 -0
  171. package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.js +503 -0
  172. package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.js.map +1 -0
  173. package/dist/prompt/steps/step-iterate/handlers/handle-create-file.d.ts +2 -0
  174. package/dist/prompt/steps/step-iterate/handlers/handle-create-file.js +159 -0
  175. package/dist/prompt/steps/step-iterate/handlers/handle-create-file.js.map +1 -0
  176. package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.d.ts +2 -0
  177. package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.js +30 -0
  178. package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.js.map +1 -0
  179. package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.d.ts +2 -0
  180. package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.js +280 -0
  181. package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.js.map +1 -0
  182. package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.d.ts +8 -0
  183. package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.js +105 -0
  184. package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.js.map +1 -0
  185. package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.d.ts +2 -0
  186. package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.js +110 -0
  187. package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.js.map +1 -0
  188. package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.d.ts +6 -0
  189. package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.js +110 -0
  190. package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.js.map +1 -0
  191. package/dist/prompt/steps/step-iterate/handlers/handle-project-command.d.ts +2 -0
  192. package/dist/prompt/steps/step-iterate/handlers/handle-project-command.js +280 -0
  193. package/dist/prompt/steps/step-iterate/handlers/handle-project-command.js.map +1 -0
  194. package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.d.ts +9 -0
  195. package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.js +94 -0
  196. package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.js.map +1 -0
  197. package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.d.ts +2 -0
  198. package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.js +174 -0
  199. package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.js.map +1 -0
  200. package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.d.ts +9 -0
  201. package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.js +104 -0
  202. package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.js.map +1 -0
  203. package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.d.ts +2 -0
  204. package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.js +149 -0
  205. package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.js.map +1 -0
  206. package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.d.ts +7 -0
  207. package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.js +119 -0
  208. package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.js.map +1 -0
  209. package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.d.ts +2 -0
  210. package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.js +100 -0
  211. package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.js.map +1 -0
  212. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.d.ts +8 -0
  213. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.js +146 -0
  214. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.js.map +1 -0
  215. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.d.ts +8 -0
  216. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.js +197 -0
  217. package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.js.map +1 -0
  218. package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.d.ts +3 -0
  219. package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.js +251 -0
  220. package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.js.map +1 -0
  221. package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.d.ts +2 -0
  222. package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.js +83 -0
  223. package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.js.map +1 -0
  224. package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.d.ts +2 -0
  225. package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.js +185 -0
  226. package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.js.map +1 -0
  227. package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.d.ts +2 -0
  228. package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.js +7 -0
  229. package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.js.map +1 -0
  230. package/dist/prompt/steps/step-iterate/handlers/handle-search-code.d.ts +2 -0
  231. package/dist/prompt/steps/step-iterate/handlers/handle-search-code.js +96 -0
  232. package/dist/prompt/steps/step-iterate/handlers/handle-search-code.js.map +1 -0
  233. package/dist/prompt/steps/step-iterate/handlers/handle-send-message.d.ts +2 -0
  234. package/dist/prompt/steps/step-iterate/handlers/handle-send-message.js +21 -0
  235. package/dist/prompt/steps/step-iterate/handlers/handle-send-message.js.map +1 -0
  236. package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.d.ts +1 -0
  237. package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.js +72 -0
  238. package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.js.map +1 -0
  239. package/dist/prompt/steps/step-iterate/handlers/handle-update-file.d.ts +2 -0
  240. package/dist/prompt/steps/step-iterate/handlers/handle-update-file.js +161 -0
  241. package/dist/prompt/steps/step-iterate/handlers/handle-update-file.js.map +1 -0
  242. package/dist/prompt/steps/step-iterate/handlers/handle-web-search.d.ts +1 -0
  243. package/dist/prompt/steps/step-iterate/handlers/handle-web-search.js +85 -0
  244. package/dist/prompt/steps/step-iterate/handlers/handle-web-search.js.map +1 -0
  245. package/dist/prompt/steps/step-iterate/iterate-handler.d.ts +4 -0
  246. package/dist/prompt/steps/step-iterate/iterate-handler.js +14 -0
  247. package/dist/prompt/steps/step-iterate/iterate-handler.js.map +1 -0
  248. package/dist/prompt/steps/step-iterate/step-iterate-handlers.d.ts +3 -0
  249. package/dist/prompt/steps/step-iterate/step-iterate-handlers.js +5 -0
  250. package/dist/prompt/steps/step-iterate/step-iterate-handlers.js.map +1 -0
  251. package/dist/prompt/steps/step-iterate/step-iterate-types.d.ts +255 -0
  252. package/dist/prompt/steps/step-iterate/step-iterate-types.js +2 -0
  253. package/dist/prompt/steps/step-iterate/step-iterate-types.js.map +1 -0
  254. package/dist/prompt/steps/step-iterate/step-iterate.d.ts +37 -0
  255. package/dist/prompt/steps/step-iterate/step-iterate.js +132 -0
  256. package/dist/prompt/steps/step-iterate/step-iterate.js.map +1 -0
  257. package/dist/prompt/systemprompt.js +6 -6
  258. package/dist/prompt/systemprompt.js.map +1 -1
  259. package/dist/vite-genaicode/code-transformer.d.ts +5 -0
  260. package/dist/vite-genaicode/code-transformer.js +83 -0
  261. package/dist/vite-genaicode/code-transformer.js.map +1 -0
  262. package/dist/vite-genaicode/console-interceptor.d.ts +19 -6
  263. package/dist/vite-genaicode/console-interceptor.js +45 -13
  264. package/dist/vite-genaicode/console-interceptor.js.map +1 -1
  265. package/dist/vite-genaicode/constants.d.ts +3 -0
  266. package/dist/vite-genaicode/constants.js +4 -0
  267. package/dist/vite-genaicode/constants.js.map +1 -0
  268. package/dist/vite-genaicode/dynamic-function-generator.d.ts +2 -0
  269. package/dist/vite-genaicode/dynamic-function-generator.js +47 -0
  270. package/dist/vite-genaicode/dynamic-function-generator.js.map +1 -0
  271. package/dist/vite-genaicode/html-injector.d.ts +6 -0
  272. package/dist/vite-genaicode/html-injector.js +14 -0
  273. package/dist/vite-genaicode/html-injector.js.map +1 -0
  274. package/dist/vite-genaicode/server-manager.d.ts +26 -0
  275. package/dist/vite-genaicode/server-manager.js +91 -0
  276. package/dist/vite-genaicode/server-manager.js.map +1 -0
  277. package/dist/vite-genaicode/vite-genaicode-frontend.js +1 -1
  278. package/dist/vite-genaicode/vite-genaicode-frontend.js.map +1 -1
  279. package/dist/vite-genaicode/vite-genaicode-plugin.d.ts +11 -2
  280. package/dist/vite-genaicode/vite-genaicode-plugin.js +60 -65
  281. package/dist/vite-genaicode/vite-genaicode-plugin.js.map +1 -1
  282. package/package.json +10 -9
  283. package/dist/main/ui/frontend/assets/index-We_MLSaC.js +0 -3405
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker-utils.js","sourceRoot":"","sources":["../../../../../../../src/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { PromptItem } from '../../../../ai-service/common-types.js';
2
+ import { CodegenOptions } from '../../../../main/codegen-types.js';
3
+ /**
4
+ * Checks if a file's content is already provided in the conversation history
5
+ * @param filePath The path of the file to check
6
+ * @param prompt The conversation history
7
+ * @returns true if the file content is already available in the history
8
+ */
9
+ export declare function isFileContentAlreadyProvided(filePath: string, prompt: PromptItem[]): boolean;
10
+ /**
11
+ * Categorizes requested files into legitimate and illegitimate files
12
+ * @param requestedFiles Array of file paths to categorize
13
+ * @returns Object containing arrays of legitimate and illegitimate file paths
14
+ */
15
+ export declare function categorizeLegitimateFiles(requestedFiles: string[]): {
16
+ legitimateFiles: string[];
17
+ illegitimateFiles: string[];
18
+ };
19
+ /**
20
+ * Checks if a file path is legitimate (exists in the source files)
21
+ * @param filePath The path of the file to check
22
+ * @returns true if the file path is legitimate
23
+ */
24
+ export declare function isFilePathLegitimate(filePath: string): boolean;
25
+ /**
26
+ * Process file requests by checking if they are already provided and categorizing them
27
+ * @param requestedFiles Array of file paths to process
28
+ * @param prompt The conversation history
29
+ * @param options Codegen options
30
+ * @returns Processed file request information
31
+ */
32
+ export declare function processFileRequests(requestedFiles: string[], prompt: PromptItem[], options: CodegenOptions): {
33
+ requestedFiles: string[];
34
+ alreadyProvidedFiles: string[];
35
+ legitimateFiles: string[];
36
+ illegitimateFiles: string[];
37
+ };
38
+ /**
39
+ * Generate a user-friendly message about file processing status
40
+ * @param alreadyProvidedFiles Files already provided in conversation
41
+ * @param requestedFiles Files that were requested
42
+ * @param legitimateFiles Files that are legitimate and will be processed
43
+ * @param illegitimateFiles Files that are not legitimate
44
+ * @param type Type of content being provided ('content' or 'fragments')
45
+ * @returns A formatted message string
46
+ */
47
+ export declare function generateFilesContentPrompt(alreadyProvidedFiles: string[], requestedFiles: string[], legitimateFiles: string[], illegitimateFiles: string[], type: 'content' | 'fragments'): string;
@@ -0,0 +1,114 @@
1
+ import { getSourceFiles } from '../../../../files/find-files.js';
2
+ import { refreshFiles } from '../../../../files/find-files.js';
3
+ import { getExpandedContextPaths } from '../../../../files/source-code-utils.js';
4
+ import { putSystemMessage } from '../../../../main/common/content-bus.js';
5
+ /**
6
+ * Checks if a file's content is already provided in the conversation history
7
+ * @param filePath The path of the file to check
8
+ * @param prompt The conversation history
9
+ * @returns true if the file content is already available in the history
10
+ */
11
+ export function isFileContentAlreadyProvided(filePath, prompt) {
12
+ return prompt.some((item) => {
13
+ if (item.type !== 'user' || !item.functionResponses) {
14
+ return false;
15
+ }
16
+ return item.functionResponses.some((response) => {
17
+ if (response.name !== 'getSourceCode' || !response.content) {
18
+ return false;
19
+ }
20
+ try {
21
+ const sourceCodeMap = JSON.parse(response.content);
22
+ return (sourceCodeMap[filePath] &&
23
+ sourceCodeMap[filePath] &&
24
+ 'content' in sourceCodeMap[filePath] &&
25
+ sourceCodeMap[filePath].content !== null);
26
+ }
27
+ catch (error) {
28
+ console.warn('Error parsing getSourceCode response:', error);
29
+ return false;
30
+ }
31
+ });
32
+ });
33
+ }
34
+ /**
35
+ * Categorizes requested files into legitimate and illegitimate files
36
+ * @param requestedFiles Array of file paths to categorize
37
+ * @returns Object containing arrays of legitimate and illegitimate file paths
38
+ */
39
+ export function categorizeLegitimateFiles(requestedFiles) {
40
+ const legitimateFiles = [];
41
+ const illegitimateFiles = [];
42
+ requestedFiles.forEach((filePath) => {
43
+ if (isFilePathLegitimate(filePath)) {
44
+ legitimateFiles.push(filePath);
45
+ }
46
+ else {
47
+ illegitimateFiles.push(filePath);
48
+ }
49
+ });
50
+ return { legitimateFiles, illegitimateFiles };
51
+ }
52
+ /**
53
+ * Checks if a file path is legitimate (exists in the source files)
54
+ * @param filePath The path of the file to check
55
+ * @returns true if the file path is legitimate
56
+ */
57
+ export function isFilePathLegitimate(filePath) {
58
+ return getSourceFiles().includes(filePath);
59
+ }
60
+ /**
61
+ * Process file requests by checking if they are already provided and categorizing them
62
+ * @param requestedFiles Array of file paths to process
63
+ * @param prompt The conversation history
64
+ * @param options Codegen options
65
+ * @returns Processed file request information
66
+ */
67
+ export function processFileRequests(requestedFiles, prompt, options) {
68
+ // Expand context paths
69
+ requestedFiles = getExpandedContextPaths(requestedFiles, options);
70
+ // Check which files are already provided in the conversation history
71
+ const alreadyProvidedFiles = requestedFiles.filter((file) => isFileContentAlreadyProvided(file, prompt));
72
+ // Filter out already provided files
73
+ requestedFiles = requestedFiles.filter((file) => !isFileContentAlreadyProvided(file, prompt));
74
+ // Refresh files in case new files appeared
75
+ refreshFiles();
76
+ // Categorize files into legitimate and illegitimate
77
+ const { legitimateFiles, illegitimateFiles } = categorizeLegitimateFiles(requestedFiles);
78
+ putSystemMessage('Processing file requests', {
79
+ requestedFiles,
80
+ alreadyProvidedFiles,
81
+ legitimateFiles,
82
+ illegitimateFiles,
83
+ });
84
+ return {
85
+ requestedFiles,
86
+ alreadyProvidedFiles,
87
+ legitimateFiles,
88
+ illegitimateFiles,
89
+ };
90
+ }
91
+ /**
92
+ * Generate a user-friendly message about file processing status
93
+ * @param alreadyProvidedFiles Files already provided in conversation
94
+ * @param requestedFiles Files that were requested
95
+ * @param legitimateFiles Files that are legitimate and will be processed
96
+ * @param illegitimateFiles Files that are not legitimate
97
+ * @param type Type of content being provided ('content' or 'fragments')
98
+ * @returns A formatted message string
99
+ */
100
+ export function generateFilesContentPrompt(alreadyProvidedFiles, requestedFiles, legitimateFiles, illegitimateFiles, type) {
101
+ return ((alreadyProvidedFiles.length > 0
102
+ ? `Some files were already provided in the conversation history:
103
+ ${alreadyProvidedFiles.map((path) => `- ${path}`).join('\n')}
104
+
105
+ Providing ${type} for the remaining files:
106
+ ${requestedFiles.map((path) => `- ${path}`).join('\n')}`
107
+ : `All requested file ${type} have been provided:
108
+ ${legitimateFiles.map((path) => `- ${path}`).join('\n')}`) +
109
+ (illegitimateFiles.length > 0
110
+ ? `\n\nSome files are not legitimate and their ${type} cannot be provided:
111
+ ${illegitimateFiles.map((path) => `- ${path}`).join('\n')}`
112
+ : ''));
113
+ }
114
+ //# sourceMappingURL=file-request-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-request-utils.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-iterate/handlers/file-request-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ import { ModelType } from '../../../../ai-service/common-types.js';
2
+ import { putSystemMessage } from '../../../../main/common/content-bus.js';
3
+ import { getFunctionDefs } from '../../../function-calling.js';
4
+ import { getFilesApiProvider } from '../../../../ai-service/files-api.js';
5
+ import { registerActionHandler } from '../step-iterate-handlers.js';
6
+ const handleCodeExecution = async ({ prompt, options, generateContentFn, iterateCall, }) => {
7
+ // Step 1: Infer codeExecution parameters from context
8
+ const inferRequest = [
9
+ [
10
+ ...prompt,
11
+ {
12
+ type: 'assistant',
13
+ text: iterateCall.args.message,
14
+ },
15
+ {
16
+ type: 'user',
17
+ text: 'Please infer the files needed, objective, and desired result for code execution',
18
+ },
19
+ ],
20
+ {
21
+ functionDefs: getFunctionDefs(),
22
+ requiredFunctionName: 'codeExecution',
23
+ temperature: 0.7,
24
+ modelType: ModelType.CHEAP,
25
+ expectedResponseType: {
26
+ text: false,
27
+ functionCall: true,
28
+ media: false,
29
+ },
30
+ },
31
+ options,
32
+ ];
33
+ putSystemMessage('Inferring code execution parameters...');
34
+ const inferResponse = await generateContentFn(...inferRequest);
35
+ const codeExecutionCall = inferResponse
36
+ .filter((item) => item.type === 'functionCall')
37
+ .map((item) => item.functionCall).find((call) => call.name === 'codeExecution');
38
+ if (!codeExecutionCall) {
39
+ putSystemMessage('No code execution call received, skipping code execution.');
40
+ prompt.push({
41
+ type: 'assistant',
42
+ text: iterateCall.args.message,
43
+ }, {
44
+ type: 'user',
45
+ text: 'Code execution failed: No parameters could be inferred',
46
+ });
47
+ return {
48
+ items: [],
49
+ breakLoop: false,
50
+ };
51
+ }
52
+ const { filePaths, objective, desiredResult } = codeExecutionCall.args;
53
+ putSystemMessage(`Inferred code execution parameters`, { filePaths, objective, desiredResult });
54
+ // Step 2: Upload files
55
+ const uploadedFiles = [];
56
+ if (filePaths.length > 0) {
57
+ try {
58
+ const filesApi = getFilesApiProvider(options.aiService);
59
+ for (const filePath of filePaths) {
60
+ try {
61
+ putSystemMessage(`Uploading file: ${filePath}...`);
62
+ const result = await filesApi.uploadFile(filePath);
63
+ uploadedFiles.push(result);
64
+ putSystemMessage(`Uploaded file: ${result.filename} → ${result.fileId}`);
65
+ }
66
+ catch (error) {
67
+ putSystemMessage(`Failed to upload ${filePath}: ${error.message}`);
68
+ }
69
+ }
70
+ }
71
+ catch (error) {
72
+ putSystemMessage(`Files API not supported or failed for service ${options.aiService}: ${error.message}`);
73
+ }
74
+ }
75
+ // Step 3: Execute code with inferred parameters
76
+ const executionResponse = await generateContentFn([
77
+ ...prompt,
78
+ {
79
+ type: 'assistant',
80
+ text: iterateCall.args.message,
81
+ },
82
+ {
83
+ type: 'user',
84
+ text: `Objective: ${objective}\n\nDesired result: ${desiredResult}`,
85
+ },
86
+ ], {
87
+ modelType: ModelType.CHEAP,
88
+ expectedResponseType: {
89
+ text: true,
90
+ codeExecution: true,
91
+ functionCall: false,
92
+ },
93
+ fileIds: uploadedFiles.map((f) => f.fileId),
94
+ }, options);
95
+ // Step 4: Build result summary
96
+ const textParts = executionResponse
97
+ .filter((p) => p.type === 'text')
98
+ .map((p) => p.text)
99
+ .join('\n');
100
+ const codeExecutionResultPart = executionResponse.find((p) => p.type === 'codeExecutionResult');
101
+ const executionResult = codeExecutionResultPart && codeExecutionResultPart.type === 'codeExecutionResult'
102
+ ? {
103
+ outcome: codeExecutionResultPart.outcome,
104
+ output: codeExecutionResultPart.output,
105
+ outputFiles: codeExecutionResultPart.outputFiles,
106
+ }
107
+ : undefined;
108
+ putSystemMessage('Code execution completed', {
109
+ text: textParts,
110
+ executionResult,
111
+ });
112
+ // Step 5: Push function call + response to prompt
113
+ prompt.push({
114
+ type: 'assistant',
115
+ text: iterateCall.args.message,
116
+ functionCalls: [codeExecutionCall],
117
+ }, {
118
+ type: 'user',
119
+ functionResponses: [
120
+ {
121
+ name: 'codeExecution',
122
+ call_id: codeExecutionCall.id,
123
+ content: JSON.stringify({ text: textParts, executionResult }),
124
+ },
125
+ ],
126
+ });
127
+ return {
128
+ items: [],
129
+ breakLoop: false,
130
+ };
131
+ };
132
+ registerActionHandler('codeExecution', handleCodeExecution);
133
+ //# sourceMappingURL=handle-code-execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-code-execution.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-iterate/handlers/handle-code-execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { ActionHandlerProps, ActionResult } from '../step-iterate-types.js';
2
+ export declare const CODEGEN_SUMMARY_GENERATED_MESSAGE = "Codegen summary is generated. Would you like to proceed with the code changes?";
3
+ export declare const CODEGEN_SUMMARY_APPROVED = "Accept codegen summary and continue";
4
+ export declare function handleCodeGeneration({ generateContentFn, generateImageFn, waitIfPaused, prompt, options, }: ActionHandlerProps): Promise<ActionResult>;
@@ -0,0 +1,177 @@
1
+ import { putAssistantMessage, putSystemMessage, putUserMessage } from '../../../../main/common/content-bus.js';
2
+ import { askUserForConfirmation, askUserForConfirmationWithAnswer } from '../../../../main/common/user-actions.js';
3
+ import { getFunctionDefs } from '../../../function-calling.js';
4
+ import { CODEGEN_SUMMARY_PROMPT } from '../../../static-prompts.js';
5
+ import { executeStepCodegenPlanning } from '../../step-codegen-planning.js';
6
+ import { generateCodegenSummary } from '../../step-generate-codegen-summary.js';
7
+ import { processFileUpdates } from '../../step-process-file-updates.js';
8
+ import { StepResult } from '../../steps-types.js';
9
+ import { updateFiles } from '../../../../files/update-files.js';
10
+ import { executeStepContextCompression } from '../../step-context-compression.js';
11
+ import { registerActionHandler } from '../step-iterate-handlers.js';
12
+ export const CODEGEN_SUMMARY_GENERATED_MESSAGE = 'Codegen summary is generated. Would you like to proceed with the code changes?';
13
+ export const CODEGEN_SUMMARY_APPROVED = 'Accept codegen summary and continue';
14
+ registerActionHandler('codeGeneration', handleCodeGeneration);
15
+ export async function handleCodeGeneration({ generateContentFn, generateImageFn, waitIfPaused, prompt, options, }) {
16
+ const planningResult = await executeStepCodegenPlanning(generateContentFn, prompt, options);
17
+ if (planningResult === StepResult.BREAK) {
18
+ return {
19
+ breakLoop: true,
20
+ items: [],
21
+ };
22
+ }
23
+ // Ask user to confirm the planning result
24
+ const planningConfirmation = await askUserForConfirmationWithAnswer(CODEGEN_SUMMARY_PROMPT, 'Accept plan', 'Reject plan', true, options);
25
+ putAssistantMessage(CODEGEN_SUMMARY_PROMPT);
26
+ prompt.push({
27
+ type: 'assistant',
28
+ text: CODEGEN_SUMMARY_PROMPT,
29
+ });
30
+ if (!planningConfirmation.confirmed) {
31
+ // User rejected the planning, return to conversation
32
+ if (planningConfirmation.answer) {
33
+ putUserMessage(planningConfirmation.answer);
34
+ }
35
+ putSystemMessage('Planning rejected. Returning to conversation.');
36
+ prompt.push({
37
+ type: 'user',
38
+ text: 'Planning rejected. Returning to conversation.' +
39
+ (planningConfirmation.answer ? `\n\n${planningConfirmation.answer}` : ''),
40
+ });
41
+ return {
42
+ breakLoop: false,
43
+ items: [],
44
+ };
45
+ }
46
+ if (planningConfirmation.answer) {
47
+ putUserMessage(planningConfirmation.answer);
48
+ }
49
+ putSystemMessage('Planning accepted. Proceeding with code generation.');
50
+ // Add user's planning confirmation answer to prompt history
51
+ prompt.push({
52
+ type: 'user',
53
+ text: 'Accept planning and continue.' + (planningConfirmation.answer ? `\n\n${planningConfirmation.answer}` : ''),
54
+ });
55
+ try {
56
+ // First step: Generate and validate codegen summary
57
+ const { codegenSummaryRequest, baseResult } = await generateCodegenSummary(generateContentFn, prompt, getFunctionDefs(), options);
58
+ // Ask user to confirm the codegen summary
59
+ const codegenSummaryConfirmation = await askUserForConfirmationWithAnswer(CODEGEN_SUMMARY_GENERATED_MESSAGE, 'Accept codegen summary', 'Reject codegen summary', true, options);
60
+ putAssistantMessage(CODEGEN_SUMMARY_GENERATED_MESSAGE);
61
+ if (codegenSummaryConfirmation.answer) {
62
+ putUserMessage(codegenSummaryConfirmation.answer);
63
+ }
64
+ if (!codegenSummaryConfirmation.confirmed) {
65
+ putSystemMessage('Codegen summary rejected. Returning to conversation.');
66
+ prompt.push({
67
+ type: 'assistant',
68
+ text: CODEGEN_SUMMARY_GENERATED_MESSAGE,
69
+ }, {
70
+ type: 'user',
71
+ text: 'Codegen summary rejected. Returning to conversation.' +
72
+ (codegenSummaryConfirmation.answer ? `\n\n${codegenSummaryConfirmation.answer}` : ''),
73
+ });
74
+ return {
75
+ breakLoop: false,
76
+ items: [],
77
+ };
78
+ }
79
+ putSystemMessage('Codegen summary accepted. Proceeding with code generation.');
80
+ prompt.push({
81
+ type: 'assistant',
82
+ text: CODEGEN_SUMMARY_GENERATED_MESSAGE,
83
+ }, {
84
+ type: 'user',
85
+ text: CODEGEN_SUMMARY_APPROVED +
86
+ (codegenSummaryConfirmation.answer ? `\n\n${codegenSummaryConfirmation.answer}` : ''),
87
+ });
88
+ // Second step: Process file updates
89
+ const updateResults = await processFileUpdates(generateContentFn, prompt, getFunctionDefs(), options, codegenSummaryRequest, waitIfPaused, generateImageFn);
90
+ const functionCalls = [...baseResult, ...updateResults];
91
+ const confirmApply = await askUserForConfirmationWithAnswer('Code changes are generated, now what?', 'Apply code changes', 'Reject code changes', true, options);
92
+ putAssistantMessage('Code changes are generated, now what?');
93
+ if (confirmApply.confirmed) {
94
+ if (confirmApply.answer) {
95
+ putUserMessage(confirmApply.answer);
96
+ }
97
+ prompt.push({
98
+ type: 'assistant',
99
+ text: 'Code changes are generated, now what?',
100
+ }, {
101
+ type: 'user',
102
+ text: 'Apply code changes. ' + confirmApply.answer,
103
+ });
104
+ putSystemMessage('Applying code changes...');
105
+ if (options.dryRun) {
106
+ putSystemMessage('Dry run mode, not updating files');
107
+ }
108
+ else {
109
+ // Apply the code changes
110
+ const failedOperations = await updateFiles(functionCalls.filter((call) => call.name !== 'explanation' && call.name !== 'getSourceCode' && call.name !== 'codegenSummary'), options);
111
+ if (failedOperations.length > 0) {
112
+ putSystemMessage(`Code changes applied, but some operations failed for: ${failedOperations.map((call) => call.args?.filePath).join(', ')}`);
113
+ }
114
+ else {
115
+ putSystemMessage('Code changes applied successfully');
116
+ }
117
+ }
118
+ }
119
+ else {
120
+ if (confirmApply.answer) {
121
+ putUserMessage(confirmApply.answer);
122
+ }
123
+ putSystemMessage('Rejecting code changes...');
124
+ prompt.push({
125
+ type: 'assistant',
126
+ text: 'Code changes are generated, now what?',
127
+ }, {
128
+ type: 'user',
129
+ text: 'Reject code changes. ' + confirmApply.answer,
130
+ });
131
+ }
132
+ if (!(await askUserForConfirmation('Code generation completed, do you want to continue conversation?', false, options, 'Continue conversation', 'End conversation')).confirmed) {
133
+ return {
134
+ breakLoop: true,
135
+ stepResult: functionCalls,
136
+ items: [],
137
+ };
138
+ }
139
+ putSystemMessage('Continuing conversation...');
140
+ const compressionResult = await executeStepContextCompression(generateContentFn, prompt, options);
141
+ prompt.push({
142
+ type: 'assistant',
143
+ text: `Code generation completed, changes ${confirmApply.confirmed ? 'were accepted and applied' : 'changes were rejected and not applied'}. Should we continue the conversation?`,
144
+ }, {
145
+ type: 'user',
146
+ text: 'Thank you for doing the code generation, now lets continue the conversation.',
147
+ });
148
+ return {
149
+ breakLoop: compressionResult !== StepResult.CONTINUE,
150
+ stepResult: functionCalls,
151
+ items: [],
152
+ };
153
+ }
154
+ catch (error) {
155
+ putSystemMessage(`Error during code generation: ${error instanceof Error ? error.message : 'Unknown error'}`);
156
+ const tryAgainConfirm = await askUserForConfirmation('An error occurred during code generation. Would you like to try again or continue the conversation?', false, options, 'Try again', 'Continue conversation');
157
+ return {
158
+ breakLoop: !tryAgainConfirm.confirmed,
159
+ items: [
160
+ {
161
+ assistant: {
162
+ type: 'assistant',
163
+ text: 'An error occurred during code generation. Would you like to try again or continue the conversation?',
164
+ functionCalls: [],
165
+ },
166
+ user: {
167
+ type: 'user',
168
+ text: tryAgainConfirm.confirmed
169
+ ? 'Lets continue the conversation'
170
+ : 'Error occurred during code generation.',
171
+ },
172
+ },
173
+ ],
174
+ };
175
+ }
176
+ }
177
+ //# sourceMappingURL=handle-code-generation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-code-generation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-iterate/handlers/handle-code-generation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { PromptItem, FunctionDef } from '../../../../ai-service/common-types.js';
2
+ import { ActionHandler } from '../step-iterate-types.js';
3
+ /**
4
+ * Constructs the prompt for the initial planning phase of a compound action.
5
+ * @param basePrompt The current conversation history.
6
+ * @param assistantMessage The assistant's message initiating the compound action.
7
+ * @param compoundActionDef The function definition for the compound action planner.
8
+ * @returns The prompt items for the planning phase.
9
+ */
10
+ export declare function constructCompoundActionPlanningPrompt(basePrompt: PromptItem[], assistantMessage: string | undefined, compoundActionDef: FunctionDef): PromptItem[];
11
+ /**
12
+ * Constructs the prompt for inferring parameters for a specific action within a compound action.
13
+ * @param basePrompt The current conversation history (which includes prior planning and parameter inferences).
14
+ * @param actionId The unique ID of the current action.
15
+ * @param actionName The name of the current action (e.g., "createFile").
16
+ * @param operationDef The function definition for the current action.
17
+ * @returns The prompt items for the parameter inference phase.
18
+ */
19
+ export declare function constructCompoundActionParameterInferencePrompt(basePrompt: PromptItem[], actionId: string, actionName: string, operationDef: FunctionDef): PromptItem[];
20
+ export declare const handleCompoundAction: ActionHandler;