@theia/ai-ide 1.63.0-next.0 → 1.63.0-next.52

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 (102) hide show
  1. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js +1 -1
  2. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js.map +1 -1
  3. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts +2 -1
  4. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts.map +1 -1
  5. package/lib/browser/ai-configuration/ai-configuration-widget.js +6 -1
  6. package/lib/browser/ai-configuration/ai-configuration-widget.js.map +1 -1
  7. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts +0 -1
  8. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts.map +1 -1
  9. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js +0 -1
  10. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js.map +1 -1
  11. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts +1 -0
  12. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts.map +1 -1
  13. package/lib/browser/ai-configuration/token-usage-configuration-widget.js +25 -3
  14. package/lib/browser/ai-configuration/token-usage-configuration-widget.js.map +1 -1
  15. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts +28 -0
  16. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts.map +1 -0
  17. package/lib/browser/ai-configuration/tools-configuration-widget.js +148 -0
  18. package/lib/browser/ai-configuration/tools-configuration-widget.js.map +1 -0
  19. package/lib/browser/app-tester-chat-agent.d.ts +36 -0
  20. package/lib/browser/app-tester-chat-agent.d.ts.map +1 -0
  21. package/lib/browser/app-tester-chat-agent.js +172 -0
  22. package/lib/browser/app-tester-chat-agent.js.map +1 -0
  23. package/lib/browser/architect-agent.d.ts.map +1 -1
  24. package/lib/browser/architect-agent.js +4 -1
  25. package/lib/browser/architect-agent.js.map +1 -1
  26. package/lib/browser/coder-agent.d.ts.map +1 -1
  27. package/lib/browser/coder-agent.js +3 -3
  28. package/lib/browser/coder-agent.js.map +1 -1
  29. package/lib/browser/file-changeset-functions.d.ts +25 -6
  30. package/lib/browser/file-changeset-functions.d.ts.map +1 -1
  31. package/lib/browser/file-changeset-functions.js +248 -106
  32. package/lib/browser/file-changeset-functions.js.map +1 -1
  33. package/lib/browser/frontend-module.d.ts +1 -0
  34. package/lib/browser/frontend-module.d.ts.map +1 -1
  35. package/lib/browser/frontend-module.js +21 -5
  36. package/lib/browser/frontend-module.js.map +1 -1
  37. package/lib/browser/summarize-session-command-contribution.d.ts +6 -1
  38. package/lib/browser/summarize-session-command-contribution.d.ts.map +1 -1
  39. package/lib/browser/summarize-session-command-contribution.js +53 -4
  40. package/lib/browser/summarize-session-command-contribution.js.map +1 -1
  41. package/lib/browser/task-context-file-storage-service.d.ts +4 -2
  42. package/lib/browser/task-context-file-storage-service.d.ts.map +1 -1
  43. package/lib/browser/task-context-file-storage-service.js +19 -9
  44. package/lib/browser/task-context-file-storage-service.js.map +1 -1
  45. package/lib/browser/workspace-functions.d.ts.map +1 -1
  46. package/lib/browser/workspace-functions.js +6 -10
  47. package/lib/browser/workspace-functions.js.map +1 -1
  48. package/lib/browser/workspace-preferences.d.ts +1 -0
  49. package/lib/browser/workspace-preferences.d.ts.map +1 -1
  50. package/lib/browser/workspace-preferences.js +9 -1
  51. package/lib/browser/workspace-preferences.js.map +1 -1
  52. package/lib/browser/workspace-search-provider.d.ts +7 -1
  53. package/lib/browser/workspace-search-provider.d.ts.map +1 -1
  54. package/lib/browser/workspace-search-provider.js +73 -11
  55. package/lib/browser/workspace-search-provider.js.map +1 -1
  56. package/lib/browser/workspace-search-provider.spec.d.ts +2 -0
  57. package/lib/browser/workspace-search-provider.spec.d.ts.map +1 -0
  58. package/lib/browser/workspace-search-provider.spec.js +227 -0
  59. package/lib/browser/workspace-search-provider.spec.js.map +1 -0
  60. package/lib/common/architect-prompt-template.d.ts +1 -0
  61. package/lib/common/architect-prompt-template.d.ts.map +1 -1
  62. package/lib/common/architect-prompt-template.js +166 -5
  63. package/lib/common/architect-prompt-template.js.map +1 -1
  64. package/lib/common/coder-replace-prompt-template.d.ts +4 -5
  65. package/lib/common/coder-replace-prompt-template.d.ts.map +1 -1
  66. package/lib/common/coder-replace-prompt-template.js +95 -67
  67. package/lib/common/coder-replace-prompt-template.js.map +1 -1
  68. package/lib/common/file-changeset-function-ids.d.ts +7 -0
  69. package/lib/common/file-changeset-function-ids.d.ts.map +1 -0
  70. package/lib/common/file-changeset-function-ids.js +25 -0
  71. package/lib/common/file-changeset-function-ids.js.map +1 -0
  72. package/lib/common/summarize-session-commands.d.ts +1 -0
  73. package/lib/common/summarize-session-commands.d.ts.map +1 -1
  74. package/lib/common/summarize-session-commands.js +5 -1
  75. package/lib/common/summarize-session-commands.js.map +1 -1
  76. package/lib/common/workspace-search-provider-util.d.ts +17 -0
  77. package/lib/common/workspace-search-provider-util.d.ts.map +1 -0
  78. package/lib/common/workspace-search-provider-util.js +51 -0
  79. package/lib/common/workspace-search-provider-util.js.map +1 -0
  80. package/package.json +19 -18
  81. package/src/browser/ai-configuration/ai-configuration-view-contribution.ts +1 -1
  82. package/src/browser/ai-configuration/ai-configuration-widget.tsx +6 -1
  83. package/src/browser/ai-configuration/prompt-fragments-configuration-widget.tsx +0 -1
  84. package/src/browser/ai-configuration/token-usage-configuration-widget.tsx +63 -4
  85. package/src/browser/ai-configuration/tools-configuration-widget.tsx +178 -0
  86. package/src/browser/app-tester-chat-agent.ts +178 -0
  87. package/src/browser/architect-agent.ts +5 -2
  88. package/src/browser/coder-agent.ts +5 -5
  89. package/src/browser/file-changeset-functions.ts +236 -89
  90. package/src/browser/frontend-module.ts +33 -10
  91. package/src/browser/style/index.css +84 -11
  92. package/src/browser/summarize-session-command-contribution.ts +58 -6
  93. package/src/browser/task-context-file-storage-service.ts +20 -10
  94. package/src/browser/workspace-functions.ts +7 -11
  95. package/src/browser/workspace-preferences.ts +9 -0
  96. package/src/browser/workspace-search-provider.spec.ts +255 -0
  97. package/src/browser/workspace-search-provider.ts +78 -11
  98. package/src/common/architect-prompt-template.ts +165 -5
  99. package/src/common/coder-replace-prompt-template.ts +101 -65
  100. package/src/common/file-changeset-function-ids.ts +22 -0
  101. package/src/common/summarize-session-commands.ts +5 -0
  102. package/src/common/workspace-search-provider-util.ts +50 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- var WriteChangeToFileProvider_1, SimpleReplaceContentInFileProvider_1, ReplaceContentInFileProvider_1, ClearFileChangesProvider_1, GetProposedFileStateProvider_1;
