genaicode 0.9.5 → 0.10.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 (171) hide show
  1. package/dist/ai-service/ai-studio.d.ts +1 -1
  2. package/dist/ai-service/ai-studio.js +114 -31
  3. package/dist/ai-service/ai-studio.js.map +1 -1
  4. package/dist/ai-service/anthropic.js +82 -32
  5. package/dist/ai-service/anthropic.js.map +1 -1
  6. package/dist/ai-service/common-types.d.ts +28 -7
  7. package/dist/ai-service/local-llm.d.ts +6 -0
  8. package/dist/ai-service/local-llm.js +77 -0
  9. package/dist/ai-service/local-llm.js.map +1 -0
  10. package/dist/ai-service/openai.d.ts +3 -13
  11. package/dist/ai-service/openai.js +107 -51
  12. package/dist/ai-service/openai.js.map +1 -1
  13. package/dist/ai-service/service-configurations-types.d.ts +14 -4
  14. package/dist/ai-service/service-configurations-types.js +0 -4
  15. package/dist/ai-service/service-configurations-types.js.map +1 -1
  16. package/dist/ai-service/service-configurations.d.ts +9 -1
  17. package/dist/ai-service/service-configurations.js +110 -14
  18. package/dist/ai-service/service-configurations.js.map +1 -1
  19. package/dist/ai-service/vertex-ai-claude.d.ts +1 -1
  20. package/dist/ai-service/vertex-ai-claude.js +80 -39
  21. package/dist/ai-service/vertex-ai-claude.js.map +1 -1
  22. package/dist/ai-service/vertex-ai.d.ts +1 -1
  23. package/dist/ai-service/vertex-ai.js +261 -155
  24. package/dist/ai-service/vertex-ai.js.map +1 -1
  25. package/dist/cli/cli-options.js +1 -1
  26. package/dist/cli/cli-options.js.map +1 -1
  27. package/dist/cli/validate-cli-params.js +1 -1
  28. package/dist/cli/validate-cli-params.js.map +1 -1
  29. package/dist/main/codegen-utils.js +9 -1
  30. package/dist/main/codegen-utils.js.map +1 -1
  31. package/dist/main/codegen.js +2 -0
  32. package/dist/main/codegen.js.map +1 -1
  33. package/dist/main/common/user-actions.d.ts +2 -0
  34. package/dist/main/common/user-actions.js.map +1 -1
  35. package/dist/main/config-schema.js +16 -0
  36. package/dist/main/config-schema.js.map +1 -1
  37. package/dist/main/config-types.d.ts +15 -0
  38. package/dist/main/config.js +1 -0
  39. package/dist/main/config.js.map +1 -1
  40. package/dist/main/interactive/select-ai-service.js +1 -0
  41. package/dist/main/interactive/select-ai-service.js.map +1 -1
  42. package/dist/main/plugin-loader.d.ts +1 -2
  43. package/dist/main/plugin-loader.js.map +1 -1
  44. package/dist/main/ui/backend/endpoints/question-endpoint.js +34 -3
  45. package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -1
  46. package/dist/main/ui/backend/service.d.ts +6 -5
  47. package/dist/main/ui/backend/service.js +54 -17
  48. package/dist/main/ui/backend/service.js.map +1 -1
  49. package/dist/main/ui/common/api-types.d.ts +1 -0
  50. package/dist/main/ui/frontend/assets/index-BlVGo0E6.js +1902 -0
  51. package/dist/main/ui/frontend/index.html +2 -2
  52. package/dist/project-profiles/types.d.ts +1 -1
  53. package/dist/project-profiles/types.js +1 -1
  54. package/dist/project-profiles/types.js.map +1 -1
  55. package/dist/prompt/function-calling.js +6 -0
  56. package/dist/prompt/function-calling.js.map +1 -1
  57. package/dist/prompt/function-defs/ask-question.js +8 -4
  58. package/dist/prompt/function-defs/ask-question.js.map +1 -1
  59. package/dist/prompt/function-defs/conversation-summary.d.ts +2 -0
  60. package/dist/prompt/function-defs/conversation-summary.js +15 -0
  61. package/dist/prompt/function-defs/conversation-summary.js.map +1 -0
  62. package/dist/prompt/function-defs/explore-external-directories.d.ts +16 -0
  63. package/dist/prompt/function-defs/explore-external-directories.js +48 -0
  64. package/dist/prompt/function-defs/explore-external-directories.js.map +1 -0
  65. package/dist/prompt/function-defs/read-external-files.d.ts +9 -0
  66. package/dist/prompt/function-defs/read-external-files.js +30 -0
  67. package/dist/prompt/function-defs/read-external-files.js.map +1 -0
  68. package/dist/prompt/limits.js +1 -1
  69. package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js +44 -41
  70. package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js.map +1 -1
  71. package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js +11 -11
  72. package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js.map +1 -1
  73. package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js +13 -13
  74. package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js.map +1 -1
  75. package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js +60 -28
  76. package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js.map +1 -1
  77. package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js +88 -88
  78. package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js.map +1 -1
  79. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.d.ts +1 -1
  80. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js +15 -17
  81. package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js.map +1 -1
  82. package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.d.ts +2 -0
  83. package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js +277 -0
  84. package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js.map +1 -0
  85. package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js +13 -1
  86. package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js.map +1 -1
  87. package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js +13 -1
  88. package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js.map +1 -1
  89. package/dist/prompt/steps/step-ask-question/handlers/handle-lint.d.ts +1 -1
  90. package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js +54 -61
  91. package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js.map +1 -1
  92. package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js +22 -10
  93. package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js.map +1 -1
  94. package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js +13 -1
  95. package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js.map +1 -1
  96. package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js +13 -1
  97. package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js.map +1 -1
  98. package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.d.ts +2 -0
  99. package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js +144 -0
  100. package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js.map +1 -0
  101. package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js +27 -6
  102. package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js.map +1 -1
  103. package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js +13 -1
  104. package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js.map +1 -1
  105. package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js +14 -5
  106. package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js.map +1 -1
  107. package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js +26 -2
  108. package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js.map +1 -1
  109. package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js +13 -1
  110. package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js.map +1 -1
  111. package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js +14 -2
  112. package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js.map +1 -1
  113. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js +1 -0
  114. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js.map +1 -1
  115. package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js +71 -75
  116. package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js.map +1 -1
  117. package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +5 -1
  118. package/dist/prompt/steps/step-ask-question/step-ask-question.d.ts +2 -0
  119. package/dist/prompt/steps/step-ask-question/step-ask-question.js +14 -7
  120. package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
  121. package/dist/prompt/steps/step-codegen-planning.js +14 -5
  122. package/dist/prompt/steps/step-codegen-planning.js.map +1 -1
  123. package/dist/prompt/steps/step-context-compression.js +14 -5
  124. package/dist/prompt/steps/step-context-compression.js.map +1 -1
  125. package/dist/prompt/steps/step-context-optimization.js +10 -5
  126. package/dist/prompt/steps/step-context-optimization.js.map +1 -1
  127. package/dist/prompt/steps/step-generate-codegen-summary.js +14 -5
  128. package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
  129. package/dist/prompt/steps/step-generate-summary.d.ts +6 -0
  130. package/dist/prompt/steps/step-generate-summary.js +36 -16
  131. package/dist/prompt/steps/step-generate-summary.js.map +1 -1
  132. package/dist/prompt/steps/step-history-update.js +14 -5
  133. package/dist/prompt/steps/step-history-update.js.map +1 -1
  134. package/dist/prompt/steps/step-process-file-updates.js +10 -5
  135. package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
  136. package/dist/prompt/steps/step-summarization.js +14 -2
  137. package/dist/prompt/steps/step-summarization.js.map +1 -1
  138. package/dist/prompt/steps/step-validate-recover.d.ts +2 -4
  139. package/dist/prompt/steps/step-validate-recover.js +18 -9
  140. package/dist/prompt/steps/step-validate-recover.js.map +1 -1
  141. package/dist/prompt/steps/step-verify-patch.js +14 -5
  142. package/dist/prompt/steps/step-verify-patch.js.map +1 -1
  143. package/dist/prompt/systemprompt.js +5 -3
  144. package/dist/prompt/systemprompt.js.map +1 -1
  145. package/package.json +9 -9
  146. package/dist/main/ui/frontend/assets/index-Dizqxzws.js +0 -1814
  147. package/dist/prompt/steps/step-ask-question/handlers/code-generation.d.ts +0 -4
  148. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js +0 -167
  149. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js.map +0 -1
  150. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.d.ts +0 -2
  151. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js +0 -34
  152. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js.map +0 -1
  153. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.d.ts +0 -2
  154. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js +0 -32
  155. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js.map +0 -1
  156. package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.d.ts +0 -1
  157. package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.js +0 -251
  158. package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.js.map +0 -1
  159. package/dist/prompt/steps/step-ask-question/handlers/lint.d.ts +0 -6
  160. package/dist/prompt/steps/step-ask-question/handlers/lint.js +0 -103
  161. package/dist/prompt/steps/step-ask-question/handlers/lint.js.map +0 -1
  162. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.d.ts +0 -2
  163. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js +0 -82
  164. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js.map +0 -1
  165. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.d.ts +0 -8
  166. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js +0 -179
  167. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js.map +0 -1
  168. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.d.ts +0 -2
  169. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js +0 -69
  170. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js.map +0 -1
  171. /package/dist/main/ui/frontend/assets/{index-S_ocA1xG.css → index-5QDg_0vR.css} +0 -0
