@theia/ai-chat 1.61.0-next.8 → 1.61.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/lib/browser/ai-chat-frontend-contribution.d.ts +11 -0
- package/lib/browser/ai-chat-frontend-contribution.d.ts.map +1 -0
- package/lib/browser/ai-chat-frontend-contribution.js +56 -0
- package/lib/browser/ai-chat-frontend-contribution.js.map +1 -0
- package/lib/browser/ai-chat-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-chat-frontend-module.js +21 -3
- package/lib/browser/ai-chat-frontend-module.js.map +1 -1
- package/lib/browser/change-set-decorator-service.d.ts +24 -0
- package/lib/browser/change-set-decorator-service.d.ts.map +1 -0
- package/lib/browser/change-set-decorator-service.js +66 -0
- package/lib/browser/change-set-decorator-service.js.map +1 -0
- package/lib/browser/change-set-file-element.d.ts +7 -4
- package/lib/browser/change-set-file-element.d.ts.map +1 -1
- package/lib/browser/change-set-file-element.js +20 -12
- package/lib/browser/change-set-file-element.js.map +1 -1
- package/lib/browser/change-set-file-resource.d.ts +1 -42
- package/lib/browser/change-set-file-resource.d.ts.map +1 -1
- package/lib/browser/change-set-file-resource.js +1 -136
- package/lib/browser/change-set-file-resource.js.map +1 -1
- package/lib/browser/change-set-variable.d.ts.map +1 -1
- package/lib/browser/change-set-variable.js +13 -4
- package/lib/browser/change-set-variable.js.map +1 -1
- package/lib/browser/context-file-variable-label-provider.js +1 -1
- package/lib/browser/context-file-variable-label-provider.js.map +1 -1
- package/lib/browser/file-chat-variable-contribution.d.ts.map +1 -1
- package/lib/browser/file-chat-variable-contribution.js +29 -27
- package/lib/browser/file-chat-variable-contribution.js.map +1 -1
- package/lib/browser/task-context-service.d.ts +40 -0
- package/lib/browser/task-context-service.d.ts.map +1 -0
- package/lib/browser/task-context-service.js +148 -0
- package/lib/browser/task-context-service.js.map +1 -0
- package/lib/browser/task-context-storage-service.d.ts +18 -0
- package/lib/browser/task-context-storage-service.d.ts.map +1 -0
- package/lib/browser/task-context-storage-service.js +77 -0
- package/lib/browser/task-context-storage-service.js.map +1 -0
- package/lib/browser/task-context-variable-contribution.d.ts +20 -0
- package/lib/browser/task-context-variable-contribution.d.ts.map +1 -0
- package/lib/browser/task-context-variable-contribution.js +101 -0
- package/lib/browser/task-context-variable-contribution.js.map +1 -0
- package/lib/browser/task-context-variable-label-provider.d.ts +21 -0
- package/lib/browser/task-context-variable-label-provider.d.ts.map +1 -0
- package/lib/browser/task-context-variable-label-provider.js +83 -0
- package/lib/browser/task-context-variable-label-provider.js.map +1 -0
- package/lib/browser/task-context-variable.d.ts +3 -0
- package/lib/browser/task-context-variable.d.ts.map +1 -0
- package/lib/browser/task-context-variable.js +29 -0
- package/lib/browser/task-context-variable.js.map +1 -0
- package/lib/common/chat-agents.d.ts +2 -1
- package/lib/common/chat-agents.d.ts.map +1 -1
- package/lib/common/chat-agents.js +5 -0
- package/lib/common/chat-agents.js.map +1 -1
- package/lib/common/chat-model.d.ts +173 -8
- package/lib/common/chat-model.d.ts.map +1 -1
- package/lib/common/chat-model.js +329 -17
- package/lib/common/chat-model.js.map +1 -1
- package/lib/common/chat-request-parser.d.ts +1 -1
- package/lib/common/chat-request-parser.d.ts.map +1 -1
- package/lib/common/chat-request-parser.js +1 -1
- package/lib/common/chat-request-parser.js.map +1 -1
- package/lib/common/chat-service.d.ts +2 -0
- package/lib/common/chat-service.d.ts.map +1 -1
- package/lib/common/chat-service.js +18 -25
- package/lib/common/chat-service.js.map +1 -1
- package/lib/common/chat-session-naming-service.d.ts.map +1 -1
- package/lib/common/chat-session-naming-service.js +3 -3
- package/lib/common/chat-session-naming-service.js.map +1 -1
- package/lib/common/chat-session-summary-agent-prompt.d.ts +5 -0
- package/lib/common/chat-session-summary-agent-prompt.d.ts.map +1 -0
- package/lib/common/chat-session-summary-agent-prompt.js +30 -0
- package/lib/common/chat-session-summary-agent-prompt.js.map +1 -0
- package/lib/common/chat-session-summary-agent.d.ts +17 -0
- package/lib/common/chat-session-summary-agent.d.ts.map +1 -0
- package/lib/common/chat-session-summary-agent.js +48 -0
- package/lib/common/chat-session-summary-agent.js.map +1 -0
- package/lib/common/context-summary-variable.js +1 -1
- package/lib/common/context-summary-variable.js.map +1 -1
- package/package.json +11 -11
- package/src/browser/ai-chat-frontend-contribution.ts +49 -0
- package/src/browser/ai-chat-frontend-module.ts +25 -4
- package/src/browser/change-set-decorator-service.ts +72 -0
- package/src/browser/change-set-file-element.ts +18 -13
- package/src/browser/change-set-file-resource.ts +1 -138
- package/src/browser/change-set-variable.ts +14 -6
- package/src/browser/context-file-variable-label-provider.ts +1 -1
- package/src/browser/file-chat-variable-contribution.ts +26 -29
- package/src/browser/task-context-service.ts +144 -0
- package/src/browser/task-context-storage-service.ts +75 -0
- package/src/browser/task-context-variable-contribution.ts +93 -0
- package/src/browser/task-context-variable-label-provider.ts +67 -0
- package/src/browser/task-context-variable.ts +28 -0
- package/src/common/chat-agents.ts +6 -1
- package/src/common/chat-model.ts +507 -18
- package/src/common/chat-request-parser.ts +2 -2
- package/src/common/chat-service.ts +17 -26
- package/src/common/chat-session-naming-service.ts +4 -3
- package/src/common/chat-session-summary-agent-prompt.ts +28 -0
- package/src/common/chat-session-summary-agent.ts +42 -0
- package/src/common/context-summary-variable.ts +1 -1
package/lib/common/chat-model.js
CHANGED
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
*--------------------------------------------------------------------------------------------*/
|
|
21
21
|
// Partially copied from https://github.com/microsoft/vscode/blob/a2cab7255c0df424027be05d58e1b7b941f4ea60/src/vs/workbench/contrib/chat/common/chatModel.ts
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.ProgressChatResponseContentImpl = exports.ErrorChatResponseModel = exports.MutableChatResponseModel = exports.QuestionResponseContentImpl = exports.HorizontalLayoutChatResponseContentImpl = exports.CommandChatResponseContentImpl = exports.COMMAND_CHAT_RESPONSE_COMMAND = exports.ToolCallChatResponseContentImpl = exports.CodeChatResponseContentImpl = exports.InformationalChatResponseContentImpl = exports.MarkdownChatResponseContentImpl = exports.ThinkingChatResponseContentImpl = exports.TextChatResponseContentImpl = exports.ErrorChatResponseContentImpl = exports.MutableChatRequestModel = exports.ChatContextManagerImpl = exports.ChangeSetImpl = exports.MutableChatModel = exports.QuestionResponseContent = exports.ProgressChatResponseContent = exports.ThinkingChatResponseContent = exports.ErrorChatResponseContent = exports.ToolCallChatResponseContent = exports.HorizontalLayoutChatResponseContent = exports.CodeChatResponseContent = exports.CommandChatResponseContent = exports.InformationalChatResponseContent = exports.MarkdownChatResponseContent = exports.TextChatResponseContent = exports.Location = exports.ChatResponseContent = exports.ChatRequestModel = exports.ChatChangeEvent = void 0;
|
|
23
|
+
exports.ProgressChatResponseContentImpl = exports.ErrorChatResponseModel = exports.MutableChatResponseModel = exports.QuestionResponseContentImpl = exports.HorizontalLayoutChatResponseContentImpl = exports.CommandChatResponseContentImpl = exports.COMMAND_CHAT_RESPONSE_COMMAND = exports.ToolCallChatResponseContentImpl = exports.CodeChatResponseContentImpl = exports.InformationalChatResponseContentImpl = exports.MarkdownChatResponseContentImpl = exports.ThinkingChatResponseContentImpl = exports.TextChatResponseContentImpl = exports.ErrorChatResponseContentImpl = exports.MutableChatRequestModel = exports.ChatContextManagerImpl = exports.ChangeSetImpl = exports.ChatRequestHierarchyBranchImpl = exports.ChatRequestHierarchyImpl = exports.MutableChatModel = exports.QuestionResponseContent = exports.ProgressChatResponseContent = exports.ThinkingChatResponseContent = exports.ErrorChatResponseContent = exports.ToolCallChatResponseContent = exports.HorizontalLayoutChatResponseContent = exports.CodeChatResponseContent = exports.CommandChatResponseContent = exports.InformationalChatResponseContent = exports.MarkdownChatResponseContent = exports.TextChatResponseContent = exports.Location = exports.ChatResponseContent = exports.EditableChatRequestModel = exports.ChatRequestModel = exports.ChatSuggestionCallback = exports.ChatChangeEvent = void 0;
|
|
24
|
+
const ai_core_1 = require("@theia/ai-core");
|
|
24
25
|
const core_1 = require("@theia/core");
|
|
25
26
|
const markdown_rendering_1 = require("@theia/core/lib/common/markdown-rendering");
|
|
26
27
|
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
@@ -32,6 +33,21 @@ var ChatChangeEvent;
|
|
|
32
33
|
}
|
|
33
34
|
ChatChangeEvent.isChangeSetEvent = isChangeSetEvent;
|
|
34
35
|
})(ChatChangeEvent || (exports.ChatChangeEvent = ChatChangeEvent = {}));
|
|
36
|
+
var ChatSuggestionCallback;
|
|
37
|
+
(function (ChatSuggestionCallback) {
|
|
38
|
+
function is(candidate) {
|
|
39
|
+
return typeof candidate === 'object' && 'callback' in candidate;
|
|
40
|
+
}
|
|
41
|
+
ChatSuggestionCallback.is = is;
|
|
42
|
+
function containsCallbackLink(candidate) {
|
|
43
|
+
if (!is(candidate)) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
const text = typeof candidate.content === 'string' ? candidate.content : candidate.content.value;
|
|
47
|
+
return text.includes('](_callback)');
|
|
48
|
+
}
|
|
49
|
+
ChatSuggestionCallback.containsCallbackLink = containsCallbackLink;
|
|
50
|
+
})(ChatSuggestionCallback || (exports.ChatSuggestionCallback = ChatSuggestionCallback = {}));
|
|
35
51
|
var ChatRequestModel;
|
|
36
52
|
(function (ChatRequestModel) {
|
|
37
53
|
function is(request) {
|
|
@@ -56,6 +72,20 @@ var ChatRequestModel;
|
|
|
56
72
|
}
|
|
57
73
|
ChatRequestModel.isInProgress = isInProgress;
|
|
58
74
|
})(ChatRequestModel || (exports.ChatRequestModel = ChatRequestModel = {}));
|
|
75
|
+
var EditableChatRequestModel;
|
|
76
|
+
(function (EditableChatRequestModel) {
|
|
77
|
+
function is(request) {
|
|
78
|
+
return !!(ChatRequestModel.is(request) &&
|
|
79
|
+
'enableEdit' in request &&
|
|
80
|
+
'cancelEdit' in request &&
|
|
81
|
+
'submitEdit' in request);
|
|
82
|
+
}
|
|
83
|
+
EditableChatRequestModel.is = is;
|
|
84
|
+
function isEditing(request) {
|
|
85
|
+
return is(request) && request.isEditing;
|
|
86
|
+
}
|
|
87
|
+
EditableChatRequestModel.isEditing = isEditing;
|
|
88
|
+
})(EditableChatRequestModel || (exports.EditableChatRequestModel = EditableChatRequestModel = {}));
|
|
59
89
|
var ChatResponseContent;
|
|
60
90
|
(function (ChatResponseContent) {
|
|
61
91
|
function is(obj) {
|
|
@@ -217,17 +247,32 @@ class MutableChatModel {
|
|
|
217
247
|
this.location = location;
|
|
218
248
|
this._onDidChangeEmitter = new core_1.Emitter();
|
|
219
249
|
this.onDidChange = this._onDidChangeEmitter.event;
|
|
250
|
+
this.toDispose = new core_1.DisposableCollection();
|
|
251
|
+
this._suggestions = [];
|
|
220
252
|
this._contextManager = new ChatContextManagerImpl();
|
|
221
253
|
// TODO accept serialized data as a parameter to restore a previously saved ChatModel
|
|
222
|
-
this.
|
|
254
|
+
this._hierarchy = new ChatRequestHierarchyImpl();
|
|
223
255
|
this._id = (0, core_1.generateUuid)();
|
|
224
|
-
this.
|
|
256
|
+
this.toDispose.pushAll([
|
|
257
|
+
this._onDidChangeEmitter,
|
|
258
|
+
this._contextManager.onDidChange(e => this._onDidChangeEmitter.fire(e)),
|
|
259
|
+
this._hierarchy.onDidChange(event => this._onDidChangeEmitter.fire({
|
|
260
|
+
kind: 'changeHierarchyBranch',
|
|
261
|
+
branch: event.branch,
|
|
262
|
+
})),
|
|
263
|
+
]);
|
|
264
|
+
}
|
|
265
|
+
getBranches() {
|
|
266
|
+
return this._hierarchy.activeBranches();
|
|
267
|
+
}
|
|
268
|
+
getBranch(requestId) {
|
|
269
|
+
return this._hierarchy.findBranch(requestId);
|
|
225
270
|
}
|
|
226
271
|
getRequests() {
|
|
227
|
-
return this.
|
|
272
|
+
return this._hierarchy.activeRequests();
|
|
228
273
|
}
|
|
229
274
|
getRequest(id) {
|
|
230
|
-
return this.
|
|
275
|
+
return this.getRequests().find(request => request.id === id);
|
|
231
276
|
}
|
|
232
277
|
get id() {
|
|
233
278
|
return this._id;
|
|
@@ -235,6 +280,9 @@ class MutableChatModel {
|
|
|
235
280
|
get changeSet() {
|
|
236
281
|
return this._changeSet;
|
|
237
282
|
}
|
|
283
|
+
get suggestions() {
|
|
284
|
+
return this._suggestions;
|
|
285
|
+
}
|
|
238
286
|
get context() {
|
|
239
287
|
return this._contextManager;
|
|
240
288
|
}
|
|
@@ -275,23 +323,201 @@ class MutableChatModel {
|
|
|
275
323
|
}
|
|
276
324
|
}
|
|
277
325
|
addRequest(parsedChatRequest, agentId, context = { variables: [] }) {
|
|
326
|
+
if (parsedChatRequest.request.referencedRequestId) {
|
|
327
|
+
return this.applyEdit(parsedChatRequest, agentId, context);
|
|
328
|
+
}
|
|
278
329
|
const requestModel = new MutableChatRequestModel(this, parsedChatRequest, agentId, context);
|
|
279
|
-
this.
|
|
330
|
+
this.toDispose.push(requestModel);
|
|
331
|
+
this._hierarchy.append(requestModel);
|
|
280
332
|
this._onDidChangeEmitter.fire({
|
|
281
333
|
kind: 'addRequest',
|
|
282
334
|
request: requestModel,
|
|
283
335
|
});
|
|
284
336
|
return requestModel;
|
|
285
337
|
}
|
|
338
|
+
setSuggestions(suggestions) {
|
|
339
|
+
this._suggestions = Object.freeze(suggestions);
|
|
340
|
+
this._onDidChangeEmitter.fire({
|
|
341
|
+
kind: 'suggestionsChanged',
|
|
342
|
+
suggestions
|
|
343
|
+
});
|
|
344
|
+
}
|
|
286
345
|
isEmpty() {
|
|
287
|
-
return this.
|
|
346
|
+
return this.getRequests().length === 0;
|
|
347
|
+
}
|
|
348
|
+
applyEdit(parsedChatRequest, agentId, context = { variables: [] }) {
|
|
349
|
+
const requestId = parsedChatRequest.request.referencedRequestId;
|
|
350
|
+
const branch = this._hierarchy.findBranch(requestId);
|
|
351
|
+
if (!branch) {
|
|
352
|
+
throw new Error(`Cannot find branch for requestId: ${requestId}`);
|
|
353
|
+
}
|
|
354
|
+
const requestModel = new MutableChatRequestModel(this, parsedChatRequest, agentId, context);
|
|
355
|
+
this.toDispose.push(requestModel);
|
|
356
|
+
branch.add(requestModel);
|
|
357
|
+
this.removeChangeSet();
|
|
358
|
+
this._onDidChangeEmitter.fire({
|
|
359
|
+
kind: 'addRequest',
|
|
360
|
+
request: requestModel,
|
|
361
|
+
});
|
|
362
|
+
return requestModel;
|
|
288
363
|
}
|
|
289
364
|
dispose() {
|
|
290
365
|
this.removeChangeSet(); // Signal disposal of last change set.
|
|
291
|
-
this.
|
|
366
|
+
this.toDispose.dispose();
|
|
367
|
+
}
|
|
368
|
+
emit(event) {
|
|
369
|
+
this._onDidChangeEmitter.fire(event);
|
|
292
370
|
}
|
|
293
371
|
}
|
|
294
372
|
exports.MutableChatModel = MutableChatModel;
|
|
373
|
+
class ChatRequestHierarchyImpl {
|
|
374
|
+
constructor() {
|
|
375
|
+
this.onDidChangeActiveBranchEmitter = new core_1.Emitter();
|
|
376
|
+
this.onDidChange = this.onDidChangeActiveBranchEmitter.event;
|
|
377
|
+
this.branch = new ChatRequestHierarchyBranchImpl(this);
|
|
378
|
+
}
|
|
379
|
+
append(request) {
|
|
380
|
+
const branches = this.activeBranches();
|
|
381
|
+
if (branches.length === 0) {
|
|
382
|
+
this.branch.add(request);
|
|
383
|
+
return this.branch;
|
|
384
|
+
}
|
|
385
|
+
return branches.at(-1).continue(request);
|
|
386
|
+
}
|
|
387
|
+
activeRequests() {
|
|
388
|
+
return this.activeBranches().map(h => h.get());
|
|
389
|
+
}
|
|
390
|
+
activeBranches() {
|
|
391
|
+
return Array.from(this.iterateBranches());
|
|
392
|
+
}
|
|
393
|
+
*iterateBranches() {
|
|
394
|
+
let current = this.branch;
|
|
395
|
+
while (current) {
|
|
396
|
+
if (current.items.length > 0) {
|
|
397
|
+
yield current;
|
|
398
|
+
current = current.next();
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
break;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
findRequest(requestId) {
|
|
406
|
+
var _a;
|
|
407
|
+
const branch = this.findInBranch(this.branch, requestId);
|
|
408
|
+
return (_a = branch === null || branch === void 0 ? void 0 : branch.items.find(item => item.element.id === requestId)) === null || _a === void 0 ? void 0 : _a.element;
|
|
409
|
+
}
|
|
410
|
+
findBranch(requestId) {
|
|
411
|
+
return this.findInBranch(this.branch, requestId);
|
|
412
|
+
}
|
|
413
|
+
findInBranch(branch, requestId) {
|
|
414
|
+
for (const item of branch.items) {
|
|
415
|
+
if (item.element.id === requestId) {
|
|
416
|
+
return branch;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
for (const item of branch.items) {
|
|
420
|
+
if (item.next) {
|
|
421
|
+
const found = this.findInBranch(item.next, requestId);
|
|
422
|
+
if (found) {
|
|
423
|
+
return found;
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
return undefined;
|
|
428
|
+
}
|
|
429
|
+
notifyChange(event) {
|
|
430
|
+
this.onDidChangeActiveBranchEmitter.fire(event);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
exports.ChatRequestHierarchyImpl = ChatRequestHierarchyImpl;
|
|
434
|
+
class ChatRequestHierarchyBranchImpl {
|
|
435
|
+
constructor(hierarchy, previous, items = [], _activeIndex = -1) {
|
|
436
|
+
this.hierarchy = hierarchy;
|
|
437
|
+
this.previous = previous;
|
|
438
|
+
this.items = items;
|
|
439
|
+
this._activeIndex = _activeIndex;
|
|
440
|
+
this.id = (0, core_1.generateUuid)();
|
|
441
|
+
}
|
|
442
|
+
get activeBranchIndex() {
|
|
443
|
+
return this._activeIndex;
|
|
444
|
+
}
|
|
445
|
+
set activeBranchIndex(value) {
|
|
446
|
+
this._activeIndex = value;
|
|
447
|
+
this.hierarchy.notifyChange({
|
|
448
|
+
branch: this,
|
|
449
|
+
item: this.items[this._activeIndex]
|
|
450
|
+
});
|
|
451
|
+
}
|
|
452
|
+
next() {
|
|
453
|
+
var _a;
|
|
454
|
+
return (_a = this.items[this.activeBranchIndex]) === null || _a === void 0 ? void 0 : _a.next;
|
|
455
|
+
}
|
|
456
|
+
get() {
|
|
457
|
+
return this.items[this.activeBranchIndex].element;
|
|
458
|
+
}
|
|
459
|
+
add(request) {
|
|
460
|
+
const branch = {
|
|
461
|
+
element: request
|
|
462
|
+
};
|
|
463
|
+
this.items.push(branch);
|
|
464
|
+
this.activeBranchIndex = this.items.length - 1;
|
|
465
|
+
}
|
|
466
|
+
remove(request) {
|
|
467
|
+
const requestId = typeof request === 'string' ? request : request.id;
|
|
468
|
+
const index = this.items.findIndex(version => version.element.id === requestId);
|
|
469
|
+
if (index !== -1) {
|
|
470
|
+
this.items.splice(index, 1);
|
|
471
|
+
if (this.activeBranchIndex >= index) {
|
|
472
|
+
this.activeBranchIndex--;
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
continue(request) {
|
|
477
|
+
if (this.items.length === 0) {
|
|
478
|
+
this.add(request);
|
|
479
|
+
return this;
|
|
480
|
+
}
|
|
481
|
+
const item = this.items[this.activeBranchIndex];
|
|
482
|
+
if (item) {
|
|
483
|
+
const next = new ChatRequestHierarchyBranchImpl(this.hierarchy, this, [{ element: request }], 0);
|
|
484
|
+
this.items[this.activeBranchIndex] = {
|
|
485
|
+
...item,
|
|
486
|
+
next
|
|
487
|
+
};
|
|
488
|
+
return next;
|
|
489
|
+
}
|
|
490
|
+
throw new Error(`No current branch to continue from. Active Index: ${this.activeBranchIndex}`);
|
|
491
|
+
}
|
|
492
|
+
enable(request) {
|
|
493
|
+
this.activeBranchIndex = this.items.findIndex(pred => pred.element.id === request.id);
|
|
494
|
+
return this.items[this.activeBranchIndex];
|
|
495
|
+
}
|
|
496
|
+
enablePrevious() {
|
|
497
|
+
if (this.activeBranchIndex > 0) {
|
|
498
|
+
this.activeBranchIndex--;
|
|
499
|
+
return this.items[this.activeBranchIndex];
|
|
500
|
+
}
|
|
501
|
+
return this.items[0];
|
|
502
|
+
}
|
|
503
|
+
enableNext() {
|
|
504
|
+
if (this.activeBranchIndex < this.items.length - 1) {
|
|
505
|
+
this.activeBranchIndex++;
|
|
506
|
+
return this.items[this.activeBranchIndex];
|
|
507
|
+
}
|
|
508
|
+
return this.items[this.activeBranchIndex];
|
|
509
|
+
}
|
|
510
|
+
succeedingBranches() {
|
|
511
|
+
const branches = [];
|
|
512
|
+
let current = this;
|
|
513
|
+
while (current !== undefined) {
|
|
514
|
+
branches.push(current);
|
|
515
|
+
current = current.next();
|
|
516
|
+
}
|
|
517
|
+
return branches;
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
exports.ChatRequestHierarchyBranchImpl = ChatRequestHierarchyBranchImpl;
|
|
295
521
|
class ChangeSetImpl {
|
|
296
522
|
constructor(title, elements = []) {
|
|
297
523
|
this.title = title;
|
|
@@ -343,13 +569,16 @@ class ChangeSetImpl {
|
|
|
343
569
|
}
|
|
344
570
|
exports.ChangeSetImpl = ChangeSetImpl;
|
|
345
571
|
class ChatContextManagerImpl {
|
|
346
|
-
constructor() {
|
|
347
|
-
this.variables = new Array();
|
|
348
|
-
this.onDidChangeEmitter = new core_1.Emitter();
|
|
349
|
-
}
|
|
350
572
|
get onDidChange() {
|
|
351
573
|
return this.onDidChangeEmitter.event;
|
|
352
574
|
}
|
|
575
|
+
constructor(context) {
|
|
576
|
+
this.variables = new Array();
|
|
577
|
+
this.onDidChangeEmitter = new core_1.Emitter();
|
|
578
|
+
if (context) {
|
|
579
|
+
this.variables.push(...context.variables.map(ai_core_1.AIVariableResolutionRequest.fromResolved));
|
|
580
|
+
}
|
|
581
|
+
}
|
|
353
582
|
getVariables() {
|
|
354
583
|
const result = this.variables.slice();
|
|
355
584
|
Object.freeze(result);
|
|
@@ -377,6 +606,16 @@ class ChatContextManagerImpl {
|
|
|
377
606
|
this.onDidChangeEmitter.fire({ kind: 'removeVariable' });
|
|
378
607
|
}
|
|
379
608
|
}
|
|
609
|
+
setVariables(variables) {
|
|
610
|
+
this.variables.length = 0;
|
|
611
|
+
variables.forEach(variable => {
|
|
612
|
+
if (this.variables.some(existing => existing.variable.id === variable.variable.id && existing.arg === variable.arg)) {
|
|
613
|
+
return;
|
|
614
|
+
}
|
|
615
|
+
this.variables.push(variable);
|
|
616
|
+
});
|
|
617
|
+
this.onDidChangeEmitter.fire({ kind: 'setVariables' });
|
|
618
|
+
}
|
|
380
619
|
clear() {
|
|
381
620
|
if (this.variables.length) {
|
|
382
621
|
this.variables.length = 0;
|
|
@@ -388,6 +627,8 @@ exports.ChatContextManagerImpl = ChatContextManagerImpl;
|
|
|
388
627
|
class MutableChatRequestModel {
|
|
389
628
|
constructor(session, message, agentId, context = { variables: [] }, data = {}) {
|
|
390
629
|
this.message = message;
|
|
630
|
+
this._isEditing = false;
|
|
631
|
+
this.toDispose = new core_1.DisposableCollection();
|
|
391
632
|
// TODO accept serialized data as a parameter to restore a previously saved ChatRequestModel
|
|
392
633
|
this._request = message.request;
|
|
393
634
|
this._id = (0, core_1.generateUuid)();
|
|
@@ -396,6 +637,17 @@ class MutableChatRequestModel {
|
|
|
396
637
|
this._context = context;
|
|
397
638
|
this._agentId = agentId;
|
|
398
639
|
this._data = data;
|
|
640
|
+
this.editContextManager = new ChatContextManagerImpl(context);
|
|
641
|
+
this.toDispose.pushAll([
|
|
642
|
+
this.editContextManager.onDidChange(e => this.session.emit(e))
|
|
643
|
+
]);
|
|
644
|
+
}
|
|
645
|
+
get isEditing() {
|
|
646
|
+
return this._isEditing;
|
|
647
|
+
}
|
|
648
|
+
enableEdit() {
|
|
649
|
+
this._isEditing = true;
|
|
650
|
+
this.emitEditRequest(this);
|
|
399
651
|
}
|
|
400
652
|
get data() {
|
|
401
653
|
return this._data;
|
|
@@ -424,9 +676,69 @@ class MutableChatRequestModel {
|
|
|
424
676
|
get agentId() {
|
|
425
677
|
return this._agentId;
|
|
426
678
|
}
|
|
679
|
+
cancelEdit() {
|
|
680
|
+
if (this.isEditing) {
|
|
681
|
+
this._isEditing = false;
|
|
682
|
+
this.emitCancelEdit(this);
|
|
683
|
+
this.clearEditContext();
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
submitEdit(newRequest) {
|
|
687
|
+
var _a;
|
|
688
|
+
if (this.isEditing) {
|
|
689
|
+
this._isEditing = false;
|
|
690
|
+
const variables = (_a = this.editContextManager.getVariables()) !== null && _a !== void 0 ? _a : [];
|
|
691
|
+
this.emitSubmitEdit(this, {
|
|
692
|
+
...newRequest,
|
|
693
|
+
referencedRequestId: this.id,
|
|
694
|
+
variables
|
|
695
|
+
});
|
|
696
|
+
this.clearEditContext();
|
|
697
|
+
}
|
|
698
|
+
}
|
|
427
699
|
cancel() {
|
|
428
700
|
this.response.cancel();
|
|
429
701
|
}
|
|
702
|
+
dispose() {
|
|
703
|
+
this.toDispose.dispose();
|
|
704
|
+
}
|
|
705
|
+
clearEditContext() {
|
|
706
|
+
this.editContextManager.setVariables(this.context.variables.map(ai_core_1.AIVariableResolutionRequest.fromResolved));
|
|
707
|
+
}
|
|
708
|
+
emitEditRequest(request) {
|
|
709
|
+
const branch = this.session.getBranch(request.id);
|
|
710
|
+
if (!branch) {
|
|
711
|
+
throw new Error(`Cannot find hierarchy for requestId: ${request.id}`);
|
|
712
|
+
}
|
|
713
|
+
this.session.emit({
|
|
714
|
+
kind: 'enableEdit',
|
|
715
|
+
request,
|
|
716
|
+
branch,
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
emitCancelEdit(request) {
|
|
720
|
+
const branch = this.session.getBranch(request.id);
|
|
721
|
+
if (!branch) {
|
|
722
|
+
throw new Error(`Cannot find branch for requestId: ${request.id}`);
|
|
723
|
+
}
|
|
724
|
+
this.session.emit({
|
|
725
|
+
kind: 'cancelEdit',
|
|
726
|
+
request,
|
|
727
|
+
branch,
|
|
728
|
+
});
|
|
729
|
+
}
|
|
730
|
+
emitSubmitEdit(request, newRequest) {
|
|
731
|
+
const branch = this.session.getBranch(request.id);
|
|
732
|
+
if (!branch) {
|
|
733
|
+
throw new Error(`Cannot find branch for requestId: ${request.id}`);
|
|
734
|
+
}
|
|
735
|
+
this.session.emit({
|
|
736
|
+
kind: 'submitEdit',
|
|
737
|
+
request,
|
|
738
|
+
branch,
|
|
739
|
+
newRequest
|
|
740
|
+
});
|
|
741
|
+
}
|
|
430
742
|
}
|
|
431
743
|
exports.MutableChatRequestModel = MutableChatRequestModel;
|
|
432
744
|
class ErrorChatResponseContentImpl {
|
|
@@ -624,19 +936,19 @@ class ToolCallChatResponseContentImpl {
|
|
|
624
936
|
return true;
|
|
625
937
|
}
|
|
626
938
|
toLanguageModelMessage() {
|
|
627
|
-
var _a, _b, _c, _d
|
|
939
|
+
var _a, _b, _c, _d;
|
|
628
940
|
return [{
|
|
629
941
|
actor: 'ai',
|
|
630
942
|
type: 'tool_use',
|
|
631
943
|
id: (_a = this.id) !== null && _a !== void 0 ? _a : '',
|
|
632
|
-
input:
|
|
633
|
-
name: (
|
|
944
|
+
input: this.arguments && this.arguments.length !== 0 ? JSON.parse(this.arguments) : {},
|
|
945
|
+
name: (_b = this.name) !== null && _b !== void 0 ? _b : ''
|
|
634
946
|
}, {
|
|
635
947
|
actor: 'user',
|
|
636
948
|
type: 'tool_result',
|
|
637
|
-
tool_use_id: (
|
|
949
|
+
tool_use_id: (_c = this.id) !== null && _c !== void 0 ? _c : '',
|
|
638
950
|
content: this.result,
|
|
639
|
-
name: (
|
|
951
|
+
name: (_d = this.name) !== null && _d !== void 0 ? _d : ''
|
|
640
952
|
}];
|
|
641
953
|
}
|
|
642
954
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-model.js","sourceRoot":"","sources":["../../src/common/chat-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-model.js","sourceRoot":"","sources":["../../src/common/chat-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export declare const ChatRequestParser: unique symbol;
|
|
|
8
8
|
export interface ChatRequestParser {
|
|
9
9
|
parseChatRequest(request: ChatRequest, location: ChatAgentLocation, context: ChatContext): Promise<ParsedChatRequest>;
|
|
10
10
|
}
|
|
11
|
-
export declare class ChatRequestParserImpl {
|
|
11
|
+
export declare class ChatRequestParserImpl implements ChatRequestParser {
|
|
12
12
|
private readonly agentService;
|
|
13
13
|
private readonly variableService;
|
|
14
14
|
private readonly toolInvocationRegistry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-request-parser.d.ts","sourceRoot":"","sources":["../../src/common/chat-request-parser.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EASH,iBAAiB,EACjB,qBAAqB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAA2D,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7J,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAOtC,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAC7D,MAAM,WAAW,iBAAiB;IAC9B,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACzH;AAQD,qBACa,
|
|
1
|
+
{"version":3,"file":"chat-request-parser.d.ts","sourceRoot":"","sources":["../../src/common/chat-request-parser.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EASH,iBAAiB,EACjB,qBAAqB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAA2D,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7J,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAOtC,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAC7D,MAAM,WAAW,iBAAiB;IAC9B,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACzH;AAQD,qBACa,qBAAsB,YAAW,iBAAiB;IAE7B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHG,YAAY,EAAE,gBAAgB,EAC7B,eAAe,EAAE,iBAAiB,EAC7B,sBAAsB,EAAE,sBAAsB,EAC7D,MAAM,EAAE,OAAO;IAG/C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAiC3H,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,GAAG;QACrE,KAAK,EAAE,qBAAqB,EAAE,CAAC;QAC/B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACvC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;KACtC;IAyED;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAetC,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,kBAAkB;CAiB7B"}
|
|
@@ -67,7 +67,7 @@ let ChatRequestParserImpl = class ChatRequestParserImpl {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
// Get resolved variables from variable cache after all variables have been resolved.
|
|
70
|
-
// We want to return all
|
|
70
|
+
// We want to return all recursively resolved variables, thus use the whole cache.
|
|
71
71
|
const resolvedVariables = await (0, ai_core_1.getAllResolvedAIVariables)(variableCache);
|
|
72
72
|
return { request, parts, toolRequests, variables: resolvedVariables };
|
|
73
73
|
}
|