2
+ var SuggestFileContent_1, WriteFileContent_1, SimpleSuggestFileReplacements_1, SimpleWriteFileReplacements_1, SuggestFileReplacements_1, WriteFileReplacements_1, ClearFileChanges_1;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.GetProposedFileStateProvider = exports.ClearFileChangesProvider = exports.ReplaceContentInFileProvider = exports.SimpleReplaceContentInFileProvider = exports.ReplaceContentInFileFunctionHelper = exports.WriteChangeToFileProvider = void 0;
4
+ exports.GetProposedFileState = exports.ClearFileChanges = exports.WriteFileReplacements = exports.SuggestFileReplacements = exports.SimpleWriteFileReplacements = exports.SimpleSuggestFileReplacements = exports.ReplaceContentInFileFunctionHelper = exports.WriteFileContent = exports.SuggestFileContent = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  // *****************************************************************************
7
7
  // Copyright (C) 2024 EclipseSource GmbH.
@@ -21,14 +21,14 @@ const tslib_1 = require("tslib");
21
21
  const inversify_1 = require("@theia/core/shared/inversify");
22
22
  const workspace_functions_1 = require("./workspace-functions");
23
23
  const change_set_file_element_1 = require("@theia/ai-chat/lib/browser/change-set-file-element");
24
- const ai_chat_1 = require("@theia/ai-chat");
25
24
  const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
26
25
  const content_replacer_1 = require("@theia/core/lib/common/content-replacer");