@@ -75,22 +75,21 @@ registerActionHandler('conversationGraph', handleConversationGraph);
75
75
  export async function handleConversationGraph({ askQuestionCall, prompt, options, generateContentFn, generateImageFn, waitIfPaused, }) {
76
76
  try {
77
77
  const userConfirmation = await askUserForConfirmationWithAnswer('The assistant wants to perform a conversation graph. Do you want to proceed?', 'Run conversation graph', 'Decline', true, options);
78
+ if (userConfirmation.answer) {
79
+ putUserMessage(userConfirmation.answer);
80
+ }
78
81
  if (!userConfirmation.confirmed) {
79
82
  putSystemMessage('Conversation graph declined.');
83
+ prompt.push({
84
+ type: 'assistant',
85
+ text: askQuestionCall.args?.message ?? '',
86
+ }, {
87
+ type: 'user',
88
+ text: 'Declined conversation graph. ' + (userConfirmation.answer ? `\n\n${userConfirmation.answer}` : ''),
89
+ });
80
90
  return {
81
91
  breakLoop: false,
82
- items: [
83
- {
84
- assistant: {
85
- type: 'assistant',
86
- text: askQuestionCall.args?.message ?? '',
87
- },
88
- user: {
89
- type: 'user',
90
- text: 'Declined conversation graph. ' + userConfirmation.answer,
91
- },
92
- },
93
- ],
92
+ items: [],
94
93
  };
95
94
  }
96
95
  putSystemMessage('Generating conversation graph...');
@@ -103,9 +102,21 @@ export async function handleConversationGraph({ askQuestionCall, prompt, options
103
102
  },
104
103
  {
105
104
  type: 'user',
106
- text: CONVERSATION_GRAPH_PROMPT,
105
+ text: CONVERSATION_GRAPH_PROMPT + (userConfirmation.answer ? `\n\n${userConfirmation.answer}` : ''),
106
+ },
107
+ ], {
108
+ functionDefs: getFunctionDefs(),
109
+ requiredFunctionName: 'conversationGraph',
110
+ temperature: 0.7,
111
+ modelType: ModelType.DEFAULT,
112
+ expectedResponseType: {
113
+ text: false,
114
+ functionCall: true,
115
+ media: false,
107
116
  },
108
- ], getFunctionDefs(), 'conversationGraph', 0.7, ModelType.DEFAULT, options));
117
+ }, options))
118
+ .filter((item) => item.type === 'functionCall')
119
+ .map((item) => item.functionCall);
109
120
  prompt.push({
110
121
  type: 'assistant',
111
122
  text: askQuestionCall.args?.message ?? '',
@@ -129,20 +140,17 @@ export async function handleConversationGraph({ askQuestionCall, prompt, options
129
140
  // Start with the first node
130
141
  let currentNode = nodes.find((node) => node.id === entryNode);
131
142
  if (!currentNode) {
143
+ putSystemMessage('Error occurred during conversation graph execution.');
144
+ prompt.push({
145
+ type: 'assistant',
146
+ text: askQuestionCall.args?.message ?? '',
147
+ }, {
148
+ type: 'user',
149
+ text: 'Error occurred during conversation graph execution.',
150
+ });
132
151
  return {
133
152
  breakLoop: false,
134
- items: [
135
- {
136
- assistant: {
137
- type: 'assistant',
138
- text: askQuestionCall.args?.message ?? '',
139
- },
140
- user: {
141
- type: 'user',
142
- text: 'Error occurred during conversation graph execution.',
143
- },
144
- },
145
- ],
153
+ items: [],
146
154
  };
147
155
  }
148
156
  // Track visited nodes to prevent cycles
@@ -154,7 +162,19 @@ export async function handleConversationGraph({ askQuestionCall, prompt, options
154
162
  visitedNodes.add(currentNode.id);
155
163
  // Execute the current node
156
164
  putSystemMessage(`Executing node ${currentNode.id}`, currentNode);
157
- const [sendMessage] = (await generateContentFn(prompt, getFunctionDefs(), 'sendMessage', 0.7, ModelType.CHEAP, options));
165
+ const [sendMessage] = (await generateContentFn(prompt, {
166
+ functionDefs: getFunctionDefs(),
167
+ requiredFunctionName: 'sendMessage',
168
+ temperature: 0.7,
169
+ modelType: ModelType.CHEAP,
170
+ expectedResponseType: {
171
+ text: false,
172
+ functionCall: true,
173
+ media: false,
174
+ },
175
+ }, options))
176
+ .filter((item) => item.type === 'functionCall')
177
+ .map((item) => item.functionCall);
158
178
  if (sendMessage.args?.message) {
159
179
  putAssistantMessage(sendMessage.args.message, sendMessage.args);
160
180
  }
@@ -186,7 +206,19 @@ export async function handleConversationGraph({ askQuestionCall, prompt, options
186
206
  type: 'user',
187
207
  text: getEdgeEvaluationPrompt(currentNode, outgoingEdges),
188
208
  },
189
- ], getFunctionDefs(), 'evaluateEdge', 0.7, ModelType.CHEAP, options));
209
+ ], {
210
+ functionDefs: getFunctionDefs(),
211
+ requiredFunctionName: 'evaluateEdge',
212
+ temperature: 0.7,
213
+ modelType: ModelType.CHEAP,
214
+ expectedResponseType: {
215
+ text: false,
216
+ functionCall: true,
217
+ media: false,
218
+ },
219
+ }, options))
220
+ .filter((item) => item.type === 'functionCall')
221
+ .map((item) => item.functionCall);
190
222
  if (!evaluateEdge.args?.shouldTerminate) {
191
223
  putSystemMessage('Conversation graph traversal terminated.');
192
224
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"handle-conversation-graph.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-conversation-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handle-conversation-graph.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-conversation-graph.ts"],"names":[],"mappings":"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"}
@@ -11,26 +11,23 @@ export async function handleCreateFile({ askQuestionCall, options, prompt, gener
11
11
  putSystemMessage('File creation requested.', askQuestionCall);
12
12
  // First confirmation: Ask user if they want to proceed with content generation
13
13
  const generateConfirmation = await askUserForConfirmationWithAnswer('The assistant suggests generating content for a new file. Do you want to proceed with content generation?', 'Generate content', 'Cancel content generation', false, options);
14
+ if (generateConfirmation.answer) {
15
+ putUserMessage(generateConfirmation.answer);
16
+ }
14
17
  if (!generateConfirmation.confirmed) {
18
+ putSystemMessage('Content generation canceled.');
19
+ prompt.push({
20
+ type: 'assistant',
21
+ text: askQuestionCall.args?.message ?? '',
22
+ }, {
23
+ type: 'user',
24
+ text: 'Canceling file creation.' + (generateConfirmation.answer ? ` ${generateConfirmation.answer}` : ''),
25
+ });
15
26
  return {
16
27
  breakLoop: false,
17
- items: [
18
- {
19
- assistant: {
20
- type: 'assistant',
21
- text: askQuestionCall.args.message,
22
- },
23
- user: {
24
- type: 'user',
25
- text: 'Canceling file creation.' + (generateConfirmation.answer ? ` ${generateConfirmation.answer}` : ''),
26
- },
27
- },
28
- ],
28
+ items: [],
29
29
  };
30
30
  }
31
- if (generateConfirmation.answer) {
32
- putUserMessage(generateConfirmation.answer);
33
- }
34
31
  putSystemMessage('Content generation started.');
35
32
  const [createFileCall] = (await generateContentFn([
36
33
  ...prompt,
@@ -43,7 +40,19 @@ export async function handleCreateFile({ askQuestionCall, options, prompt, gener
43
40
  text: 'Ok, please provide the file creation using `createFile` function. Please remember to use absolute file path.' +
44
41
  (generateConfirmation.answer ? ` ${generateConfirmation.answer}` : ''),
45
42
  },
46
- ], getFunctionDefs(), 'createFile', options.temperature ?? 0.7, ModelType.DEFAULT, options));
43
+ ], {
44
+ functionDefs: getFunctionDefs(),
45
+ requiredFunctionName: 'createFile',
46
+ temperature: options.temperature ?? 0.7,
47
+ modelType: ModelType.DEFAULT,
48
+ expectedResponseType: {
49
+ text: false,
50
+ functionCall: true,
51
+ media: false,
52
+ },
53
+ }, options))
54
+ .filter((item) => item.type === 'functionCall')
55
+ .map((item) => item.functionCall);
47
56
  if (!createFileCall || !createFileCall.args) {
48
57
  return {
49
58
  breakLoop: true,
@@ -53,20 +62,17 @@ export async function handleCreateFile({ askQuestionCall, options, prompt, gener
53
62
  const { filePath } = createFileCall.args;
54
63
  const file = getSourceCode({ filterPaths: [filePath], forceAll: true }, options)[filePath];
55
64
  if (file && 'content' in file && file.content) {
65
+ putSystemMessage('File not created. File already exists.', createFileCall);
66
+ prompt.push({
67
+ type: 'assistant',
68
+ text: askQuestionCall.args?.message ?? '',
69
+ }, {
70
+ type: 'user',
71
+ text: 'The file already exists. Please use updateFile function to modify existing files.',
72
+ });
56
73
  return {
57
74
  breakLoop: false,
58
- items: [
59
- {
60
- assistant: {
61
- type: 'assistant',
62
- text: askQuestionCall.args.message,
63
- },
64
- user: {
65
- type: 'user',
66
- text: 'The file already exists. Please use updateFile function to modify existing files.',
67
- },
68
- },
69
- ],
75
+ items: [],
70
76
  };
71
77
  }
72
78
  putSystemMessage(`The assistant has generated content for new file ${filePath}.`, {
@@ -75,84 +81,78 @@ export async function handleCreateFile({ askQuestionCall, options, prompt, gener
75
81
  });
76
82
  // Second confirmation: Ask user if they want to proceed with file creation
77
83
  const applyConfirmation = await askUserForConfirmationWithAnswer('The assistant has generated the file content. Do you want to create the file?', 'Create file', 'Cancel file creation', false, options);
84
+ if (applyConfirmation.answer) {
85
+ putUserMessage(applyConfirmation.answer);
86
+ }
78
87
  if (!applyConfirmation.confirmed) {
79
- return {
80
- breakLoop: false,
81
- items: [
88
+ putSystemMessage('File creation rejected.');
89
+ prompt.push({
90
+ type: 'assistant',
91
+ text: askQuestionCall.args.message,
92
+ functionCalls: [createFileCall],
93
+ }, {
94
+ type: 'user',
95
+ text: 'Rejecting file creation.' + (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : ''),
96
+ functionResponses: [
82
97
  {
83
- assistant: {
84
- type: 'assistant',
85
- text: askQuestionCall.args.message,
86
- functionCalls: [createFileCall],
87
- },
88
- user: {
89
- type: 'user',
90
- text: 'Rejecting file creation.' + (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : ''),
91
- functionResponses: [
92
- {
93
- name: 'createFile',
94
- call_id: createFileCall.id,
95
- content: '',
96
- },
97
- ],
98
- },
98
+ name: 'createFile',
99
+ call_id: createFileCall.id,
100
+ content: '',
99
101
  },
100
102
  ],
103
+ });
104
+ return {
105
+ breakLoop: false,
106
+ items: [],
101
107
  };
102
108
  }
103
109
  try {
110
+ putSystemMessage('Applying file creation');
104
111
  await executeCreateFile(createFileCall.args, options);
105
112
  refreshFiles();
106
- return {
107
- breakLoop: false,
108
- items: [
113
+ prompt.push({
114
+ type: 'assistant',
115
+ text: askQuestionCall.args.message,
116
+ functionCalls: [createFileCall],
117
+ }, {
118
+ type: 'user',
119
+ text: 'Accepting file creation.' + (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : ''),
120
+ functionResponses: [
109
121
  {
110
- assistant: {
111
- type: 'assistant',
112
- text: askQuestionCall.args.message,
113
- functionCalls: [createFileCall],
114
- },
115
- user: {
116
- type: 'user',
117
- text: 'Accepting file creation.' + (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : ''),
118
- functionResponses: [
119
- {
120
- name: 'createFile',
121
- call_id: createFileCall.id,
122
- content: '',
123
- },
124
- ],
125
- },
122
+ name: 'createFile',
123
+ call_id: createFileCall.id,
124
+ content: '',
126
125
  },
127
126
  ],
127
+ });
128
+ return {
129
+ breakLoop: false,
130
+ items: [],
128
131
  };
129
132
  }
130
133
  catch (error) {
131
- return {
132
- breakLoop: false,
133
- items: [
134
+ putSystemMessage('File creation failed.');
135
+ prompt.push({
136
+ type: 'assistant',
137
+ text: askQuestionCall.args.message,
138
+ functionCalls: [createFileCall],
139
+ }, {
140
+ type: 'user',
141
+ text: 'Accepting file creation.' +
142
+ (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : '') +
143
+ ' Unfortunately, the file creation failed: ' +
144
+ (error instanceof Error ? error.message : 'unknown error'),
145
+ functionResponses: [
134
146
  {
135
- assistant: {
136
- type: 'assistant',
137
- text: askQuestionCall.args.message,
138
- functionCalls: [createFileCall],
139
- },
140
- user: {
141
- type: 'user',
142
- text: 'Accepting file creation.' +
143
- (applyConfirmation.answer ? ` ${applyConfirmation.answer}` : '') +
144
- ' Unfortunately, the file creation failed: ' +
145
- (error instanceof Error ? error.message : 'unknown error'),
146
- functionResponses: [
147
- {
148
- name: 'createFile',
149
- call_id: createFileCall.id,
150
- content: '',
151
- },
152
- ],
153
- },
147
+ name: 'createFile',
148
+ call_id: createFileCall.id,
149
+ content: '',
154
150
  },
155
151
  ],
152
+ });
153
+ return {
154
+ breakLoop: false,
155
+ items: [],
156
156
  };
157
157
  }
158
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handle-create-file.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-create-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handle-create-file.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-create-file.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import { ActionHandlerProps, ActionResult } from '../step-ask-question-types.js';
2
- export declare function handleEndConversation({ askQuestionCall, options }: ActionHandlerProps): Promise<ActionResult>;
2
+ export declare function handleEndConversation({ askQuestionCall, prompt, options, }: ActionHandlerProps): Promise<ActionResult>;
@@ -1,32 +1,30 @@
1
- import { putSystemMessage } from '../../../../main/common/content-bus.js';
1
+ import { putSystemMessage, putUserMessage } from '../../../../main/common/content-bus.js';
2
2
  import { askUserForConfirmationWithAnswer } from '../../../../main/common/user-actions.js';
3
3
  import { registerActionHandler } from '../step-ask-question-handlers.js';
4
4
  registerActionHandler('endConversation', handleEndConversation);
5
- export async function handleEndConversation({ askQuestionCall, options }) {
5
+ export async function handleEndConversation({ askQuestionCall, prompt, options, }) {
6
6
  const userConfirmation = await askUserForConfirmationWithAnswer('Do you want to end the conversation?', 'End conversation', 'Continue conversation', true, options);
7
+ if (userConfirmation.answer) {
8
+ putUserMessage(userConfirmation.answer);
9
+ }
10
+ prompt.push({
11
+ type: 'assistant',
12
+ text: askQuestionCall.args?.message ?? '',
13
+ }, {
14
+ type: 'user',
15
+ text: 'Lets continue the conversation.' + (userConfirmation.answer ? ` ${userConfirmation.answer}` : ''),
16
+ });
7
17
  if (!userConfirmation.confirmed) {
18
+ putSystemMessage('User declined to end the conversation.');
8
19
  return {
9
20
  breakLoop: false,
10
- items: [
11
- {
12
- assistant: { type: 'assistant', text: askQuestionCall.args?.message ?? '' },
13
- user: {
14
- type: 'user',
15
- text: userConfirmation.answer || 'Declined. Please continue the conversation.',
16
- },
17
- },
18
- ],
21
+ items: [],
19
22
  };
20
23
  }
21
24
  putSystemMessage('Assistant requested to stop code generation. Exiting...');
22
25
  return {
23
26
  breakLoop: true,
24
- items: [
25
- {
26
- assistant: { type: 'assistant', text: askQuestionCall.args?.message ?? '' },
27
- user: { type: 'user', text: 'Code generation cancelled.' },
28
- },
29
- ],
27
+ items: [],
30
28
  };
31
29
  }
32
30
  //# sourceMappingURL=handle-end-conversation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-end-conversation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-end-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,qBAAqB,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAE,eAAe,EAAE,OAAO,EAAsB;IAC1F,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAC7D,sCAAsC,EACtC,kBAAkB,EAClB,uBAAuB,EACvB,IAAI,EACJ,OAAO,CACR,CAAC;IAEF,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAChC,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL;oBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;oBAC3E,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gBAAgB,CAAC,MAAM,IAAI,6CAA6C;qBAC/E;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,yDAAyD,CAAC,CAAC;IAC5E,OAAO;QACL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE;gBAC3E,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE;aAC3D;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handle-end-conversation.js","sourceRoot":"","sources":["../../../../../src/prompt/steps/step-ask-question/handlers/handle-end-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,qBAAqB,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAC1C,eAAe,EACf,MAAM,EACN,OAAO,GACY;IACnB,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAC7D,sCAAsC,EACtC,kBAAkB,EAClB,uBAAuB,EACvB,IAAI,EACJ,OAAO,CACR,CAAC;IAEF,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC5B,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,IAAI,CACT;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;KAC1C,EACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iCAAiC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzG,CACF,CAAC;IAEF,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAChC,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QAE3D,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;SACV,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,yDAAyD,CAAC,CAAC;IAC5E,OAAO;QACL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { ActionHandlerProps, ActionResult } from '../step-ask-question-types.js';
2
+ export declare function handleExploreExternalDirectories({ askQuestionCall, options, prompt, generateContentFn, }: ActionHandlerProps): Promise<ActionResult>;