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.
- package/dist/ai-service/ai-studio.d.ts +1 -1
- package/dist/ai-service/ai-studio.js +114 -31
- package/dist/ai-service/ai-studio.js.map +1 -1
- package/dist/ai-service/anthropic.js +82 -32
- package/dist/ai-service/anthropic.js.map +1 -1
- package/dist/ai-service/common-types.d.ts +28 -7
- package/dist/ai-service/local-llm.d.ts +6 -0
- package/dist/ai-service/local-llm.js +77 -0
- package/dist/ai-service/local-llm.js.map +1 -0
- package/dist/ai-service/openai.d.ts +3 -13
- package/dist/ai-service/openai.js +107 -51
- package/dist/ai-service/openai.js.map +1 -1
- package/dist/ai-service/service-configurations-types.d.ts +14 -4
- package/dist/ai-service/service-configurations-types.js +0 -4
- package/dist/ai-service/service-configurations-types.js.map +1 -1
- package/dist/ai-service/service-configurations.d.ts +9 -1
- package/dist/ai-service/service-configurations.js +110 -14
- package/dist/ai-service/service-configurations.js.map +1 -1
- package/dist/ai-service/vertex-ai-claude.d.ts +1 -1
- package/dist/ai-service/vertex-ai-claude.js +80 -39
- package/dist/ai-service/vertex-ai-claude.js.map +1 -1
- package/dist/ai-service/vertex-ai.d.ts +1 -1
- package/dist/ai-service/vertex-ai.js +261 -155
- package/dist/ai-service/vertex-ai.js.map +1 -1
- package/dist/cli/cli-options.js +1 -1
- package/dist/cli/cli-options.js.map +1 -1
- package/dist/cli/validate-cli-params.js +1 -1
- package/dist/cli/validate-cli-params.js.map +1 -1
- package/dist/main/codegen-utils.js +9 -1
- package/dist/main/codegen-utils.js.map +1 -1
- package/dist/main/codegen.js +2 -0
- package/dist/main/codegen.js.map +1 -1
- package/dist/main/common/user-actions.d.ts +2 -0
- package/dist/main/common/user-actions.js.map +1 -1
- package/dist/main/config-schema.js +16 -0
- package/dist/main/config-schema.js.map +1 -1
- package/dist/main/config-types.d.ts +15 -0
- package/dist/main/config.js +1 -0
- package/dist/main/config.js.map +1 -1
- package/dist/main/interactive/select-ai-service.js +1 -0
- package/dist/main/interactive/select-ai-service.js.map +1 -1
- package/dist/main/plugin-loader.d.ts +1 -2
- package/dist/main/plugin-loader.js.map +1 -1
- package/dist/main/ui/backend/endpoints/question-endpoint.js +34 -3
- package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -1
- package/dist/main/ui/backend/service.d.ts +6 -5
- package/dist/main/ui/backend/service.js +54 -17
- package/dist/main/ui/backend/service.js.map +1 -1
- package/dist/main/ui/common/api-types.d.ts +1 -0
- package/dist/main/ui/frontend/assets/index-BlVGo0E6.js +1902 -0
- package/dist/main/ui/frontend/index.html +2 -2
- package/dist/project-profiles/types.d.ts +1 -1
- package/dist/project-profiles/types.js +1 -1
- package/dist/project-profiles/types.js.map +1 -1
- package/dist/prompt/function-calling.js +6 -0
- package/dist/prompt/function-calling.js.map +1 -1
- package/dist/prompt/function-defs/ask-question.js +8 -4
- package/dist/prompt/function-defs/ask-question.js.map +1 -1
- package/dist/prompt/function-defs/conversation-summary.d.ts +2 -0
- package/dist/prompt/function-defs/conversation-summary.js +15 -0
- package/dist/prompt/function-defs/conversation-summary.js.map +1 -0
- package/dist/prompt/function-defs/explore-external-directories.d.ts +16 -0
- package/dist/prompt/function-defs/explore-external-directories.js +48 -0
- package/dist/prompt/function-defs/explore-external-directories.js.map +1 -0
- package/dist/prompt/function-defs/read-external-files.d.ts +9 -0
- package/dist/prompt/function-defs/read-external-files.js +30 -0
- package/dist/prompt/function-defs/read-external-files.js.map +1 -0
- package/dist/prompt/limits.js +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js +44 -41
- package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js +11 -11
- package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js +13 -13
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js +60 -28
- package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js +88 -88
- package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.d.ts +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js +15 -17
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.d.ts +2 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js +277 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js.map +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.d.ts +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js +54 -61
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js +22 -10
- package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.d.ts +2 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js +144 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js.map +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js +27 -6
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js +14 -5
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js +26 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js +13 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js +14 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js +71 -75
- package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +5 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question.d.ts +2 -0
- package/dist/prompt/steps/step-ask-question/step-ask-question.js +14 -7
- package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
- package/dist/prompt/steps/step-codegen-planning.js +14 -5
- package/dist/prompt/steps/step-codegen-planning.js.map +1 -1
- package/dist/prompt/steps/step-context-compression.js +14 -5
- package/dist/prompt/steps/step-context-compression.js.map +1 -1
- package/dist/prompt/steps/step-context-optimization.js +10 -5
- package/dist/prompt/steps/step-context-optimization.js.map +1 -1
- package/dist/prompt/steps/step-generate-codegen-summary.js +14 -5
- package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
- package/dist/prompt/steps/step-generate-summary.d.ts +6 -0
- package/dist/prompt/steps/step-generate-summary.js +36 -16
- package/dist/prompt/steps/step-generate-summary.js.map +1 -1
- package/dist/prompt/steps/step-history-update.js +14 -5
- package/dist/prompt/steps/step-history-update.js.map +1 -1
- package/dist/prompt/steps/step-process-file-updates.js +10 -5
- package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
- package/dist/prompt/steps/step-summarization.js +14 -2
- package/dist/prompt/steps/step-summarization.js.map +1 -1
- package/dist/prompt/steps/step-validate-recover.d.ts +2 -4
- package/dist/prompt/steps/step-validate-recover.js +18 -9
- package/dist/prompt/steps/step-validate-recover.js.map +1 -1
- package/dist/prompt/steps/step-verify-patch.js +14 -5
- package/dist/prompt/steps/step-verify-patch.js.map +1 -1
- package/dist/prompt/systemprompt.js +5 -3
- package/dist/prompt/systemprompt.js.map +1 -1
- package/package.json +9 -9
- package/dist/main/ui/frontend/assets/index-Dizqxzws.js +0 -1814
- package/dist/prompt/steps/step-ask-question/handlers/code-generation.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/code-generation.js +0 -167
- package/dist/prompt/steps/step-ask-question/handlers/code-generation.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js +0 -34
- package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/context-optimization.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js +0 -32
- package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.d.ts +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.js +0 -251
- package/dist/prompt/steps/step-ask-question/handlers/genaicode-help-document.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/lint.d.ts +0 -6
- package/dist/prompt/steps/step-ask-question/handlers/lint.js +0 -103
- package/dist/prompt/steps/step-ask-question/handlers/lint.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js +0 -82
- package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/request-files-content.d.ts +0 -8
- package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js +0 -179
- package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/request-permissions.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js +0 -69
- package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js.map +0 -1
- /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
|
-
|
|
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,
|
|
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
|
-
],
|
|
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":"AACA,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAgB,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAO/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDxC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,WAA6B,EAAE,aAAiC,EAAE,EAAE;IAC1G,OAAO,8DAA8D,WAAW,CAAC,EAAE;;EAEnF,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;uEAEd,CAAC;AACxE,CAAC,CAAC;AAEF,qBAAqB,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,EAC5C,eAAe,EACf,MAAM,EACN,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,YAAY,GACO;IACnB,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAC7D,8EAA8E,EAC9E,wBAAwB,EACxB,SAAS,EACT,IAAI,EACJ,OAAO,CACR,CAAC;QAEF,IAAI,
|
|
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
|
-
],
|
|
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
|
-
|
|
80
|
-
|
|
81
|
-
|
|
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
|
-
|
|
84
|
-
|
|
85
|
-
|
|
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
|
-
|
|
107
|
-
|
|
108
|
-
|
|
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
|
-
|
|
111
|
-
|
|
112
|
-
|
|
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
|
-
|
|
132
|
-
|
|
133
|
-
|
|
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
|
-
|
|
136
|
-
|
|
137
|
-
|
|
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":"AACA,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,4DAA4D,CAAC;AAE3G,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,qBAAqB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,eAAe,EACf,OAAO,EACP,MAAM,EACN,iBAAiB,GACE;IACnB,gBAAgB,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;IAE9D,+EAA+E;IAC/E,MAAM,oBAAoB,GAAG,MAAM,gCAAgC,CACjE,2GAA2G,EAC3G,kBAAkB,EAClB,2BAA2B,EAC3B,KAAK,EACL,OAAO,CACR,CAAC;IAEF,IAAI,CAAC,oBAAoB,CAAC,
|
|
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;
|
|
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"}
|