27
- let WriteChangeToFileProvider = WriteChangeToFileProvider_1 = class WriteChangeToFileProvider {
26
+ const file_changeset_function_ids_1 = require("../common/file-changeset-function-ids");
27
+ let SuggestFileContent = SuggestFileContent_1 = class SuggestFileContent {
28
28
  getTool() {
29
29
  return {
30
- id: WriteChangeToFileProvider_1.ID,
31
- name: WriteChangeToFileProvider_1.ID,
30
+ id: SuggestFileContent_1.ID,
31
+ name: SuggestFileContent_1.ID,
32
32
  description: `Proposes writing content to a file. If the file exists, it will be overwritten with the provided content.\n
33
33
  If the file does not exist, it will be created. This tool will automatically create any directories needed to write the file.\n
34
34
  If the new content is empty, the file will be deleted. To move a file, delete it and re-create it at the new location.\n
@@ -51,11 +51,6 @@ let WriteChangeToFileProvider = WriteChangeToFileProvider_1 = class WriteChangeT
51
51
  handler: async (args, ctx) => {
52
52
  const { path, content } = JSON.parse(args);
53
53
  const chatSessionId = ctx.session.id;
54
- let changeSet = ctx.session.changeSet;
55
- if (!changeSet) {
56
- changeSet = new ai_chat_1.ChangeSetImpl('Changes proposed by Coder');
57
- ctx.session.setChangeSet(changeSet);
58
- }
59
54
  const uri = await this.workspaceFunctionScope.resolveRelativePath(path);
60
55
  let type = 'modify';
61
56
  if (content === '') {
@@ -64,41 +59,118 @@ let WriteChangeToFileProvider = WriteChangeToFileProvider_1 = class WriteChangeT
64
59
  if (!await this.fileService.exists(uri)) {
65
60
  type = 'add';
66
61
  }
67
- changeSet.addElements(this.fileChangeFactory({
62
+ ctx.session.changeSet.addElements(this.fileChangeFactory({
68
63
  uri: uri,
69
- type: type,
64
+ type,
70
65
  state: 'pending',
71
66
  targetState: content,
72
- changeSet,
67
+ requestId: ctx.id,
73
68
  chatSessionId
74
69
  }));
70
+ ctx.session.changeSet.setTitle('Changes proposed by Coder');
75
71
  return `Proposed writing to file ${path}. The user will review and potentially apply the changes`;
76
72
  }
77
73
  };
78
74
  }
79
75
  };
80
- exports.WriteChangeToFileProvider = WriteChangeToFileProvider;
81
- WriteChangeToFileProvider.ID = 'changeSet_writeChangeToFile';
76
+ exports.SuggestFileContent = SuggestFileContent;
77
+ SuggestFileContent.ID = file_changeset_function_ids_1.SUGGEST_FILE_CONTENT_ID;
82
78
  tslib_1.__decorate([
83
79
  (0, inversify_1.inject)(workspace_functions_1.WorkspaceFunctionScope),
84
80
  tslib_1.__metadata("design:type", workspace_functions_1.WorkspaceFunctionScope)
85
- ], WriteChangeToFileProvider.prototype, "workspaceFunctionScope", void 0);
81
+ ], SuggestFileContent.prototype, "workspaceFunctionScope", void 0);
86
82
  tslib_1.__decorate([
87
83
  (0, inversify_1.inject)(file_service_1.FileService),
88
84
  tslib_1.__metadata("design:type", file_service_1.FileService)
89
- ], WriteChangeToFileProvider.prototype, "fileService", void 0);
85
+ ], SuggestFileContent.prototype, "fileService", void 0);
90
86
  tslib_1.__decorate([
91
87
  (0, inversify_1.inject)(change_set_file_element_1.ChangeSetFileElementFactory),
92
88
  tslib_1.__metadata("design:type", Function)
93
- ], WriteChangeToFileProvider.prototype, "fileChangeFactory", void 0);
94
- exports.WriteChangeToFileProvider = WriteChangeToFileProvider = WriteChangeToFileProvider_1 = tslib_1.__decorate([
89
+ ], SuggestFileContent.prototype, "fileChangeFactory", void 0);
90
+ exports.SuggestFileContent = SuggestFileContent = SuggestFileContent_1 = tslib_1.__decorate([
95
91
  (0, inversify_1.injectable)()
96
- ], WriteChangeToFileProvider);
92
+ ], SuggestFileContent);
93
+ let WriteFileContent = WriteFileContent_1 = class WriteFileContent {
94
+ getTool() {
95
+ return {
96
+ id: WriteFileContent_1.ID,
97
+ name: WriteFileContent_1.ID,
98
+ description: `Immediately writes content to a file. If the file exists, it will be overwritten with the provided content.\n
99
+ If the file does not exist, it will be created. This tool will automatically create any directories needed to write the file.\n
100
+ If the new content is empty, the file will be deleted. To move a file, delete it and re-create it at the new location.\n
101
+ Unlike suggestFileContent, this function applies the changes immediately without user confirmation.`,
102
+ parameters: {
103
+ type: 'object',
104
+ properties: {
105
+ path: {
106
+ type: 'string',
107
+ description: 'The path of the file to write to.'
108
+ },
109
+ content: {
110
+ type: 'string',
111
+ description: `The content to write to the file. ALWAYS provide the COMPLETE intended content of the file, without any truncation or omissions.\n
112
+ You MUST include ALL parts of the file, even if they haven\'t been modified.`
113
+ }
114
+ },
115
+ required: ['path', 'content']
116
+ },
117
+ handler: async (args, ctx) => {
118
+ const { path, content } = JSON.parse(args);
119
+ const chatSessionId = ctx.session.id;
120
+ const uri = await this.workspaceFunctionScope.resolveRelativePath(path);
121
+ let type = 'modify';
122
+ if (content === '') {
123
+ type = 'delete';
124
+ }
125
+ if (!await this.fileService.exists(uri)) {
126
+ type = 'add';
127
+ }
128
+ // Create the file change element
129
+ const fileElement = this.fileChangeFactory({
130
+ uri: uri,
131
+ type: type,
132
+ state: 'pending',
133
+ targetState: content,
134
+ requestId: ctx.id,
135
+ chatSessionId
136
+ });
137
+ ctx.session.changeSet.setTitle('Changes applied by Coder');
138
+ // Add the element to the change set
139
+ ctx.session.changeSet.addElements(fileElement);
140
+ try {
141
+ // Immediately apply the change
142
+ await fileElement.apply();
143
+ return `Successfully wrote content to file ${path}.`;
144
+ }
145
+ catch (error) {
146
+ return `Failed to write content to file ${path}: ${error.message}`;
147
+ }
148
+ }
149
+ };
150
+ }
151
+ };
152
+ exports.WriteFileContent = WriteFileContent;
153
+ WriteFileContent.ID = file_changeset_function_ids_1.WRITE_FILE_CONTENT_ID;
154
+ tslib_1.__decorate([
155
+ (0, inversify_1.inject)(workspace_functions_1.WorkspaceFunctionScope),
156
+ tslib_1.__metadata("design:type", workspace_functions_1.WorkspaceFunctionScope)
157
+ ], WriteFileContent.prototype, "workspaceFunctionScope", void 0);
158
+ tslib_1.__decorate([
159
+ (0, inversify_1.inject)(file_service_1.FileService),
160
+ tslib_1.__metadata("design:type", file_service_1.FileService)
161
+ ], WriteFileContent.prototype, "fileService", void 0);
162
+ tslib_1.__decorate([
163
+ (0, inversify_1.inject)(change_set_file_element_1.ChangeSetFileElementFactory),
164
+ tslib_1.__metadata("design:type", Function)
165
+ ], WriteFileContent.prototype, "fileChangeFactory", void 0);
166
+ exports.WriteFileContent = WriteFileContent = WriteFileContent_1 = tslib_1.__decorate([
167
+ (0, inversify_1.injectable)()
168
+ ], WriteFileContent);
97
169
  let ReplaceContentInFileFunctionHelper = class ReplaceContentInFileFunctionHelper {
98
170
  constructor() {
99
171
  this.replacer = new content_replacer_1.ContentReplacer();
100
172
  }
101
- getToolMetadata(supportMultipleReplace = false) {
173
+ getToolMetadata(supportMultipleReplace = false, immediateApplication = false) {
102
174
  const replacementProperties = {
103
175
  oldContent: {
104
176
  type: 'string',
@@ -144,10 +216,13 @@ let ReplaceContentInFileFunctionHelper = class ReplaceContentInFileFunctionHelpe
144
216
  In that case try a different approach.'
145
217
  : 'A single occurrence of each old content in the tuples is expected to be replaced. If the number of occurrences in the file does not match the expectation,\
146
218
  the function will return an error. In that case try a different approach.';
219
+ const applicationText = immediateApplication
220
+ ? 'The changes will be applied immediately without user confirmation.'
221
+ : 'The proposed changes will be applied when the user accepts.';
147
222
  const replacementDescription = `Propose to replace sections of content in an existing file by providing a list of tuples with old content to be matched and replaced.
148
223
  ${replacementSentence}. For deletions, use an empty new content in the tuple.
149
- Make sure you use the same line endings and whitespace as in the original file content. The proposed changes will be applied when the user accepts.
150
- Multiple calls for the same file will merge replacements unless the reset parameter is set to true. Use the reset parameter to clear previous changes and start
224
+ Make sure you use the same line endings and whitespace as in the original file content. ${applicationText}
225
+ Multiple calls for the same file will merge replacements unless the reset parameter is set to true. Use the reset parameter to clear previous changes and start
151
226
  fresh if needed.`;
152
227
  return {
153
228
  description: replacementDescription,
@@ -156,72 +231,97 @@ let ReplaceContentInFileFunctionHelper = class ReplaceContentInFileFunctionHelpe
156
231
  }
157
232
  async createChangesetFromToolCall(toolCallString, ctx) {
158
233
  try {
159
- const { path, replacements, reset } = JSON.parse(toolCallString);
160
- const fileUri = await this.workspaceFunctionScope.resolveRelativePath(path);
161
- // Get the starting content - either original file or existing proposed state
162
- let startingContent;
163
- if (reset || !ctx.session.changeSet) {
164
- // Start from original file content
165
- startingContent = (await this.fileService.read(fileUri)).value.toString();
234
+ const result = await this.processReplacementsCommon(toolCallString, ctx, 'Changes proposed by Coder');
235
+ if (result.errors.length > 0) {
236
+ return `Errors encountered: ${result.errors.join('; ')}`;
237
+ }
238
+ if (result.fileElement) {
239
+ const action = result.reset ? 'reset and applied' : 'applied';
240
+ return `Proposed replacements ${action} to file ${result.path}. The user will review and potentially apply the changes.`;
166
241
  }
167
242
  else {
168
- // Start from existing proposed state if available
169
- const existingElement = this.findExistingChangeElement(ctx.session.changeSet, fileUri);
170
- if (existingElement) {
171
- startingContent = existingElement.targetState || (await this.fileService.read(fileUri)).value.toString();
172
- }
173
- else {
174
- startingContent = (await this.fileService.read(fileUri)).value.toString();
175
- }
243
+ return `No changes needed for file ${result.path}. Content already matches the requested state.`;
244
+ }
245
+ }
246
+ catch (error) {
247
+ console.debug('Error processing replacements:', error.message);
248
+ return JSON.stringify({ error: error.message });
249
+ }
250
+ }
251
+ async writeChangesetFromToolCall(toolCallString, ctx) {
252
+ try {
253
+ const result = await this.processReplacementsCommon(toolCallString, ctx, 'Changes applied by Coder');
254
+ if (result.errors.length > 0) {
255
+ return `Errors encountered: ${result.errors.join('; ')}`;
176
256
  }
177
- const { updatedContent, errors } = this.replacer.applyReplacements(startingContent, replacements);
178
- if (errors.length > 0) {
179
- return `Errors encountered: ${errors.join('; ')}`;
257
+ if (result.fileElement) {
258
+ // Immediately apply the change
259
+ await result.fileElement.apply();
260
+ const action = result.reset ? 'reset and' : '';
261
+ return `Successfully ${action} applied replacements to file ${result.path}.`;
180
262
  }
181
- // Only create/update changeset if content actually changed
182
- const originalContent = (await this.fileService.read(fileUri)).value.toString();
183
- if (updatedContent !== originalContent) {
184
- let changeSet = ctx.session.changeSet;
185
- if (!changeSet) {
186
- changeSet = new ai_chat_1.ChangeSetImpl('Changes proposed by Coder');
187
- ctx.session.setChangeSet(changeSet);
188
- }
189
- changeSet.addElements(this.fileChangeFactory({
190
- uri: fileUri,
191
- type: 'modify',
192
- state: 'pending',
193
- targetState: updatedContent,
194
- changeSet,
195
- chatSessionId: ctx.session.id
196
- }));
263
+ else {
264
+ return `No changes needed for file ${result.path}. Content already matches the requested state.`;
197
265
  }
198
- const action = reset ? 'reset and applied' : 'applied';
199
- return `Proposed replacements ${action} to file ${path}. The user will review and potentially apply the changes.`;
200
266
  }
201
267
  catch (error) {
202
268
  console.debug('Error processing replacements:', error.message);
203
269
  return JSON.stringify({ error: error.message });
204
270
  }
205
271
  }
272
+ async processReplacementsCommon(toolCallString, ctx, changeSetTitle) {
273
+ const { path, replacements, reset } = JSON.parse(toolCallString);
274
+ const fileUri = await this.workspaceFunctionScope.resolveRelativePath(path);
275
+ // Get the starting content - either original file or existing proposed state
276
+ let startingContent;
277
+ if (reset || !ctx.session.changeSet) {
278
+ // Start from original file content
279
+ startingContent = (await this.fileService.read(fileUri)).value.toString();
280
+ }
281
+ else {
282
+ // Start from existing proposed state if available
283
+ const existingElement = this.findExistingChangeElement(ctx.session.changeSet, fileUri);
284
+ if (existingElement) {
285
+ startingContent = existingElement.targetState || (await this.fileService.read(fileUri)).value.toString();
286
+ }
287
+ else {
288
+ startingContent = (await this.fileService.read(fileUri)).value.toString();
289
+ }
290
+ }
291
+ const { updatedContent, errors } = this.replacer.applyReplacements(startingContent, replacements);
292
+ if (errors.length > 0) {
293
+ return { fileElement: undefined, path, reset: reset || false, errors };
294
+ }
295
+ // Only create/update changeset if content actually changed
296
+ const originalContent = (await this.fileService.read(fileUri)).value.toString();
297
+ if (updatedContent !== originalContent) {
298
+ ctx.session.changeSet.setTitle(changeSetTitle);
299
+ const fileElement = this.fileChangeFactory({
300
+ uri: fileUri,
301
+ type: 'modify',
302
+ state: 'pending',
303
+ targetState: updatedContent,
304
+ requestId: ctx.id,
305
+ chatSessionId: ctx.session.id
306
+ });
307
+ ctx.session.changeSet.addElements(fileElement);
308
+ return { fileElement, path, reset: reset || false, errors: [] };
309
+ }
310
+ else {
311
+ return { fileElement: undefined, path, reset: reset || false, errors: [] };
312
+ }
313
+ }
206
314
  findExistingChangeElement(changeSet, fileUri) {
207
- return changeSet.getElementByURI(fileUri);
315
+ const element = changeSet.getElementByURI(fileUri);
316
+ if (element instanceof change_set_file_element_1.ChangeSetFileElement) {
317
+ return element;
318
+ }
208
319
  }
209
320
  async clearFileChanges(path, ctx) {
210
321
  try {
211
322
  const fileUri = await this.workspaceFunctionScope.resolveRelativePath(path);
212
- if (!ctx.session.changeSet) {
213
- return `No pending changes found for file ${path}.`;
214
- }
215
- const elements = ctx.session.changeSet.getElements();
216
- const indicesToRemove = [];
217
- elements.forEach((element, index) => {
218
- if (element.uri && element.uri.toString() === fileUri.toString()) {
219
- indicesToRemove.push(index);
220
- }
221
- });
222
- if (indicesToRemove.length > 0) {
223
- ctx.session.changeSet.removeElements(...indicesToRemove);
224
- return `Cleared ${indicesToRemove.length} pending change(s) for file ${path}.`;
323
+ if (ctx.session.changeSet.removeElements(fileUri)) {
324
+ return `Cleared pending change(s) for file ${path}.`;
225
325
  }
226
326
  else {
227
327
  return `No pending changes found for file ${path}.`;
@@ -273,53 +373,95 @@ exports.ReplaceContentInFileFunctionHelper = ReplaceContentInFileFunctionHelper
273
373
  (0, inversify_1.injectable)(),
274
374
  tslib_1.__metadata("design:paramtypes", [])
275
375
  ], ReplaceContentInFileFunctionHelper);
276
- let SimpleReplaceContentInFileProvider = SimpleReplaceContentInFileProvider_1 = class SimpleReplaceContentInFileProvider {
376
+ let SimpleSuggestFileReplacements = SimpleSuggestFileReplacements_1 = class SimpleSuggestFileReplacements {
277
377
  getTool() {
278
378
  const metadata = this.replaceContentInFileFunctionHelper.getToolMetadata();
279
379
  return {
280
- id: SimpleReplaceContentInFileProvider_1.ID,
281
- name: SimpleReplaceContentInFileProvider_1.ID,
380
+ id: SimpleSuggestFileReplacements_1.ID,
381
+ name: SimpleSuggestFileReplacements_1.ID,
282
382
  description: metadata.description,
283
383
  parameters: metadata.parameters,
284
384
  handler: async (args, ctx) => this.replaceContentInFileFunctionHelper.createChangesetFromToolCall(args, ctx)
285
385
  };
286
386
  }
287
387
  };
288
- exports.SimpleReplaceContentInFileProvider = SimpleReplaceContentInFileProvider;
289
- SimpleReplaceContentInFileProvider.ID = 'changeSet_replaceContentInFilev1';
388
+ exports.SimpleSuggestFileReplacements = SimpleSuggestFileReplacements;
389
+ SimpleSuggestFileReplacements.ID = 'simpleSuggestFileReplacements';
290
390
  tslib_1.__decorate([
291
391
  (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
292
392
  tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
293
- ], SimpleReplaceContentInFileProvider.prototype, "replaceContentInFileFunctionHelper", void 0);
294
- exports.SimpleReplaceContentInFileProvider = SimpleReplaceContentInFileProvider = SimpleReplaceContentInFileProvider_1 = tslib_1.__decorate([
393
+ ], SimpleSuggestFileReplacements.prototype, "replaceContentInFileFunctionHelper", void 0);
394
+ exports.SimpleSuggestFileReplacements = SimpleSuggestFileReplacements = SimpleSuggestFileReplacements_1 = tslib_1.__decorate([
295
395
  (0, inversify_1.injectable)()
296
- ], SimpleReplaceContentInFileProvider);
297
- let ReplaceContentInFileProvider = ReplaceContentInFileProvider_1 = class ReplaceContentInFileProvider {
396
+ ], SimpleSuggestFileReplacements);
397
+ let SimpleWriteFileReplacements = SimpleWriteFileReplacements_1 = class SimpleWriteFileReplacements {
398
+ getTool() {
399
+ const metadata = this.replaceContentInFileFunctionHelper.getToolMetadata(false, true);
400
+ return {
401
+ id: SimpleWriteFileReplacements_1.ID,
402
+ name: SimpleWriteFileReplacements_1.ID,
403
+ description: metadata.description,
404
+ parameters: metadata.parameters,
405
+ handler: async (args, ctx) => this.replaceContentInFileFunctionHelper.writeChangesetFromToolCall(args, ctx)
406
+ };
407
+ }
408
+ };
409
+ exports.SimpleWriteFileReplacements = SimpleWriteFileReplacements;
410
+ SimpleWriteFileReplacements.ID = 'simpleWriteFileReplacements';
411
+ tslib_1.__decorate([
412
+ (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
413
+ tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
414
+ ], SimpleWriteFileReplacements.prototype, "replaceContentInFileFunctionHelper", void 0);
415
+ exports.SimpleWriteFileReplacements = SimpleWriteFileReplacements = SimpleWriteFileReplacements_1 = tslib_1.__decorate([
416
+ (0, inversify_1.injectable)()
417
+ ], SimpleWriteFileReplacements);
418
+ let SuggestFileReplacements = SuggestFileReplacements_1 = class SuggestFileReplacements {
298
419
  getTool() {
299
420
  const metadata = this.replaceContentInFileFunctionHelper.getToolMetadata(true);
300
421
  return {
301
- id: ReplaceContentInFileProvider_1.ID,
302
- name: ReplaceContentInFileProvider_1.ID,
422
+ id: SuggestFileReplacements_1.ID,
423
+ name: SuggestFileReplacements_1.ID,
303
424
  description: metadata.description,
304
425
  parameters: metadata.parameters,
305
426
  handler: async (args, ctx) => this.replaceContentInFileFunctionHelper.createChangesetFromToolCall(args, ctx)
306
427
  };
307
428
  }
308
429
  };
309
- exports.ReplaceContentInFileProvider = ReplaceContentInFileProvider;
310
- ReplaceContentInFileProvider.ID = 'changeSet_replaceContentInFile';
430
+ exports.SuggestFileReplacements = SuggestFileReplacements;
431
+ SuggestFileReplacements.ID = file_changeset_function_ids_1.SUGGEST_FILE_REPLACEMENTS_ID;
432
+ tslib_1.__decorate([
433
+ (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
434
+ tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
435
+ ], SuggestFileReplacements.prototype, "replaceContentInFileFunctionHelper", void 0);
436
+ exports.SuggestFileReplacements = SuggestFileReplacements = SuggestFileReplacements_1 = tslib_1.__decorate([
437
+ (0, inversify_1.injectable)()
438
+ ], SuggestFileReplacements);
439
+ let WriteFileReplacements = WriteFileReplacements_1 = class WriteFileReplacements {
440
+ getTool() {
441
+ const metadata = this.replaceContentInFileFunctionHelper.getToolMetadata(true, true);
442
+ return {
443
+ id: WriteFileReplacements_1.ID,
444
+ name: WriteFileReplacements_1.ID,
445
+ description: metadata.description,
446
+ parameters: metadata.parameters,
447
+ handler: async (args, ctx) => this.replaceContentInFileFunctionHelper.writeChangesetFromToolCall(args, ctx)
448
+ };
449
+ }
450
+ };
451
+ exports.WriteFileReplacements = WriteFileReplacements;
452
+ WriteFileReplacements.ID = file_changeset_function_ids_1.WRITE_FILE_REPLACEMENTS_ID;
311
453
  tslib_1.__decorate([
312
454
  (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
313
455
  tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
314
- ], ReplaceContentInFileProvider.prototype, "replaceContentInFileFunctionHelper", void 0);
315
- exports.ReplaceContentInFileProvider = ReplaceContentInFileProvider = ReplaceContentInFileProvider_1 = tslib_1.__decorate([
456
+ ], WriteFileReplacements.prototype, "replaceContentInFileFunctionHelper", void 0);
457
+ exports.WriteFileReplacements = WriteFileReplacements = WriteFileReplacements_1 = tslib_1.__decorate([
316
458
  (0, inversify_1.injectable)()
317
- ], ReplaceContentInFileProvider);
318
- let ClearFileChangesProvider = ClearFileChangesProvider_1 = class ClearFileChangesProvider {
459
+ ], WriteFileReplacements);
460
+ let ClearFileChanges = ClearFileChanges_1 = class ClearFileChanges {
319
461
  getTool() {
320
462
  return {
321
- id: ClearFileChangesProvider_1.ID,
322
- name: ClearFileChangesProvider_1.ID,
463
+ id: ClearFileChanges_1.ID,
464
+ name: ClearFileChanges_1.ID,
323
465
  description: 'Clears all pending changes for a specific file, allowing you to start fresh with new modifications.',
324
466
  parameters: {
325
467
  type: 'object',
@@ -338,20 +480,20 @@ let ClearFileChangesProvider = ClearFileChangesProvider_1 = class ClearFileChang
338
480
  };
339
481
  }
340
482
  };
341
- exports.ClearFileChangesProvider = ClearFileChangesProvider;
342
- ClearFileChangesProvider.ID = 'changeSet_clearFileChanges';
483
+ exports.ClearFileChanges = ClearFileChanges;
484
+ ClearFileChanges.ID = file_changeset_function_ids_1.CLEAR_FILE_CHANGES_ID;
343
485
  tslib_1.__decorate([
344
486
  (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
345
487
  tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
346
- ], ClearFileChangesProvider.prototype, "replaceContentInFileFunctionHelper", void 0);
347
- exports.ClearFileChangesProvider = ClearFileChangesProvider = ClearFileChangesProvider_1 = tslib_1.__decorate([
488
+ ], ClearFileChanges.prototype, "replaceContentInFileFunctionHelper", void 0);
489
+ exports.ClearFileChanges = ClearFileChanges = ClearFileChanges_1 = tslib_1.__decorate([
348
490
  (0, inversify_1.injectable)()
349
- ], ClearFileChangesProvider);
350
- let GetProposedFileStateProvider = GetProposedFileStateProvider_1 = class GetProposedFileStateProvider {
491
+ ], ClearFileChanges);
492
+ let GetProposedFileState = class GetProposedFileState {
351
493
  getTool() {
352
494
  return {
353
- id: GetProposedFileStateProvider_1.ID,
354
- name: GetProposedFileStateProvider_1.ID,
495
+ id: file_changeset_function_ids_1.GET_PROPOSED_CHANGES_ID,
496
+ name: file_changeset_function_ids_1.GET_PROPOSED_CHANGES_ID,
355
497
  description: 'Returns the current proposed state of a file, including all pending changes that have been proposed ' +
356
498
  'but not yet applied. This allows you to inspect the current state before making additional changes.',
357
499
  parameters: {
@@ -371,13 +513,13 @@ let GetProposedFileStateProvider = GetProposedFileStateProvider_1 = class GetPro
371
513
  };
372
514
  }
373
515
  };
374
- exports.GetProposedFileStateProvider = GetProposedFileStateProvider;
375
- GetProposedFileStateProvider.ID = 'changeSet_getProposedFileState';
516
+ exports.GetProposedFileState = GetProposedFileState;
517
+ GetProposedFileState.ID = file_changeset_function_ids_1.GET_PROPOSED_CHANGES_ID;
376
518
  tslib_1.__decorate([
377
519
  (0, inversify_1.inject)(ReplaceContentInFileFunctionHelper),
378
520
  tslib_1.__metadata("design:type", ReplaceContentInFileFunctionHelper)
379
- ], GetProposedFileStateProvider.prototype, "replaceContentInFileFunctionHelper", void 0);
380
- exports.GetProposedFileStateProvider = GetProposedFileStateProvider = GetProposedFileStateProvider_1 = tslib_1.__decorate([
521
+ ], GetProposedFileState.prototype, "replaceContentInFileFunctionHelper", void 0);
522
+ exports.GetProposedFileState = GetProposedFileState = tslib_1.__decorate([
381
523
  (0, inversify_1.injectable)()
382
- ], GetProposedFileStateProvider);
524
+ ], GetProposedFileState);
383
525
  //# sourceMappingURL=file-changeset-functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-changeset-functions.js","sourceRoot":"","sources":["../../src/browser/file-changeset-functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-changeset-functions.js","sourceRoot":"","sources":["../../src/browser/file-changeset-functions.ts"],"names":[],"mappings":";;;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,4DAAkE;AAElE,+DAA+D;AAC/D,gGAA6I;AAE7I,6EAAyE;AACzE,8EAAuF;AAGvF,uFAO+C;AAGxC,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAY3B,OAAO;QACH,OAAO;YACH,EAAE,EAAE,oBAAkB,CAAC,EAAE;YACzB,IAAI,EAAE,oBAAkB,CAAC,EAAE;YAC3B,WAAW,EAAE;;;4JAGmI;YAChJ,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mCAAmC;qBACnD;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE;sGACiE;qBACjF;iBACJ;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAChC;YACD,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBACxE,IAAI,IAAI,GAAiC,QAAQ,CAAC;gBAClD,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;oBACjB,IAAI,GAAG,QAAQ,CAAC;gBACpB,CAAC;gBACD,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,IAAI,GAAG,KAAK,CAAC;gBACjB,CAAC;gBACD,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAC7B,IAAI,CAAC,iBAAiB,CAAC;oBACnB,GAAG,EAAE,GAAG;oBACR,IAAI;oBACJ,KAAK,EAAE,SAAS;oBAChB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,GAAG,CAAC,EAAE;oBACjB,aAAa;iBAChB,CAAC,CACL,CAAC;gBACF,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;gBAC5D,OAAO,4BAA4B,IAAI,0DAA0D,CAAC;YACtG,CAAC;SACJ,CAAC;IACN,CAAC;;AA5DQ,gDAAkB;AACpB,qBAAE,GAAG,qDAAuB,AAA1B,CAA2B;AAGjB;IADlB,IAAA,kBAAM,EAAC,4CAAsB,CAAC;sCACY,4CAAsB;kEAAC;AAGlE;IADC,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACP,0BAAW;uDAAC;AAGN;IADlB,IAAA,kBAAM,EAAC,qDAA2B,CAAC;;6DAC8B;6BAVzD,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;GACA,kBAAkB,CA6D9B;AAGM,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAYzB,OAAO;QACH,OAAO;YACH,EAAE,EAAE,kBAAgB,CAAC,EAAE;YACvB,IAAI,EAAE,kBAAgB,CAAC,EAAE;YACzB,WAAW,EAAE;;;iHAGwF;YACrG,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mCAAmC;qBACnD;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE;sGACiE;qBACjF;iBACJ;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAChC;YACD,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBACxE,IAAI,IAAI,GAAG,QAAQ,CAAC;gBACpB,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;oBACjB,IAAI,GAAG,QAAQ,CAAC;gBACpB,CAAC;gBACD,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,IAAI,GAAG,KAAK,CAAC;gBACjB,CAAC;gBAED,iCAAiC;gBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC;oBACvC,GAAG,EAAE,GAAG;oBACR,IAAI,EAAE,IAAmC;oBACzC,KAAK,EAAE,SAAS;oBAChB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,GAAG,CAAC,EAAE;oBACjB,aAAa;iBAChB,CAAC,CAAC;gBAEH,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;gBAC3D,oCAAoC;gBACpC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBAE/C,IAAI,CAAC;oBACD,+BAA+B;oBAC/B,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;oBAC1B,OAAO,sCAAsC,IAAI,GAAG,CAAC;gBACzD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,mCAAmC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;gBACvE,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;;AAtEQ,4CAAgB;AAClB,mBAAE,GAAG,mDAAqB,AAAxB,CAAyB;AAGf;IADlB,IAAA,kBAAM,EAAC,4CAAsB,CAAC;sCACY,4CAAsB;gEAAC;AAGlE;IADC,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACP,0BAAW;qDAAC;AAGN;IADlB,IAAA,kBAAM,EAAC,qDAA2B,CAAC;;2DAC8B;2BAVzD,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAuE5B;AAGM,IAAM,kCAAkC,GAAxC,MAAM,kCAAkC;IAY3C;QACI,IAAI,CAAC,QAAQ,GAAG,IAAI,kCAAe,EAAE,CAAC;IAC1C,CAAC;IAED,eAAe,CAAC,yBAAkC,KAAK,EAAE,uBAAgC,KAAK;QAC1F,MAAM,qBAAqB,GAAoC;YAC3D,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4FAA4F;aAC5G;YACD,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4DAA4D;aAC5E;SACJ,CAAC;QAEF,IAAI,sBAAsB,EAAE,CAAC;YACzB,qBAAqB,CAAC,QAAQ,GAAG;gBAC7B,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,oFAAoF;aACpG,CAAC;QACN,CAAC;QACD,MAAM,qBAAqB,GAAG;YAC1B,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sDAAsD;iBACtE;gBACD,YAAY,EAAE;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE,qBAAqB;wBACjC,QAAQ,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;qBACzC;oBACD,WAAW,EAAE,qFAAqF;iBACrG;gBACD,KAAK,EAAE;oBACH,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,wIAAwI;iBACxJ;aACJ;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC;SACZ,CAAC;QAE3B,MAAM,mBAAmB,GAAG,sBAAsB;YAC9C,CAAC,CAAC;;oDAEsC;YACxC,CAAC,CAAC;wFAC0E,CAAC;QAEjF,MAAM,eAAe,GAAG,oBAAoB;YACxC,CAAC,CAAC,oEAAoE;YACtE,CAAC,CAAC,6DAA6D,CAAC;QAEpE,MAAM,sBAAsB,GAAG;cACzB,mBAAmB;sGACqE,eAAe;;6BAExF,CAAC;QAEtB,OAAO;YACH,WAAW,EAAE,sBAAsB;YACnC,UAAU,EAAE,qBAAqB;SACpC,CAAC;IAEN,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,cAAsB,EAAE,GAA4B;QAClF,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,GAAG,EAAE,2BAA2B,CAAC,CAAC;YAEtG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,uBAAuB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,CAAC;YAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC9D,OAAO,yBAAyB,MAAM,YAAY,MAAM,CAAC,IAAI,2DAA2D,CAAC;YAC7H,CAAC;iBAAM,CAAC;gBACJ,OAAO,8BAA8B,MAAM,CAAC,IAAI,gDAAgD,CAAC;YACrG,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,cAAsB,EAAE,GAA4B;QACjF,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,GAAG,EAAE,0BAA0B,CAAC,CAAC;YAErG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,uBAAuB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,CAAC;YAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACrB,+BAA+B;gBAC/B,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;gBAEjC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,OAAO,gBAAgB,MAAM,iCAAiC,MAAM,CAAC,IAAI,GAAG,CAAC;YACjF,CAAC;iBAAM,CAAC;gBACJ,OAAO,8BAA8B,MAAM,CAAC,IAAI,gDAAgD,CAAC;YACrG,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACnC,cAAsB,EACtB,GAA4B,EAC5B,cAAsB;QAEtB,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAmE,CAAC;QACnI,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE5E,6EAA6E;QAC7E,IAAI,eAAuB,CAAC;QAC5B,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAClC,mCAAmC;YACnC,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC9E,CAAC;aAAM,CAAC;YACJ,kDAAkD;YAClD,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACvF,IAAI,eAAe,EAAE,CAAC;gBAClB,eAAe,GAAG,eAAe,CAAC,WAAW,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC7G,CAAC;iBAAM,CAAC;gBACJ,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC9E,CAAC;QACL,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAElG,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3E,CAAC;QAED,2DAA2D;QAC3D,MAAM,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChF,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;YACrC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAE/C,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBACvC,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,cAAc;gBAC3B,SAAS,EAAE,GAAG,CAAC,EAAE;gBACjB,aAAa,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE;aAChC,CAAC,CAAC;YAEH,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAE/C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACpE,CAAC;aAAM,CAAC;YACJ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC/E,CAAC;IACL,CAAC;IAEO,yBAAyB,CAAC,SAAoB,EAAE,OAAY;QAChE,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,OAAO,YAAY,8CAAoB,EAAE,CAAC;YAAC,OAAO,OAAO,CAAC;QAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,GAA4B;QAC7D,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC5E,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,OAAO,sCAAsC,IAAI,GAAG,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACJ,OAAO,qCAAqC,IAAI,GAAG,CAAC;YACxD,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY,EAAE,GAA4B;QACjE,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAE5E,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACzB,oDAAoD;gBACpD,MAAM,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAChF,OAAO,QAAQ,IAAI,iDAAiD,eAAe,EAAE,CAAC;YAC1F,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACvF,IAAI,eAAe,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC;gBACjD,OAAO,QAAQ,IAAI,8CAA8C,eAAe,CAAC,WAAW,EAAE,CAAC;YACnG,CAAC;iBAAM,CAAC;gBACJ,mCAAmC;gBACnC,MAAM,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAChF,OAAO,QAAQ,IAAI,iDAAiD,eAAe,EAAE,CAAC;YAC1F,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;CACJ,CAAA;AA1NY,gFAAkC;AAExB;IADlB,IAAA,kBAAM,EAAC,4CAAsB,CAAC;sCACY,4CAAsB;kFAAC;AAGlE;IADC,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACP,0BAAW;uEAAC;AAGN;IADlB,IAAA,kBAAM,EAAC,qDAA2B,CAAC;;6EAC8B;6CARzD,kCAAkC;IAD9C,IAAA,sBAAU,GAAE;;GACA,kCAAkC,CA0N9C;AAGM,IAAM,6BAA6B,qCAAnC,MAAM,6BAA6B;IAKtC,OAAO;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,kCAAkC,CAAC,eAAe,EAAE,CAAC;QAC3E,OAAO;YACH,EAAE,EAAE,+BAA6B,CAAC,EAAE;YACpC,IAAI,EAAE,+BAA6B,CAAC,EAAE;YACtC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE,CAC3E,IAAI,CAAC,kCAAkC,CAAC,2BAA2B,CAAC,IAAI,EAAE,GAAG,CAAC;SACrF,CAAC;IACN,CAAC;;AAfQ,sEAA6B;AAC/B,gCAAE,GAAG,+BAA+B,AAAlC,CAAmC;AAEzB;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;yFAAC;wCAHjF,6BAA6B;IADzC,IAAA,sBAAU,GAAE;GACA,6BAA6B,CAgBzC;AAGM,IAAM,2BAA2B,mCAAjC,MAAM,2BAA2B;IAKpC,OAAO;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACtF,OAAO;YACH,EAAE,EAAE,6BAA2B,CAAC,EAAE;YAClC,IAAI,EAAE,6BAA2B,CAAC,EAAE;YACpC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE,CAC3E,IAAI,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC;SACpF,CAAC;IACN,CAAC;;AAfQ,kEAA2B;AAC7B,8BAAE,GAAG,6BAA6B,AAAhC,CAAiC;AAEvB;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;uFAAC;sCAHjF,2BAA2B;IADvC,IAAA,sBAAU,GAAE;GACA,2BAA2B,CAgBvC;AAGM,IAAM,uBAAuB,+BAA7B,MAAM,uBAAuB;IAKhC,OAAO;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/E,OAAO;YACH,EAAE,EAAE,yBAAuB,CAAC,EAAE;YAC9B,IAAI,EAAE,yBAAuB,CAAC,EAAE;YAChC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE,CAC3E,IAAI,CAAC,kCAAkC,CAAC,2BAA2B,CAAC,IAAI,EAAE,GAAG,CAAC;SACrF,CAAC;IACN,CAAC;;AAfQ,0DAAuB;AACzB,0BAAE,GAAG,0DAA4B,AAA/B,CAAgC;AAEtB;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;mFAAC;kCAHjF,uBAAuB;IADnC,IAAA,sBAAU,GAAE;GACA,uBAAuB,CAgBnC;AAGM,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAK9B,OAAO;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrF,OAAO;YACH,EAAE,EAAE,uBAAqB,CAAC,EAAE;YAC5B,IAAI,EAAE,uBAAqB,CAAC,EAAE;YAC9B,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE,CAC3E,IAAI,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC;SACpF,CAAC;IACN,CAAC;;AAfQ,sDAAqB;AACvB,wBAAE,GAAG,wDAA0B,AAA7B,CAA8B;AAEpB;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;iFAAC;gCAHjF,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAgBjC;AAGM,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAKzB,OAAO;QACH,OAAO;YACH,EAAE,EAAE,kBAAgB,CAAC,EAAE;YACvB,IAAI,EAAE,kBAAgB,CAAC,EAAE;YACzB,WAAW,EAAE,qGAAqG;YAClH,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oDAAoD;qBACpE;iBACJ;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClC,OAAO,IAAI,CAAC,kCAAkC,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC;SACJ,CAAC;IACN,CAAC;;AAzBQ,4CAAgB;AAClB,mBAAE,GAAG,mDAAqB,AAAxB,CAAyB;AAEf;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;4EAAC;2BAHjF,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CA0B5B;AAGM,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAK7B,OAAO;QACH,OAAO;YACH,EAAE,EAAE,qDAAuB;YAC3B,IAAI,EAAE,qDAAuB;YAC7B,WAAW,EAAE,sGAAsG;gBAC/G,qGAAqG;YACzG,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qDAAqD;qBACrE;iBACJ;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAmB,EAAE;gBAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClC,OAAO,IAAI,CAAC,kCAAkC,CAAC,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnF,CAAC;SACJ,CAAC;IACN,CAAC;;AA1BQ,oDAAoB;AACtB,uBAAE,GAAG,qDAAuB,AAA1B,CAA2B;AAEjB;IADlB,IAAA,kBAAM,EAAC,kCAAkC,CAAC;sCACY,kCAAkC;gFAAC;+BAHjF,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA2BhC"}
@@ -1,3 +1,4 @@
1
+ import '../../src/browser/style/index.css';
1
2
  import { ContainerModule } from '@theia/core/shared/inversify';
2
3
  declare const _default: ContainerModule;
3
4
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AA0C/D,wBA4GG"}
1
+ {"version":3,"file":"frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,mCAAmC,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AA+C/D,wBA4HG"}
@@ -15,6 +15,7 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
+ require("../../src/browser/style/index.css");
18
19
  const inversify_1 = require("@theia/core/shared/inversify");
19
20
  const common_1 = require("@theia/ai-chat/lib/common");
20
21
  const common_2 = require("@theia/ai-core/lib/common");
@@ -29,6 +30,7 @@ const workspace_preferences_1 = require("./workspace-preferences");
29
30
  const file_changeset_functions_1 = require("./file-changeset-functions");
30
31
  const orchestrator_chat_agent_1 = require("../common/orchestrator-chat-agent");
31
32
  const universal_chat_agent_1 = require("../common/universal-chat-agent");
33
+ const app_tester_chat_agent_1 = require("./app-tester-chat-agent");
32
34
  const command_chat_agents_1 = require("../common/command-chat-agents");
33
35
  const context_functions_1 = require("./context-functions");
34
36
  const agent_configuration_widget_1 = require("./ai-configuration/agent-configuration-widget");
@@ -37,6 +39,7 @@ const ai_configuration_view_contribution_1 = require("./ai-configuration/ai-conf
37
39
  const ai_configuration_widget_1 = require("./ai-configuration/ai-configuration-widget");
38
40
  const variable_configuration_widget_1 = require("./ai-configuration/variable-configuration-widget");
39
41
  const context_files_variable_1 = require("../common/context-files-variable");
42
+ const tools_configuration_widget_1 = require("./ai-configuration/tools-configuration-widget");
40
43
  const tab_bar_toolbar_1 = require("@theia/core/lib/browser/shell/tab-bar-toolbar");
41
44
  const ai_configuration_preferences_1 = require("./ai-configuration/ai-configuration-preferences");
42
45
  const template_preference_contribution_1 = require("./template-preference-contribution");
@@ -63,6 +66,9 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
63
66
  bind(universal_chat_agent_1.UniversalChatAgent).toSelf().inSingletonScope();
64
67
  bind(common_2.Agent).toService(universal_chat_agent_1.UniversalChatAgent);
65
68
  bind(common_1.ChatAgent).toService(universal_chat_agent_1.UniversalChatAgent);
69
+ bind(app_tester_chat_agent_1.AppTesterChatAgent).toSelf().inSingletonScope();
70
+ bind(common_2.Agent).toService(app_tester_chat_agent_1.AppTesterChatAgent);
71
+ bind(common_1.ChatAgent).toService(app_tester_chat_agent_1.AppTesterChatAgent);
66
72
  bind(command_chat_agents_1.CommandChatAgent).toSelf().inSingletonScope();
67
73
  bind(common_2.Agent).toService(command_chat_agents_1.CommandChatAgent);
68
74
  bind(common_1.ChatAgent).toService(command_chat_agents_1.CommandChatAgent);
@@ -75,11 +81,13 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
75
81
  (0, common_2.bindToolProvider)(workspace_functions_1.FileDiagnosticProvider, bind);
76
82
  bind(workspace_functions_1.WorkspaceFunctionScope).toSelf().inSingletonScope();
77
83
  (0, common_2.bindToolProvider)(workspace_search_provider_1.WorkspaceSearchProvider, bind);
78
- (0, common_2.bindToolProvider)(file_changeset_functions_1.WriteChangeToFileProvider, bind);
84
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.SuggestFileContent, bind);
85
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.WriteFileContent, bind);
79
86
  (0, common_2.bindToolProvider)(workspace_task_provider_1.TaskListProvider, bind);
80
87
  (0, common_2.bindToolProvider)(workspace_task_provider_1.TaskRunnerProvider, bind);
81
88
  bind(file_changeset_functions_1.ReplaceContentInFileFunctionHelper).toSelf().inSingletonScope();
82
- (0, common_2.bindToolProvider)(file_changeset_functions_1.ReplaceContentInFileProvider, bind);
89
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.SuggestFileReplacements, bind);
90
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.WriteFileReplacements, bind);
83
91
  (0, common_2.bindToolProvider)(context_functions_1.ListChatContext, bind);
84
92
  (0, common_2.bindToolProvider)(context_functions_1.ResolveChatContext, bind);
85
93
  bind(ai_configuration_service_1.AIConfigurationSelectionService).toSelf().inSingletonScope();
@@ -106,10 +114,18 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
106
114
  createWidget: () => ctx.container.get(agent_configuration_widget_1.AIAgentConfigurationWidget)
107
115
  }))
108
116
  .inSingletonScope();
109
- (0, common_2.bindToolProvider)(file_changeset_functions_1.SimpleReplaceContentInFileProvider, bind);
110
- (0, common_2.bindToolProvider)(file_changeset_functions_1.ClearFileChangesProvider, bind);
111
- (0, common_2.bindToolProvider)(file_changeset_functions_1.GetProposedFileStateProvider, bind);
117
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.SimpleSuggestFileReplacements, bind);
118
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.SimpleWriteFileReplacements, bind);
119
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.ClearFileChanges, bind);
120
+ (0, common_2.bindToolProvider)(file_changeset_functions_1.GetProposedFileState, bind);
112
121
  (0, common_2.bindToolProvider)(context_functions_1.AddFileToChatContext, bind);
122
+ bind(tools_configuration_widget_1.AIToolsConfigurationWidget).toSelf();
123
+ bind(browser_1.WidgetFactory)
124
+ .toDynamicValue(ctx => ({
125
+ id: tools_configuration_widget_1.AIToolsConfigurationWidget.ID,
126
+ createWidget: () => ctx.container.get(tools_configuration_widget_1.AIToolsConfigurationWidget)
127
+ }))
128
+ .inSingletonScope();
113
129
  bind(common_2.AIVariableContribution).to(context_files_variable_1.ContextFilesVariableContribution).inSingletonScope();
114
130
  bind(browser_1.PreferenceContribution).toConstantValue({ schema: ai_configuration_preferences_1.AiConfigurationPreferences });
115
131
  bind(browser_1.FrontendApplicationContribution).to(template_preference_contribution_1.TemplatePreferenceContribution);