@theia/ai-chat 1.63.0-next.24 → 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.
- package/lib/browser/agent-delegation-tool.d.ts +25 -0
- package/lib/browser/agent-delegation-tool.d.ts.map +1 -0
- package/lib/browser/agent-delegation-tool.js +171 -0
- package/lib/browser/agent-delegation-tool.js.map +1 -0
- package/lib/browser/ai-chat-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-chat-frontend-module.js +8 -0
- package/lib/browser/ai-chat-frontend-module.js.map +1 -1
- package/lib/browser/change-set-file-element.d.ts +19 -1
- package/lib/browser/change-set-file-element.d.ts.map +1 -1
- package/lib/browser/change-set-file-element.js +63 -8
- package/lib/browser/change-set-file-element.js.map +1 -1
- package/lib/browser/chat-tool-preferences.d.ts +1 -1
- package/lib/browser/chat-tool-preferences.d.ts.map +1 -1
- package/lib/browser/chat-tool-preferences.js +4 -4
- package/lib/browser/chat-tool-preferences.js.map +1 -1
- package/lib/browser/chat-tool-request-service.js +1 -1
- package/lib/browser/chat-tool-request-service.js.map +1 -1
- package/lib/browser/delegation-response-content.d.ts +20 -0
- package/lib/browser/delegation-response-content.d.ts.map +1 -0
- package/lib/browser/delegation-response-content.js +51 -0
- package/lib/browser/delegation-response-content.js.map +1 -0
- package/lib/browser/file-chat-variable-contribution.d.ts +15 -1
- package/lib/browser/file-chat-variable-contribution.d.ts.map +1 -1
- package/lib/browser/file-chat-variable-contribution.js +111 -5
- package/lib/browser/file-chat-variable-contribution.js.map +1 -1
- package/lib/browser/image-context-variable-contribution.d.ts +27 -0
- package/lib/browser/image-context-variable-contribution.d.ts.map +1 -0
- package/lib/browser/image-context-variable-contribution.js +149 -0
- package/lib/browser/image-context-variable-contribution.js.map +1 -0
- package/lib/browser/task-context-service.d.ts +9 -3
- package/lib/browser/task-context-service.d.ts.map +1 -1
- package/lib/browser/task-context-service.js +111 -9
- package/lib/browser/task-context-service.js.map +1 -1
- package/lib/browser/task-context-storage-service.d.ts +1 -0
- package/lib/browser/task-context-storage-service.d.ts.map +1 -1
- package/lib/browser/task-context-storage-service.js +4 -1
- package/lib/browser/task-context-storage-service.js.map +1 -1
- package/lib/common/change-set.js +1 -1
- package/lib/common/change-set.js.map +1 -1
- package/lib/common/chat-agent-service.d.ts +1 -0
- package/lib/common/chat-agent-service.d.ts.map +1 -1
- package/lib/common/chat-agent-service.js +2 -1
- package/lib/common/chat-agent-service.js.map +1 -1
- package/lib/common/chat-agents.d.ts +2 -2
- package/lib/common/chat-agents.d.ts.map +1 -1
- package/lib/common/chat-agents.js +21 -5
- package/lib/common/chat-agents.js.map +1 -1
- package/lib/common/chat-model.d.ts +2 -2
- package/lib/common/chat-model.d.ts.map +1 -1
- package/lib/common/chat-model.js +1 -1
- package/lib/common/chat-model.js.map +1 -1
- package/lib/common/chat-request-parser.d.ts.map +1 -1
- package/lib/common/chat-request-parser.js +3 -0
- package/lib/common/chat-request-parser.js.map +1 -1
- package/lib/common/chat-service.d.ts +3 -2
- package/lib/common/chat-service.d.ts.map +1 -1
- package/lib/common/chat-service.js +4 -3
- package/lib/common/chat-service.js.map +1 -1
- package/lib/common/image-context-variable.d.ts +29 -0
- package/lib/common/image-context-variable.d.ts.map +1 -0
- package/lib/common/image-context-variable.js +99 -0
- package/lib/common/image-context-variable.js.map +1 -0
- package/package.json +10 -9
- package/src/browser/agent-delegation-tool.ts +207 -0
- package/src/browser/ai-chat-frontend-module.ts +20 -2
- package/src/browser/change-set-file-element.ts +69 -9
- package/src/browser/chat-tool-preferences.ts +4 -4
- package/src/browser/chat-tool-request-service.ts +1 -1
- package/src/browser/delegation-response-content.ts +55 -0
- package/src/browser/file-chat-variable-contribution.ts +120 -6
- package/src/browser/image-context-variable-contribution.ts +153 -0
- package/src/browser/task-context-service.ts +115 -9
- package/src/browser/task-context-storage-service.ts +5 -1
- package/src/common/change-set.ts +1 -1
- package/src/common/chat-agent-service.ts +1 -0
- package/src/common/chat-agents.ts +26 -9
- package/src/common/chat-model.ts +11 -3
- package/src/common/chat-request-parser.ts +3 -0
- package/src/common/chat-service.ts +5 -4
- package/src/common/image-context-variable.ts +116 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ToolProvider, ToolRequest } from '@theia/ai-core';
|
|
2
|
+
import { ChatAgentService, ChatService } from '../common';
|
|
3
|
+
export declare const AGENT_DELEGATION_FUNCTION_ID = "delegateToAgent";
|
|
4
|
+
export declare class AgentDelegationTool implements ToolProvider {
|
|
5
|
+
static ID: string;
|
|
6
|
+
protected readonly getChatAgentService: () => ChatAgentService;
|
|
7
|
+
protected readonly getChatService: () => ChatService;
|
|
8
|
+
getTool(): ToolRequest;
|
|
9
|
+
private delegateToAgent;
|
|
10
|
+
/**
|
|
11
|
+
* Sets up monitoring of the ChangeSet in the delegated session and bubbles changes to the parent session.
|
|
12
|
+
* @param delegatedSession The session created for the delegated agent
|
|
13
|
+
* @param parentModel The parent session model that should receive the bubbled changes
|
|
14
|
+
* @param agentName The name of the agent for attribution purposes
|
|
15
|
+
*/
|
|
16
|
+
private setupChangeSetBubbling;
|
|
17
|
+
/**
|
|
18
|
+
* Bubbles the ChangeSet from the delegated session to the parent session.
|
|
19
|
+
* @param delegatedSession The session from which to bubble changes
|
|
20
|
+
* @param parentModel The parent session model to receive the bubbled changes
|
|
21
|
+
* @param agentName The name of the agent for attribution purposes
|
|
22
|
+
*/
|
|
23
|
+
private bubbleChangeSet;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=agent-delegation-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-delegation-tool.d.ts","sourceRoot":"","sources":["../../src/browser/agent-delegation-tool.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EACH,gBAAgB,EAGhB,WAAW,EAKd,MAAM,WAAW,CAAC;AAGnB,eAAO,MAAM,4BAA4B,oBAAoB,CAAC;AAE9D,qBACa,mBAAoB,YAAW,YAAY;IACpD,MAAM,CAAC,EAAE,SAAgC;IAGzC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;IAG/D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,WAAW,CAAC;IAErD,OAAO,IAAI,WAAW;YA2BR,eAAe;IAsG7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAW9B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAY1B"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2025 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var AgentDelegationTool_1;
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.AgentDelegationTool = exports.AGENT_DELEGATION_FUNCTION_ID = void 0;
|
|
20
|
+
const tslib_1 = require("tslib");
|
|
21
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
22
|
+
const common_1 = require("../common");
|
|
23
|
+
const delegation_response_content_1 = require("./delegation-response-content");
|
|
24
|
+
exports.AGENT_DELEGATION_FUNCTION_ID = 'delegateToAgent';
|
|
25
|
+
let AgentDelegationTool = AgentDelegationTool_1 = class AgentDelegationTool {
|
|
26
|
+
getTool() {
|
|
27
|
+
return {
|
|
28
|
+
id: AgentDelegationTool_1.ID,
|
|
29
|
+
name: AgentDelegationTool_1.ID,
|
|
30
|
+
description: 'Delegate a task or question to a specific AI agent. This tool allows you to submit requests to specialized agents based on their capabilities.',
|
|
31
|
+
parameters: {
|
|
32
|
+
type: 'object',
|
|
33
|
+
properties: {
|
|
34
|
+
agentId: {
|
|
35
|
+
type: 'string',
|
|
36
|
+
description: 'The ID of the AI agent to delegate the task to.',
|
|
37
|
+
},
|
|
38
|
+
prompt: {
|
|
39
|
+
type: 'string',
|
|
40
|
+
description: 'The task, question, or prompt to pass to the specified agent.',
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
required: ['agentId', 'prompt'],
|
|
44
|
+
},
|
|
45
|
+
handler: (arg_string, ctx) => this.delegateToAgent(arg_string, ctx),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
async delegateToAgent(arg_string, ctx) {
|
|
49
|
+
try {
|
|
50
|
+
const args = JSON.parse(arg_string);
|
|
51
|
+
const { agentId, prompt } = args;
|
|
52
|
+
if (!agentId || !prompt) {
|
|
53
|
+
const errorMsg = 'Both agentId and prompt parameters are required.';
|
|
54
|
+
console.error(errorMsg, { agentId, prompt });
|
|
55
|
+
return errorMsg;
|
|
56
|
+
}
|
|
57
|
+
// Check if the specified agent exists
|
|
58
|
+
const agent = this.getChatAgentService().getAgent(agentId);
|
|
59
|
+
if (!agent) {
|
|
60
|
+
const availableAgents = this.getChatAgentService()
|
|
61
|
+
.getAgents()
|
|
62
|
+
.map(a => a.id);
|
|
63
|
+
const errorMsg = `Agent '${agentId}' not found or not enabled. Available agents: ${availableAgents.join(', ')}`;
|
|
64
|
+
console.error(errorMsg);
|
|
65
|
+
return errorMsg;
|
|
66
|
+
}
|
|
67
|
+
let newSession;
|
|
68
|
+
try {
|
|
69
|
+
// FIXME: this creates a new conversation visible in the UI (Panel), which we don't want
|
|
70
|
+
// It is not possible to start a session without specifying a location (default=Panel)
|
|
71
|
+
const chatService = this.getChatService();
|
|
72
|
+
// Store the current active session to restore it after delegation
|
|
73
|
+
const currentActiveSession = chatService.getActiveSession();
|
|
74
|
+
newSession = chatService.createSession(undefined, { focus: false }, agent);
|
|
75
|
+
// Immediately restore the original active session to avoid confusing the user
|
|
76
|
+
if (currentActiveSession) {
|
|
77
|
+
chatService.setActiveSession(currentActiveSession.id, { focus: false });
|
|
78
|
+
}
|
|
79
|
+
// Setup ChangeSet bubbling from delegated session to parent session
|
|
80
|
+
this.setupChangeSetBubbling(newSession, ctx.session, agent.name);
|
|
81
|
+
}
|
|
82
|
+
catch (sessionError) {
|
|
83
|
+
const errorMsg = `Failed to create chat session for agent '${agentId}': ${sessionError instanceof Error ? sessionError.message : sessionError}`;
|
|
84
|
+
console.error(errorMsg, sessionError);
|
|
85
|
+
return errorMsg;
|
|
86
|
+
}
|
|
87
|
+
// Send the request
|
|
88
|
+
const chatRequest = {
|
|
89
|
+
text: prompt,
|
|
90
|
+
};
|
|
91
|
+
let response;
|
|
92
|
+
try {
|
|
93
|
+
const chatService = this.getChatService();
|
|
94
|
+
response = await chatService.sendRequest(newSession.id, chatRequest);
|
|
95
|
+
}
|
|
96
|
+
catch (sendError) {
|
|
97
|
+
const errorMsg = `Failed to send request to agent '${agentId}': ${sendError instanceof Error ? sendError.message : sendError}`;
|
|
98
|
+
console.error(errorMsg, sendError);
|
|
99
|
+
return errorMsg;
|
|
100
|
+
}
|
|
101
|
+
if (response) {
|
|
102
|
+
// Add the response content immediately to enable streaming
|
|
103
|
+
// The renderer will handle the streaming updates
|
|
104
|
+
ctx.response.response.addContent(new delegation_response_content_1.DelegationResponseContent(agent.name, prompt, response));
|
|
105
|
+
try {
|
|
106
|
+
// Wait for completion to return the final result as tool output
|
|
107
|
+
const result = await response.responseCompleted;
|
|
108
|
+
const stringResult = result.response.asString();
|
|
109
|
+
// Return the raw text to the top-level Agent, as a tool result
|
|
110
|
+
return stringResult;
|
|
111
|
+
}
|
|
112
|
+
catch (completionError) {
|
|
113
|
+
const errorMsg = `Failed to complete response from agent '${agentId}': ${completionError instanceof Error ? completionError.message : completionError}`;
|
|
114
|
+
console.error(errorMsg, completionError);
|
|
115
|
+
return errorMsg;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
const errorMsg = `Delegation to agent '${agentId}' has failed: no response returned.`;
|
|
120
|
+
console.error(errorMsg);
|
|
121
|
+
return errorMsg;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
console.error('Failed to delegate to agent', error);
|
|
126
|
+
return JSON.stringify({
|
|
127
|
+
error: `Failed to parse arguments or delegate to agent: ${error instanceof Error ? error.message : 'Unknown error'}`,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Sets up monitoring of the ChangeSet in the delegated session and bubbles changes to the parent session.
|
|
133
|
+
* @param delegatedSession The session created for the delegated agent
|
|
134
|
+
* @param parentModel The parent session model that should receive the bubbled changes
|
|
135
|
+
* @param agentName The name of the agent for attribution purposes
|
|
136
|
+
*/
|
|
137
|
+
setupChangeSetBubbling(delegatedSession, parentModel, agentName) {
|
|
138
|
+
// Monitor ChangeSet for bubbling
|
|
139
|
+
delegatedSession.model.changeSet.onDidChange(_event => {
|
|
140
|
+
this.bubbleChangeSet(delegatedSession, parentModel, agentName);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Bubbles the ChangeSet from the delegated session to the parent session.
|
|
145
|
+
* @param delegatedSession The session from which to bubble changes
|
|
146
|
+
* @param parentModel The parent session model to receive the bubbled changes
|
|
147
|
+
* @param agentName The name of the agent for attribution purposes
|
|
148
|
+
*/
|
|
149
|
+
bubbleChangeSet(delegatedSession, parentModel, agentName) {
|
|
150
|
+
const delegatedElements = delegatedSession.model.changeSet.getElements();
|
|
151
|
+
if (delegatedElements.length > 0) {
|
|
152
|
+
const bubbledTitle = `Changes from ${agentName}`;
|
|
153
|
+
parentModel.changeSet.setTitle(bubbledTitle);
|
|
154
|
+
parentModel.changeSet.addElements(...delegatedElements);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
exports.AgentDelegationTool = AgentDelegationTool;
|
|
159
|
+
AgentDelegationTool.ID = exports.AGENT_DELEGATION_FUNCTION_ID;
|
|
160
|
+
tslib_1.__decorate([
|
|
161
|
+
(0, inversify_1.inject)(common_1.ChatAgentServiceFactory),
|
|
162
|
+
tslib_1.__metadata("design:type", Function)
|
|
163
|
+
], AgentDelegationTool.prototype, "getChatAgentService", void 0);
|
|
164
|
+
tslib_1.__decorate([
|
|
165
|
+
(0, inversify_1.inject)(common_1.ChatServiceFactory),
|
|
166
|
+
tslib_1.__metadata("design:type", Function)
|
|
167
|
+
], AgentDelegationTool.prototype, "getChatService", void 0);
|
|
168
|
+
exports.AgentDelegationTool = AgentDelegationTool = AgentDelegationTool_1 = tslib_1.__decorate([
|
|
169
|
+
(0, inversify_1.injectable)()
|
|
170
|
+
], AgentDelegationTool);
|
|
171
|
+
//# sourceMappingURL=agent-delegation-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-delegation-tool.js","sourceRoot":"","sources":["../../src/browser/agent-delegation-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;
|
|
1
|
+
{"version":3,"file":"ai-chat-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AA0C/D,wBAoGG"}
|
|
@@ -46,6 +46,8 @@ const task_context_variable_label_provider_1 = require("./task-context-variable-
|
|
|
46
46
|
const task_context_service_1 = require("./task-context-service");
|
|
47
47
|
const task_context_storage_service_1 = require("./task-context-storage-service");
|
|
48
48
|
const ai_chat_frontend_contribution_1 = require("./ai-chat-frontend-contribution");
|
|
49
|
+
const image_context_variable_contribution_1 = require("./image-context-variable-contribution");
|
|
50
|
+
const agent_delegation_tool_1 = require("./agent-delegation-tool");
|
|
49
51
|
exports.default = new inversify_1.ContainerModule(bind => {
|
|
50
52
|
(0, core_1.bindContributionProvider)(bind, common_1.Agent);
|
|
51
53
|
(0, core_1.bindContributionProvider)(bind, common_2.ChatAgent);
|
|
@@ -66,6 +68,8 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
66
68
|
bind(common_2.ChatRequestParser).toService(common_2.ChatRequestParserImpl);
|
|
67
69
|
bind(frontend_chat_service_1.FrontendChatServiceImpl).toSelf().inSingletonScope();
|
|
68
70
|
bind(common_2.ChatService).toService(frontend_chat_service_1.FrontendChatServiceImpl);
|
|
71
|
+
bind(common_2.ChatServiceFactory).toDynamicValue(ctx => () => ctx.container.get(common_2.ChatService));
|
|
72
|
+
bind(common_2.ChatAgentServiceFactory).toDynamicValue(ctx => () => ctx.container.get(common_2.ChatAgentService));
|
|
69
73
|
bind(browser_1.PreferenceContribution).toConstantValue({ schema: ai_chat_preferences_1.aiChatPreferences });
|
|
70
74
|
// Tool confirmation preferences
|
|
71
75
|
(0, chat_tool_preferences_1.bindChatToolPreferences)(bind);
|
|
@@ -111,10 +115,14 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
111
115
|
bind(common_1.AIVariableContribution).toService(task_context_variable_contribution_1.TaskContextVariableContribution);
|
|
112
116
|
bind(task_context_variable_label_provider_1.TaskContextVariableLabelProvider).toSelf().inSingletonScope();
|
|
113
117
|
bind(browser_1.LabelProviderContribution).toService(task_context_variable_label_provider_1.TaskContextVariableLabelProvider);
|
|
118
|
+
bind(image_context_variable_contribution_1.ImageContextVariableContribution).toSelf().inSingletonScope();
|
|
119
|
+
bind(common_1.AIVariableContribution).toService(image_context_variable_contribution_1.ImageContextVariableContribution);
|
|
120
|
+
bind(browser_1.LabelProviderContribution).toService(image_context_variable_contribution_1.ImageContextVariableContribution);
|
|
114
121
|
bind(task_context_service_1.TaskContextService).toSelf().inSingletonScope();
|
|
115
122
|
bind(task_context_storage_service_1.InMemoryTaskContextStorage).toSelf().inSingletonScope();
|
|
116
123
|
bind(task_context_service_1.TaskContextStorageService).toService(task_context_storage_service_1.InMemoryTaskContextStorage);
|
|
117
124
|
bind(ai_chat_frontend_contribution_1.AIChatFrontendContribution).toSelf().inSingletonScope();
|
|
118
125
|
bind(core_1.CommandContribution).toService(ai_chat_frontend_contribution_1.AIChatFrontendContribution);
|
|
126
|
+
(0, common_1.bindToolProvider)(agent_delegation_tool_1.AgentDelegationTool, bind);
|
|
119
127
|
});
|
|
120
128
|
//# sourceMappingURL=ai-chat-frontend-module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.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;;AAEhF,
|
|
1
|
+
{"version":3,"file":"ai-chat-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,12 +37,24 @@ export declare class ChangeSetFileElement implements ChangeSetElement {
|
|
|
37
37
|
protected readonly factory: ChangeSetFileElementFactory;
|
|
38
38
|
protected readonly toDispose: DisposableCollection;
|
|
39
39
|
protected _state: ChangeSetElementState;
|
|
40
|
-
|
|
40
|
+
private _originalContent;
|
|
41
|
+
protected _initialized: boolean;
|
|
42
|
+
protected _initializationPromise: Promise<void> | undefined;
|
|
41
43
|
protected readonly onDidChangeEmitter: Emitter<void>;
|
|
42
44
|
readonly onDidChange: import("@theia/core").Event<void>;
|
|
43
45
|
protected _readOnlyResource: ConfigurableMutableReferenceResource;
|
|
44
46
|
protected _changeResource: ConfigurableMutableReferenceResource;
|
|
45
47
|
init(): void;
|
|
48
|
+
protected initializeAsync(): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Ensures that the element is fully initialized before proceeding.
|
|
51
|
+
* This includes loading the original content from the file system.
|
|
52
|
+
*/
|
|
53
|
+
ensureInitialized(): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Returns true if the element has been fully initialized.
|
|
56
|
+
*/
|
|
57
|
+
get isInitialized(): boolean;
|
|
46
58
|
protected obtainOriginalContent(): Promise<void>;
|
|
47
59
|
protected getInMemoryUri(uri: URI): ConfigurableMutableReferenceResource;
|
|
48
60
|
protected listenForOriginalFileChanges(): void;
|
|
@@ -61,6 +73,12 @@ export declare class ChangeSetFileElement implements ChangeSetElement {
|
|
|
61
73
|
get data(): {
|
|
62
74
|
[key: string]: unknown;
|
|
63
75
|
} | undefined;
|
|
76
|
+
get originalContent(): string | undefined;
|
|
77
|
+
/**
|
|
78
|
+
* Gets the original content of the file asynchronously.
|
|
79
|
+
* Ensures initialization is complete before returning the content.
|
|
80
|
+
*/
|
|
81
|
+
getOriginalContent(): Promise<string | undefined>;
|
|
64
82
|
get targetState(): string;
|
|
65
83
|
open(): Promise<void>;
|
|
66
84
|
openChange(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-set-file-element.d.ts","sourceRoot":"","sources":["../../src/browser/change-set-file-element.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,oCAAoC,EAAE,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,eAAO,MAAM,2BAA2B,eAAwC,CAAC;AACjF,MAAM,MAAM,2BAA2B,GAAG,CAAC,YAAY,EAAE,oBAAoB,KAAK,oBAAoB,CAAC;AACvG,KAAK,qBAAqB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEvD,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AACnE,MAAM,WAAW,oBAAqB,SAAQ,OAAO,CAAC,gBAAgB,CAAC;IACnE,gFAAgF;IAChF,GAAG,EAAE,GAAG,CAAC;IACT,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAChC;AAED,qBACa,oBAAqB,YAAW,gBAAgB;IAEzD,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG;IAK1D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAG9D,SAAS,CAAC,QAAQ,CAAC,yBAAyB,EAAE,yBAAyB,CAAC;IAGxE,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;IAE/B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAC;IAE7F,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;IAC1D,SAAS,CAAC,MAAM,EAAE,qBAAqB,CAAC;IAExC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"change-set-file-element.d.ts","sourceRoot":"","sources":["../../src/browser/change-set-file-element.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ exports.ChangeSetElementArgs = Symbol('ChangeSetElementArgs');
|
|
|
32
32
|
let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
33
33
|
constructor() {
|
|
34
34
|
this.toDispose = new core_1.DisposableCollection();
|
|
35
|
+
this._initialized = false;
|
|
35
36
|
this.onDidChangeEmitter = new core_1.Emitter();
|
|
36
37
|
this.onDidChange = this.onDidChangeEmitter.event;
|
|
37
38
|
}
|
|
@@ -39,12 +40,33 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
39
40
|
return baseUri.withScheme('change-set-immutable').withAuthority(sessionId);
|
|
40
41
|
}
|
|
41
42
|
init() {
|
|
43
|
+
this._initializationPromise = this.initializeAsync();
|
|
42
44
|
this.toDispose.push(this.onDidChangeEmitter);
|
|
43
45
|
}
|
|
46
|
+
async initializeAsync() {
|
|
47
|
+
await this.obtainOriginalContent();
|
|
48
|
+
this.listenForOriginalFileChanges();
|
|
49
|
+
this._initialized = true;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Ensures that the element is fully initialized before proceeding.
|
|
53
|
+
* This includes loading the original content from the file system.
|
|
54
|
+
*/
|
|
55
|
+
async ensureInitialized() {
|
|
56
|
+
await this._initializationPromise;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Returns true if the element has been fully initialized.
|
|
60
|
+
*/
|
|
61
|
+
get isInitialized() {
|
|
62
|
+
return this._initialized;
|
|
63
|
+
}
|
|
44
64
|
async obtainOriginalContent() {
|
|
45
65
|
var _a;
|
|
46
|
-
this.
|
|
47
|
-
|
|
66
|
+
this._originalContent = await this.changeSetFileService.read(this.uri);
|
|
67
|
+
if (this._readOnlyResource) {
|
|
68
|
+
this.readOnlyResource.update({ contents: (_a = this._originalContent) !== null && _a !== void 0 ? _a : '' });
|
|
69
|
+
}
|
|
48
70
|
}
|
|
49
71
|
getInMemoryUri(uri) {
|
|
50
72
|
try {
|
|
@@ -59,10 +81,14 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
59
81
|
if (!event.contains(this.uri)) {
|
|
60
82
|
return;
|
|
61
83
|
}
|
|
84
|
+
if (!this._initialized && this._initializationPromise) {
|
|
85
|
+
// make sure we are initialized
|
|
86
|
+
await this._initializationPromise;
|
|
87
|
+
}
|
|
62
88
|
// If we are applied, the tricky thing becomes the question what to revert to; otherwise, what to apply.
|
|
63
89
|
const newContent = await this.changeSetFileService.read(this.uri).catch(() => '');
|
|
64
90
|
this.readOnlyResource.update({ contents: newContent });
|
|
65
|
-
if (newContent === this.
|
|
91
|
+
if (newContent === this._originalContent) {
|
|
66
92
|
this.state = 'pending';
|
|
67
93
|
}
|
|
68
94
|
else if (newContent === this.targetState) {
|
|
@@ -77,12 +103,22 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
77
103
|
return this.elementProps.uri;
|
|
78
104
|
}
|
|
79
105
|
get readOnlyResource() {
|
|
106
|
+
var _a, _b;
|
|
80
107
|
if (!this._readOnlyResource) {
|
|
81
108
|
this._readOnlyResource = this.getInMemoryUri(ChangeSetFileElement_1.toReadOnlyUri(this.uri, this.elementProps.chatSessionId));
|
|
82
|
-
this._readOnlyResource.update({
|
|
109
|
+
this._readOnlyResource.update({
|
|
110
|
+
autosaveable: false,
|
|
111
|
+
readOnly: true,
|
|
112
|
+
contents: (_a = this._originalContent) !== null && _a !== void 0 ? _a : ''
|
|
113
|
+
});
|
|
83
114
|
this.toDispose.push(this._readOnlyResource);
|
|
84
|
-
|
|
85
|
-
this.
|
|
115
|
+
// If not yet initialized, update the resource once initialization completes
|
|
116
|
+
if (!this._initialized) {
|
|
117
|
+
(_b = this._initializationPromise) === null || _b === void 0 ? void 0 : _b.then(() => {
|
|
118
|
+
var _a, _b;
|
|
119
|
+
(_a = this._readOnlyResource) === null || _a === void 0 ? void 0 : _a.update({ contents: (_b = this._originalContent) !== null && _b !== void 0 ? _b : '' });
|
|
120
|
+
});
|
|
121
|
+
}
|
|
86
122
|
}
|
|
87
123
|
return this._readOnlyResource;
|
|
88
124
|
}
|
|
@@ -131,17 +167,34 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
131
167
|
return this.elementProps.data;
|
|
132
168
|
}
|
|
133
169
|
;
|
|
170
|
+
get originalContent() {
|
|
171
|
+
if (!this._initialized && this._initializationPromise) {
|
|
172
|
+
console.warn('Accessing originalContent before initialization is complete. Consider using async methods.');
|
|
173
|
+
}
|
|
174
|
+
return this._originalContent;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Gets the original content of the file asynchronously.
|
|
178
|
+
* Ensures initialization is complete before returning the content.
|
|
179
|
+
*/
|
|
180
|
+
async getOriginalContent() {
|
|
181
|
+
await this.ensureInitialized();
|
|
182
|
+
return this._originalContent;
|
|
183
|
+
}
|
|
134
184
|
get targetState() {
|
|
135
185
|
var _a;
|
|
136
186
|
return (_a = this.elementProps.targetState) !== null && _a !== void 0 ? _a : '';
|
|
137
187
|
}
|
|
138
188
|
async open() {
|
|
189
|
+
await this.ensureInitialized();
|
|
139
190
|
this.changeSetFileService.open(this);
|
|
140
191
|
}
|
|
141
192
|
async openChange() {
|
|
193
|
+
await this.ensureInitialized();
|
|
142
194
|
this.changeSetFileService.openDiff(this.readOnlyUri, this.changedUri);
|
|
143
195
|
}
|
|
144
196
|
async apply(contents) {
|
|
197
|
+
await this.ensureInitialized();
|
|
145
198
|
if (!await this.confirm('Apply')) {
|
|
146
199
|
return;
|
|
147
200
|
}
|
|
@@ -161,9 +214,11 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
161
214
|
this.state = 'applied';
|
|
162
215
|
}
|
|
163
216
|
onShow() {
|
|
217
|
+
// Ensure we have the latest state when showing
|
|
164
218
|
this.changeResource.update({ contents: this.targetState, onSave: content => this.writeChanges(content) });
|
|
165
219
|
}
|
|
166
220
|
async revert() {
|
|
221
|
+
await this.ensureInitialized();
|
|
167
222
|
if (!await this.confirm('Revert')) {
|
|
168
223
|
return;
|
|
169
224
|
}
|
|
@@ -171,8 +226,8 @@ let ChangeSetFileElement = ChangeSetFileElement_1 = class ChangeSetFileElement {
|
|
|
171
226
|
if (this.type === 'add') {
|
|
172
227
|
await this.changeSetFileService.delete(this.uri);
|
|
173
228
|
}
|
|
174
|
-
else if (this.
|
|
175
|
-
await this.changeSetFileService.write(this.uri, this.
|
|
229
|
+
else if (this._originalContent) {
|
|
230
|
+
await this.changeSetFileService.write(this.uri, this._originalContent);
|
|
176
231
|
}
|
|
177
232
|
}
|
|
178
233
|
async confirm(verb) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-set-file-element.js","sourceRoot":"","sources":["../../src/browser/change-set-file-element.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;;;;;AAEhF,sCAAiE;AACjE,4DAAiF;AAEjF,4CAAqG;AAErG,yEAAoE;AACpE,uEAAiE;AACjE,6EAAyE;AACzE,qDAAwD;AACxD,iFAA2E;AAE9D,QAAA,2BAA2B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAIpE,QAAA,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAkBlE,CAAC;AAGK,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAA1B;QAuBgB,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"change-set-file-element.js","sourceRoot":"","sources":["../../src/browser/change-set-file-element.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { PreferenceProxy, PreferenceService, PreferenceSchema } from '@theia/cor
|
|
|
4
4
|
* Enum for tool confirmation modes
|
|
5
5
|
*/
|
|
6
6
|
export declare enum ToolConfirmationMode {
|
|
7
|
-
|
|
7
|
+
ALWAYS_ALLOW = "always_allow",
|
|
8
8
|
CONFIRM = "confirm",
|
|
9
9
|
DISABLED = "disabled"
|
|
10
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-tool-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/chat-tool-preferences.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,UAAU,EAAsB,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAEH,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAEnB,MAAM,qCAAqC,CAAC;AAE7C;;GAEG;AACH,oBAAY,oBAAoB;IAC5B,
|
|
1
|
+
{"version":3,"file":"chat-tool-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/chat-tool-preferences.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,UAAU,EAAsB,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAEH,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAEnB,MAAM,qCAAqC,CAAC;AAE7C;;GAEG;AACH,oBAAY,oBAAoB;IAC5B,YAAY,iBAAiB;IAC7B,OAAO,YAAY;IACnB,QAAQ,aAAa;CACxB;AAED,eAAO,MAAM,4BAA4B,sCAAsC,CAAC;AAEhF,eAAO,MAAM,mBAAmB,EAAE,gBAqBjC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IAClC,CAAC,4BAA4B,CAAC,EAAE;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAC;CAC9E;AAED,eAAO,MAAM,8BAA8B,eAA2C,CAAC;AACvF,eAAO,MAAM,mBAAmB,eAAgC,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC,qBAAqB,CAAC,CAAC;AAEzE,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,iBAAiB,EAAE,MAAM,GAAE,gBAAsC,GAAG,mBAAmB,CAE7I;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAQnE;AAED;;GAEG;AACH,qBACa,uBAAuB;IAEhC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAa;IAEvF;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,oBAAoB;IAezE;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI;IAqBrE;;OAEG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAS5F;;OAEG;IACH,qBAAqB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ5C;;OAEG;IACH,0BAA0B,IAAI;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE;IAIxE,gCAAgC,IAAI,IAAI;CAQ3C"}
|
|
@@ -26,7 +26,7 @@ const preferences_1 = require("@theia/core/lib/browser/preferences");
|
|
|
26
26
|
*/
|
|
27
27
|
var ToolConfirmationMode;
|
|
28
28
|
(function (ToolConfirmationMode) {
|
|
29
|
-
ToolConfirmationMode["
|
|
29
|
+
ToolConfirmationMode["ALWAYS_ALLOW"] = "always_allow";
|
|
30
30
|
ToolConfirmationMode["CONFIRM"] = "confirm";
|
|
31
31
|
ToolConfirmationMode["DISABLED"] = "disabled";
|
|
32
32
|
})(ToolConfirmationMode || (exports.ToolConfirmationMode = ToolConfirmationMode = {}));
|
|
@@ -38,7 +38,7 @@ exports.chatToolPreferences = {
|
|
|
38
38
|
type: 'object',
|
|
39
39
|
additionalProperties: {
|
|
40
40
|
type: 'string',
|
|
41
|
-
enum: [ToolConfirmationMode.
|
|
41
|
+
enum: [ToolConfirmationMode.ALWAYS_ALLOW, ToolConfirmationMode.CONFIRM, ToolConfirmationMode.DISABLED],
|
|
42
42
|
enumDescriptions: [
|
|
43
43
|
core_1.nls.localize('theia/ai/chat/toolConfirmation/yolo/description', 'Execute tools automatically without confirmation'),
|
|
44
44
|
core_1.nls.localize('theia/ai/chat/toolConfirmation/confirm/description', 'Ask for confirmation before executing tools'),
|
|
@@ -91,7 +91,7 @@ let ToolConfirmationManager = class ToolConfirmationManager {
|
|
|
91
91
|
if (toolConfirmation['*']) {
|
|
92
92
|
return toolConfirmation['*'];
|
|
93
93
|
}
|
|
94
|
-
return ToolConfirmationMode.
|
|
94
|
+
return ToolConfirmationMode.ALWAYS_ALLOW; // Default to Always Allow
|
|
95
95
|
}
|
|
96
96
|
/**
|
|
97
97
|
* Set the confirmation mode for a specific tool (persisted)
|
|
@@ -101,7 +101,7 @@ let ToolConfirmationManager = class ToolConfirmationManager {
|
|
|
101
101
|
// Determine the global default (star entry), or fallback to schema default
|
|
102
102
|
let starMode = current['*'];
|
|
103
103
|
if (starMode === undefined) {
|
|
104
|
-
starMode = ToolConfirmationMode.
|
|
104
|
+
starMode = ToolConfirmationMode.ALWAYS_ALLOW;
|
|
105
105
|
}
|
|
106
106
|
if (mode === starMode) {
|
|
107
107
|
// Remove the toolId entry if it exists
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-tool-preferences.js","sourceRoot":"","sources":["../../src/browser/chat-tool-preferences.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;;;;AAEhF,wFAA2F;AAC3F,sCAAkC;AAClC,4DAA8E;AAC9E,qEAM6C;AAE7C;;GAEG;AACH,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC5B,
|
|
1
|
+
{"version":3,"file":"chat-tool-preferences.js","sourceRoot":"","sources":["../../src/browser/chat-tool-preferences.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ let FrontendChatToolRequestService = class FrontendChatToolRequestService extend
|
|
|
33
33
|
switch (confirmationMode) {
|
|
34
34
|
case chat_tool_preferences_1.ToolConfirmationMode.DISABLED:
|
|
35
35
|
return { denied: true, message: `Tool ${toolRequest.id} is disabled` };
|
|
36
|
-
case chat_tool_preferences_1.ToolConfirmationMode.
|
|
36
|
+
case chat_tool_preferences_1.ToolConfirmationMode.ALWAYS_ALLOW:
|
|
37
37
|
// Execute immediately without confirmation
|
|
38
38
|
return toolRequest.handler(arg_string, request);
|
|
39
39
|
case chat_tool_preferences_1.ToolConfirmationMode.CONFIRM:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-tool-request-service.js","sourceRoot":"","sources":["../../src/browser/chat-tool-request-service.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;;;;AAGhF,4DAAkE;AAClE,mFAA8F;AAC9F,qDAA4F;AAC5F,mEAA6G;AAE7G;;GAEG;AAEI,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,kDAAsB;IAQnD,iBAAiB,CAAC,WAAwB,EAAE,OAAgC;QAC3F,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE1G,OAAO;YACH,GAAG,WAAW;YACd,OAAO,EAAE,KAAK,EAAE,UAAkB,EAAE,EAAE;gBAClC,QAAQ,gBAAgB,EAAE,CAAC;oBACvB,KAAK,4CAAoB,CAAC,QAAQ;wBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;oBAE3E,KAAK,4CAAoB,CAAC,
|
|
1
|
+
{"version":3,"file":"chat-tool-request-service.js","sourceRoot":"","sources":["../../src/browser/chat-tool-request-service.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;;;;AAGhF,4DAAkE;AAClE,mFAA8F;AAC9F,qDAA4F;AAC5F,mEAA6G;AAE7G;;GAEG;AAEI,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,kDAAsB;IAQnD,iBAAiB,CAAC,WAAwB,EAAE,OAAgC;QAC3F,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE1G,OAAO;YACH,GAAG,WAAW;YACd,OAAO,EAAE,KAAK,EAAE,UAAkB,EAAE,EAAE;gBAClC,QAAQ,gBAAgB,EAAE,CAAC;oBACvB,KAAK,4CAAoB,CAAC,QAAQ;wBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;oBAE3E,KAAK,4CAAoB,CAAC,YAAY;wBAClC,2CAA2C;wBAC3C,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;oBAEpD,KAAK,4CAAoB,CAAC,OAAO,CAAC;oBAClC;wBACI,kCAAkC;wBAClC,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACnF,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC;wBAElD,IAAI,SAAS,EAAE,CAAC;4BACZ,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;wBACpD,CAAC;6BAAM,CAAC;4BACJ,iEAAiE;4BACjE,+BAA+B;4BAC/B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,kCAAkC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC;wBACzF,CAAC;gBACT,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACO,mBAAmB,CACzB,WAAwB,EACxB,UAAkB,EAClB,OAAgC;QAEhC,uDAAuD;QACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC3C,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC;QAEtC,2DAA2D;QAC3D,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,wCAA2B,CAAC,EAAE,CAAC,OAAO,CAAC;gBACvC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,EAAE,EAAE,CAAC;gBAClC,OAAO,OAAO,CAAC;YACnB,CAAC;QACL,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,WAAW,CAAC,EAAE,4BAA4B,CAAC,CAAC;IAC9F,CAAC;CACJ,CAAA;AAlEY,wEAA8B;AAGpB;IADlB,IAAA,kBAAM,EAAC,+CAAuB,CAAC;sCACQ,+CAAuB;2EAAC;AAG7C;IADlB,IAAA,kBAAM,EAAC,2CAAmB,CAAC;;mEACwB;yCAN3C,8BAA8B;IAD1C,IAAA,sBAAU,GAAE;GACA,8BAA8B,CAkE1C"}
|