@vybestack/llxprt-code-core 0.5.0-nightly.251121.9dcb43714 → 0.5.0-nightly.251121.bd93fe760
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/src/config/config.d.ts +9 -0
- package/dist/src/config/config.js +16 -0
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/confirmation-bus/index.d.ts +2 -0
- package/dist/src/confirmation-bus/index.js +3 -0
- package/dist/src/confirmation-bus/index.js.map +1 -0
- package/dist/src/confirmation-bus/message-bus.d.ts +60 -0
- package/dist/src/confirmation-bus/message-bus.js +141 -0
- package/dist/src/confirmation-bus/message-bus.js.map +1 -0
- package/dist/src/confirmation-bus/types.d.ts +59 -0
- package/dist/src/confirmation-bus/types.js +10 -0
- package/dist/src/confirmation-bus/types.js.map +1 -0
- package/dist/src/core/client.d.ts +1 -1
- package/dist/src/core/client.js +24 -11
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +18 -1
- package/dist/src/core/coreToolScheduler.js +133 -13
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/geminiChat.js +2 -0
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/ide/detect-ide.d.ts +44 -14
- package/dist/src/ide/detect-ide.js +35 -75
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +4 -4
- package/dist/src/ide/ide-client.js +25 -24
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-installer.d.ts +2 -2
- package/dist/src/ide/ide-installer.js +7 -9
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/index.d.ts +7 -1
- package/dist/src/index.js +9 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/oauth-provider.d.ts +4 -1
- package/dist/src/mcp/oauth-provider.js +30 -27
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/policy/config.d.ts +51 -0
- package/dist/src/policy/config.js +102 -0
- package/dist/src/policy/config.js.map +1 -0
- package/dist/src/policy/index.d.ts +5 -0
- package/dist/src/policy/index.js +6 -0
- package/dist/src/policy/index.js.map +1 -0
- package/dist/src/policy/policies/discovered.toml +9 -0
- package/dist/src/policy/policies/read-only.toml +68 -0
- package/dist/src/policy/policies/write.toml +69 -0
- package/dist/src/policy/policies/yolo.toml +8 -0
- package/dist/src/policy/policy-engine.d.ts +55 -0
- package/dist/src/policy/policy-engine.js +126 -0
- package/dist/src/policy/policy-engine.js.map +1 -0
- package/dist/src/policy/stable-stringify.d.ts +29 -0
- package/dist/src/policy/stable-stringify.js +111 -0
- package/dist/src/policy/stable-stringify.js.map +1 -0
- package/dist/src/policy/toml-loader.d.ts +37 -0
- package/dist/src/policy/toml-loader.js +183 -0
- package/dist/src/policy/toml-loader.js.map +1 -0
- package/dist/src/policy/types.d.ts +16 -0
- package/dist/src/policy/types.js +7 -0
- package/dist/src/policy/types.js.map +1 -0
- package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
- package/dist/src/telemetry/uiTelemetry.js +2 -3
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/tools/edit.d.ts +3 -2
- package/dist/src/tools/edit.js +23 -10
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/glob.d.ts +3 -2
- package/dist/src/tools/glob.js +2 -2
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/grep.d.ts +3 -2
- package/dist/src/tools/grep.js +2 -2
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/ls.d.ts +3 -2
- package/dist/src/tools/ls.js +2 -2
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/mcp-tool.js +7 -1
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +5 -2
- package/dist/src/tools/memoryTool.js +12 -4
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +3 -2
- package/dist/src/tools/read-file.js +2 -2
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +3 -2
- package/dist/src/tools/read-many-files.js +2 -2
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +3 -2
- package/dist/src/tools/ripGrep.js +2 -2
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/shell.d.ts +3 -2
- package/dist/src/tools/shell.js +10 -6
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +3 -2
- package/dist/src/tools/smart-edit.js +13 -9
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/tool-confirmation-types.d.ts +20 -0
- package/dist/src/tools/tool-confirmation-types.js +15 -0
- package/dist/src/tools/tool-confirmation-types.js.map +1 -0
- package/dist/src/tools/tool-error.d.ts +1 -0
- package/dist/src/tools/tool-error.js +1 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +8 -1
- package/dist/src/tools/tool-registry.js +18 -4
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tools.d.ts +52 -14
- package/dist/src/tools/tools.js +71 -15
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +3 -2
- package/dist/src/tools/web-fetch.js +11 -6
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-search-invocation.d.ts +3 -1
- package/dist/src/tools/web-search-invocation.js +5 -2
- package/dist/src/tools/web-search-invocation.js.map +1 -1
- package/dist/src/tools/web-search.d.ts +3 -2
- package/dist/src/tools/web-search.js +6 -4
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +3 -2
- package/dist/src/tools/write-file.js +11 -6
- package/dist/src/tools/write-file.js.map +1 -1
- package/package.json +4 -2
|
@@ -7,6 +7,10 @@ import { FunctionDeclaration, PartListUnion } from '@google/genai';
|
|
|
7
7
|
import { ToolContext, ContextAwareTool } from './tool-context.js';
|
|
8
8
|
import { ToolErrorType } from './tool-error.js';
|
|
9
9
|
import { DiffUpdateResult } from '../ide/ideContext.js';
|
|
10
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
11
|
+
import { PolicyDecision } from '../policy/types.js';
|
|
12
|
+
import { ToolConfirmationOutcome, ToolConfirmationPayload } from './tool-confirmation-types.js';
|
|
13
|
+
export { ToolConfirmationOutcome, ToolConfirmationPayload, } from './tool-confirmation-types.js';
|
|
10
14
|
/**
|
|
11
15
|
* Represents a validated and ready-to-execute tool call.
|
|
12
16
|
* An instance of this is created by a `ToolBuilder`.
|
|
@@ -45,9 +49,44 @@ export interface ToolInvocation<TParams extends object, TResult extends ToolResu
|
|
|
45
49
|
*/
|
|
46
50
|
export declare abstract class BaseToolInvocation<TParams extends object, TResult extends ToolResult> implements ToolInvocation<TParams, TResult> {
|
|
47
51
|
readonly params: TParams;
|
|
48
|
-
|
|
52
|
+
protected readonly messageBus?: MessageBus | undefined;
|
|
53
|
+
constructor(params: TParams, messageBus?: MessageBus | undefined);
|
|
49
54
|
abstract getDescription(): string;
|
|
50
55
|
toolLocations(): ToolLocation[];
|
|
56
|
+
/**
|
|
57
|
+
* Returns confirmation details for this tool invocation.
|
|
58
|
+
* Tools that require confirmation should override this method.
|
|
59
|
+
* @returns Confirmation details or null if no confirmation needed.
|
|
60
|
+
*/
|
|
61
|
+
protected getConfirmationDetails(): ToolCallConfirmationDetails | null;
|
|
62
|
+
/**
|
|
63
|
+
* Requests confirmation through the message bus and policy engine.
|
|
64
|
+
* This integrates with the new policy-based confirmation flow.
|
|
65
|
+
* @param abortSignal Signal to abort the confirmation request
|
|
66
|
+
* @returns Decision from policy engine with requiresUserConfirmation flag
|
|
67
|
+
*/
|
|
68
|
+
protected getMessageBusDecision(abortSignal: AbortSignal): Promise<{
|
|
69
|
+
decision: PolicyDecision;
|
|
70
|
+
requiresUserConfirmation?: boolean;
|
|
71
|
+
}>;
|
|
72
|
+
/**
|
|
73
|
+
* Returns the tool name for this invocation.
|
|
74
|
+
* Subclasses can override to provide a specific tool name.
|
|
75
|
+
*/
|
|
76
|
+
protected getToolName(): string;
|
|
77
|
+
/**
|
|
78
|
+
* Returns the server name for MCP tools.
|
|
79
|
+
* Regular tools should return undefined.
|
|
80
|
+
*/
|
|
81
|
+
protected getServerName(): string | undefined;
|
|
82
|
+
/**
|
|
83
|
+
* Returns metadata used by the policy engine/message bus.
|
|
84
|
+
*/
|
|
85
|
+
getPolicyContext(): {
|
|
86
|
+
toolName: string;
|
|
87
|
+
args: Record<string, unknown>;
|
|
88
|
+
serverName?: string;
|
|
89
|
+
};
|
|
51
90
|
shouldConfirmExecute(_abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
|
|
52
91
|
abstract execute(signal: AbortSignal, updateOutput?: (output: string) => void): Promise<TResult>;
|
|
53
92
|
}
|
|
@@ -106,7 +145,13 @@ export declare abstract class DeclarativeTool<TParams extends object, TResult ex
|
|
|
106
145
|
readonly parameterSchema: unknown;
|
|
107
146
|
readonly isOutputMarkdown: boolean;
|
|
108
147
|
readonly canUpdateOutput: boolean;
|
|
109
|
-
|
|
148
|
+
protected messageBus?: MessageBus;
|
|
149
|
+
constructor(name: string, displayName: string, description: string, kind: Kind, parameterSchema: unknown, isOutputMarkdown?: boolean, canUpdateOutput?: boolean, messageBus?: MessageBus);
|
|
150
|
+
/**
|
|
151
|
+
* Sets the message bus for this tool.
|
|
152
|
+
* Called by ToolRegistry after tool construction.
|
|
153
|
+
*/
|
|
154
|
+
setMessageBus(messageBus: MessageBus): void;
|
|
110
155
|
get schema(): FunctionDeclaration;
|
|
111
156
|
/**
|
|
112
157
|
* Validates the raw tool parameters.
|
|
@@ -158,7 +203,7 @@ export declare abstract class BaseDeclarativeTool<TParams extends object, TResul
|
|
|
158
203
|
build(params: TParams): ToolInvocation<TParams, TResult>;
|
|
159
204
|
validateToolParams(params: TParams): string | null;
|
|
160
205
|
protected validateToolParamValues(_params: TParams): string | null;
|
|
161
|
-
protected abstract createInvocation(params: TParams): ToolInvocation<TParams, TResult>;
|
|
206
|
+
protected abstract createInvocation(params: TParams, messageBus?: MessageBus): ToolInvocation<TParams, TResult>;
|
|
162
207
|
}
|
|
163
208
|
/**
|
|
164
209
|
* A type alias for a declarative tool where the specific parameter and result types are not known.
|
|
@@ -227,9 +272,7 @@ export interface ToolEditConfirmationDetails {
|
|
|
227
272
|
newContent: string;
|
|
228
273
|
isModifying?: boolean;
|
|
229
274
|
ideConfirmation?: Promise<DiffUpdateResult>;
|
|
230
|
-
|
|
231
|
-
export interface ToolConfirmationPayload {
|
|
232
|
-
newContent: string;
|
|
275
|
+
correlationId?: string;
|
|
233
276
|
}
|
|
234
277
|
export interface ToolExecuteConfirmationDetails {
|
|
235
278
|
type: 'exec';
|
|
@@ -237,6 +280,7 @@ export interface ToolExecuteConfirmationDetails {
|
|
|
237
280
|
onConfirm: (outcome: ToolConfirmationOutcome) => Promise<void>;
|
|
238
281
|
command: string;
|
|
239
282
|
rootCommand: string;
|
|
283
|
+
correlationId?: string;
|
|
240
284
|
}
|
|
241
285
|
export interface ToolMcpConfirmationDetails {
|
|
242
286
|
type: 'mcp';
|
|
@@ -245,6 +289,7 @@ export interface ToolMcpConfirmationDetails {
|
|
|
245
289
|
toolName: string;
|
|
246
290
|
toolDisplayName: string;
|
|
247
291
|
onConfirm: (outcome: ToolConfirmationOutcome) => Promise<void>;
|
|
292
|
+
correlationId?: string;
|
|
248
293
|
}
|
|
249
294
|
export interface ToolInfoConfirmationDetails {
|
|
250
295
|
type: 'info';
|
|
@@ -252,16 +297,9 @@ export interface ToolInfoConfirmationDetails {
|
|
|
252
297
|
onConfirm: (outcome: ToolConfirmationOutcome) => Promise<void>;
|
|
253
298
|
prompt: string;
|
|
254
299
|
urls?: string[];
|
|
300
|
+
correlationId?: string;
|
|
255
301
|
}
|
|
256
302
|
export type ToolCallConfirmationDetails = ToolEditConfirmationDetails | ToolExecuteConfirmationDetails | ToolMcpConfirmationDetails | ToolInfoConfirmationDetails;
|
|
257
|
-
export declare enum ToolConfirmationOutcome {
|
|
258
|
-
ProceedOnce = "proceed_once",
|
|
259
|
-
ProceedAlways = "proceed_always",
|
|
260
|
-
ProceedAlwaysServer = "proceed_always_server",
|
|
261
|
-
ProceedAlwaysTool = "proceed_always_tool",
|
|
262
|
-
ModifyWithEditor = "modify_with_editor",
|
|
263
|
-
Cancel = "cancel"
|
|
264
|
-
}
|
|
265
303
|
export declare enum Kind {
|
|
266
304
|
Read = "read",
|
|
267
305
|
Edit = "edit",
|
package/dist/src/tools/tools.js
CHANGED
|
@@ -5,17 +5,70 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ToolErrorType } from './tool-error.js';
|
|
7
7
|
import { SchemaValidator } from '../utils/schemaValidator.js';
|
|
8
|
+
import { PolicyDecision } from '../policy/types.js';
|
|
9
|
+
export { ToolConfirmationOutcome, } from './tool-confirmation-types.js';
|
|
8
10
|
/**
|
|
9
11
|
* A convenience base class for ToolInvocation.
|
|
10
12
|
*/
|
|
11
13
|
export class BaseToolInvocation {
|
|
12
14
|
params;
|
|
13
|
-
|
|
15
|
+
messageBus;
|
|
16
|
+
constructor(params, messageBus) {
|
|
14
17
|
this.params = params;
|
|
18
|
+
this.messageBus = messageBus;
|
|
15
19
|
}
|
|
16
20
|
toolLocations() {
|
|
17
21
|
return [];
|
|
18
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Returns confirmation details for this tool invocation.
|
|
25
|
+
* Tools that require confirmation should override this method.
|
|
26
|
+
* @returns Confirmation details or null if no confirmation needed.
|
|
27
|
+
*/
|
|
28
|
+
getConfirmationDetails() {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Requests confirmation through the message bus and policy engine.
|
|
33
|
+
* This integrates with the new policy-based confirmation flow.
|
|
34
|
+
* @param abortSignal Signal to abort the confirmation request
|
|
35
|
+
* @returns Decision from policy engine with requiresUserConfirmation flag
|
|
36
|
+
*/
|
|
37
|
+
async getMessageBusDecision(abortSignal) {
|
|
38
|
+
// Default implementation defers to legacy confirmation flow.
|
|
39
|
+
// Concrete tools can override for custom behavior.
|
|
40
|
+
if (abortSignal.aborted) {
|
|
41
|
+
throw new Error('Operation aborted');
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
decision: PolicyDecision.ASK_USER,
|
|
45
|
+
requiresUserConfirmation: true,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Returns the tool name for this invocation.
|
|
50
|
+
* Subclasses can override to provide a specific tool name.
|
|
51
|
+
*/
|
|
52
|
+
getToolName() {
|
|
53
|
+
return 'unknown';
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Returns the server name for MCP tools.
|
|
57
|
+
* Regular tools should return undefined.
|
|
58
|
+
*/
|
|
59
|
+
getServerName() {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Returns metadata used by the policy engine/message bus.
|
|
64
|
+
*/
|
|
65
|
+
getPolicyContext() {
|
|
66
|
+
return {
|
|
67
|
+
toolName: this.getToolName(),
|
|
68
|
+
args: this.params,
|
|
69
|
+
serverName: this.getServerName(),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
19
72
|
shouldConfirmExecute(_abortSignal) {
|
|
20
73
|
return Promise.resolve(false);
|
|
21
74
|
}
|
|
@@ -32,7 +85,8 @@ export class DeclarativeTool {
|
|
|
32
85
|
parameterSchema;
|
|
33
86
|
isOutputMarkdown;
|
|
34
87
|
canUpdateOutput;
|
|
35
|
-
|
|
88
|
+
messageBus;
|
|
89
|
+
constructor(name, displayName, description, kind, parameterSchema, isOutputMarkdown = true, canUpdateOutput = false, messageBus) {
|
|
36
90
|
this.name = name;
|
|
37
91
|
this.displayName = displayName;
|
|
38
92
|
this.description = description;
|
|
@@ -40,6 +94,14 @@ export class DeclarativeTool {
|
|
|
40
94
|
this.parameterSchema = parameterSchema;
|
|
41
95
|
this.isOutputMarkdown = isOutputMarkdown;
|
|
42
96
|
this.canUpdateOutput = canUpdateOutput;
|
|
97
|
+
this.messageBus = messageBus;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Sets the message bus for this tool.
|
|
101
|
+
* Called by ToolRegistry after tool construction.
|
|
102
|
+
*/
|
|
103
|
+
setMessageBus(messageBus) {
|
|
104
|
+
this.messageBus = messageBus;
|
|
43
105
|
}
|
|
44
106
|
get schema() {
|
|
45
107
|
// Strip requireOne from the schema before sending to the model
|
|
@@ -148,7 +210,7 @@ export class BaseDeclarativeTool extends DeclarativeTool {
|
|
|
148
210
|
if (validationError) {
|
|
149
211
|
throw new Error(validationError);
|
|
150
212
|
}
|
|
151
|
-
return this.createInvocation(params);
|
|
213
|
+
return this.createInvocation(params, this.messageBus);
|
|
152
214
|
}
|
|
153
215
|
validateToolParams(params) {
|
|
154
216
|
const errors = SchemaValidator.validate(this.schema.parametersJsonSchema, params);
|
|
@@ -239,15 +301,6 @@ export function hasCycleInSchema(schema) {
|
|
|
239
301
|
}
|
|
240
302
|
return traverse(schema, new Set(), new Set());
|
|
241
303
|
}
|
|
242
|
-
export var ToolConfirmationOutcome;
|
|
243
|
-
(function (ToolConfirmationOutcome) {
|
|
244
|
-
ToolConfirmationOutcome["ProceedOnce"] = "proceed_once";
|
|
245
|
-
ToolConfirmationOutcome["ProceedAlways"] = "proceed_always";
|
|
246
|
-
ToolConfirmationOutcome["ProceedAlwaysServer"] = "proceed_always_server";
|
|
247
|
-
ToolConfirmationOutcome["ProceedAlwaysTool"] = "proceed_always_tool";
|
|
248
|
-
ToolConfirmationOutcome["ModifyWithEditor"] = "modify_with_editor";
|
|
249
|
-
ToolConfirmationOutcome["Cancel"] = "cancel";
|
|
250
|
-
})(ToolConfirmationOutcome || (ToolConfirmationOutcome = {}));
|
|
251
304
|
export var Kind;
|
|
252
305
|
(function (Kind) {
|
|
253
306
|
Kind["Read"] = "read";
|
|
@@ -300,7 +353,7 @@ export class BaseTool extends DeclarativeTool {
|
|
|
300
353
|
if (validationError) {
|
|
301
354
|
throw new Error(validationError);
|
|
302
355
|
}
|
|
303
|
-
return new BaseToolLegacyInvocation(this, params);
|
|
356
|
+
return new BaseToolLegacyInvocation(this, params, this.messageBus);
|
|
304
357
|
}
|
|
305
358
|
}
|
|
306
359
|
/**
|
|
@@ -308,13 +361,16 @@ export class BaseTool extends DeclarativeTool {
|
|
|
308
361
|
*/
|
|
309
362
|
class BaseToolLegacyInvocation extends BaseToolInvocation {
|
|
310
363
|
tool;
|
|
311
|
-
constructor(tool, params) {
|
|
312
|
-
super(params);
|
|
364
|
+
constructor(tool, params, messageBus) {
|
|
365
|
+
super(params, messageBus);
|
|
313
366
|
this.tool = tool;
|
|
314
367
|
}
|
|
315
368
|
getDescription() {
|
|
316
369
|
return this.tool.getDescription(this.params);
|
|
317
370
|
}
|
|
371
|
+
getToolName() {
|
|
372
|
+
return this.tool.name;
|
|
373
|
+
}
|
|
318
374
|
async execute(signal, updateOutput) {
|
|
319
375
|
return this.tool.execute(this.params, signal, updateOutput);
|
|
320
376
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/tools/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/tools/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { BaseDeclarativeTool, ToolInvocation, ToolResult } from './tools.js';
|
|
7
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
7
8
|
import { Config } from '../config/config.js';
|
|
8
9
|
/**
|
|
9
10
|
* Parameters for the WebFetch tool
|
|
@@ -20,7 +21,7 @@ export interface WebFetchToolParams {
|
|
|
20
21
|
export declare class WebFetchTool extends BaseDeclarativeTool<WebFetchToolParams, ToolResult> {
|
|
21
22
|
private readonly config;
|
|
22
23
|
static readonly Name: string;
|
|
23
|
-
constructor(config: Config);
|
|
24
|
+
constructor(config: Config, messageBus?: MessageBus);
|
|
24
25
|
protected validateToolParamValues(params: WebFetchToolParams): string | null;
|
|
25
|
-
protected createInvocation(params: WebFetchToolParams): ToolInvocation<WebFetchToolParams, ToolResult>;
|
|
26
|
+
protected createInvocation(params: WebFetchToolParams, messageBus?: MessageBus): ToolInvocation<WebFetchToolParams, ToolResult>;
|
|
26
27
|
}
|
|
@@ -20,10 +20,13 @@ function extractUrls(text) {
|
|
|
20
20
|
}
|
|
21
21
|
class WebFetchToolInvocation extends BaseToolInvocation {
|
|
22
22
|
config;
|
|
23
|
-
constructor(config, params) {
|
|
24
|
-
super(params);
|
|
23
|
+
constructor(config, params, messageBus) {
|
|
24
|
+
super(params, messageBus);
|
|
25
25
|
this.config = config;
|
|
26
26
|
}
|
|
27
|
+
getToolName() {
|
|
28
|
+
return WebFetchTool.Name;
|
|
29
|
+
}
|
|
27
30
|
async executeFallback(_signal) {
|
|
28
31
|
const urls = extractUrls(this.params.prompt);
|
|
29
32
|
// For now, we only support one URL for fallback
|
|
@@ -250,7 +253,7 @@ ${sourceListFormatted.join('\n')}`;
|
|
|
250
253
|
export class WebFetchTool extends BaseDeclarativeTool {
|
|
251
254
|
config;
|
|
252
255
|
static Name = 'web_fetch';
|
|
253
|
-
constructor(config) {
|
|
256
|
+
constructor(config, messageBus) {
|
|
254
257
|
super(WebFetchTool.Name, 'WebFetch', "Processes content from URL(s), including local and private network addresses (e.g., localhost), embedded in a prompt. Include up to 20 URLs and instructions (e.g., summarize, extract specific data) directly in the 'prompt' parameter.", Kind.Fetch, {
|
|
255
258
|
properties: {
|
|
256
259
|
prompt: {
|
|
@@ -260,7 +263,9 @@ export class WebFetchTool extends BaseDeclarativeTool {
|
|
|
260
263
|
},
|
|
261
264
|
required: ['prompt'],
|
|
262
265
|
type: 'object',
|
|
263
|
-
}
|
|
266
|
+
}, false, // output is not markdown
|
|
267
|
+
false, // output cannot be updated
|
|
268
|
+
messageBus);
|
|
264
269
|
this.config = config;
|
|
265
270
|
const proxy = config.getProxy();
|
|
266
271
|
if (proxy) {
|
|
@@ -277,8 +282,8 @@ export class WebFetchTool extends BaseDeclarativeTool {
|
|
|
277
282
|
}
|
|
278
283
|
return null;
|
|
279
284
|
}
|
|
280
|
-
createInvocation(params) {
|
|
281
|
-
return new WebFetchToolInvocation(this.config, params);
|
|
285
|
+
createInvocation(params, messageBus) {
|
|
286
|
+
return new WebFetchToolInvocation(this.config, params, messageBus);
|
|
282
287
|
}
|
|
283
288
|
}
|
|
284
289
|
//# sourceMappingURL=web-fetch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-fetch.js","sourceRoot":"","sources":["../../../src/tools/web-fetch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,IAAI,EAEJ,uBAAuB,GAGxB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"web-fetch.js","sourceRoot":"","sources":["../../../src/tools/web-fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { GroundingMetadata } from '@google/genai';
|
|
7
7
|
import { BaseToolInvocation, ToolResult } from './tools.js';
|
|
8
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
8
9
|
import { Config } from '../config/config.js';
|
|
9
10
|
export interface GroundingChunkWeb {
|
|
10
11
|
uri?: string;
|
|
@@ -45,7 +46,8 @@ export interface WebSearchToolResult extends ToolResult {
|
|
|
45
46
|
*/
|
|
46
47
|
export declare class WebSearchToolInvocation extends BaseToolInvocation<WebSearchToolParams, WebSearchToolResult> {
|
|
47
48
|
private readonly config;
|
|
48
|
-
constructor(config: Config, params: WebSearchToolParams);
|
|
49
|
+
constructor(config: Config, params: WebSearchToolParams, messageBus?: MessageBus);
|
|
50
|
+
getToolName(): string;
|
|
49
51
|
getDescription(): string;
|
|
50
52
|
execute(signal: AbortSignal): Promise<WebSearchToolResult>;
|
|
51
53
|
}
|
|
@@ -12,10 +12,13 @@ import { ToolErrorType } from './tool-error.js';
|
|
|
12
12
|
*/
|
|
13
13
|
export class WebSearchToolInvocation extends BaseToolInvocation {
|
|
14
14
|
config;
|
|
15
|
-
constructor(config, params) {
|
|
16
|
-
super(params);
|
|
15
|
+
constructor(config, params, messageBus) {
|
|
16
|
+
super(params, messageBus);
|
|
17
17
|
this.config = config;
|
|
18
18
|
}
|
|
19
|
+
getToolName() {
|
|
20
|
+
return 'google_web_search';
|
|
21
|
+
}
|
|
19
22
|
getDescription() {
|
|
20
23
|
return `Searching the web for: "${this.params.query}"`;
|
|
21
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search-invocation.js","sourceRoot":"","sources":["../../../src/tools/web-search-invocation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAc,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"web-search-invocation.js","sourceRoot":"","sources":["../../../src/tools/web-search-invocation.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { BaseDeclarativeTool, ToolInvocation } from './tools.js';
|
|
7
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
7
8
|
import { Config } from '../config/config.js';
|
|
8
9
|
import { WebSearchToolParams, WebSearchToolResult } from './web-search-invocation.js';
|
|
9
10
|
export { WebSearchToolParams, WebSearchToolResult, } from './web-search-invocation.js';
|
|
@@ -13,12 +14,12 @@ export { WebSearchToolParams, WebSearchToolResult, } from './web-search-invocati
|
|
|
13
14
|
export declare class WebSearchTool extends BaseDeclarativeTool<WebSearchToolParams, WebSearchToolResult> {
|
|
14
15
|
private readonly config;
|
|
15
16
|
static readonly Name: string;
|
|
16
|
-
constructor(config: Config);
|
|
17
|
+
constructor(config: Config, messageBus?: MessageBus);
|
|
17
18
|
/**
|
|
18
19
|
* Validates the parameters for the WebSearchTool.
|
|
19
20
|
* @param params The parameters to validate
|
|
20
21
|
* @returns An error message string if validation fails, null if valid
|
|
21
22
|
*/
|
|
22
23
|
protected validateToolParamValues(params: WebSearchToolParams): string | null;
|
|
23
|
-
protected createInvocation(params: WebSearchToolParams): ToolInvocation<WebSearchToolParams, WebSearchToolResult>;
|
|
24
|
+
protected createInvocation(params: WebSearchToolParams, messageBus?: MessageBus): ToolInvocation<WebSearchToolParams, WebSearchToolResult>;
|
|
24
25
|
}
|
|
@@ -11,7 +11,7 @@ import { WebSearchToolInvocation, } from './web-search-invocation.js';
|
|
|
11
11
|
export class WebSearchTool extends BaseDeclarativeTool {
|
|
12
12
|
config;
|
|
13
13
|
static Name = 'google_web_search';
|
|
14
|
-
constructor(config) {
|
|
14
|
+
constructor(config, messageBus) {
|
|
15
15
|
super(WebSearchTool.Name, 'GoogleSearch', 'Performs a web search using Google Search (via the Gemini API) and returns the results. This tool is useful for finding information on the internet based on a query.', Kind.Search, {
|
|
16
16
|
type: 'object',
|
|
17
17
|
properties: {
|
|
@@ -21,7 +21,9 @@ export class WebSearchTool extends BaseDeclarativeTool {
|
|
|
21
21
|
},
|
|
22
22
|
},
|
|
23
23
|
required: ['query'],
|
|
24
|
-
}
|
|
24
|
+
}, false, // output is not markdown
|
|
25
|
+
false, // output cannot be updated
|
|
26
|
+
messageBus);
|
|
25
27
|
this.config = config;
|
|
26
28
|
}
|
|
27
29
|
/**
|
|
@@ -35,8 +37,8 @@ export class WebSearchTool extends BaseDeclarativeTool {
|
|
|
35
37
|
}
|
|
36
38
|
return null;
|
|
37
39
|
}
|
|
38
|
-
createInvocation(params) {
|
|
39
|
-
return new WebSearchToolInvocation(this.config, params);
|
|
40
|
+
createInvocation(params, messageBus) {
|
|
41
|
+
return new WebSearchToolInvocation(this.config, params, messageBus);
|
|
40
42
|
}
|
|
41
43
|
}
|
|
42
44
|
//# sourceMappingURL=web-search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../src/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAkB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../src/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAkB,MAAM,YAAY,CAAC;AAGvE,OAAO,EACL,uBAAuB,GAGxB,MAAM,4BAA4B,CAAC;AAQpC;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,mBAGlC;IAIoB;IAHnB,MAAM,CAAU,IAAI,GAAW,mBAAmB,CAAC;IAEnD,YACmB,MAAc,EAC/B,UAAuB;QAEvB,KAAK,CACH,aAAa,CAAC,IAAI,EAClB,cAAc,EACd,uKAAuK,EACvK,IAAI,CAAC,MAAM,EACX;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,EACD,KAAK,EAAE,yBAAyB;QAChC,KAAK,EAAE,2BAA2B;QAClC,UAAU,CACX,CAAC;QArBe,WAAM,GAAN,MAAM,CAAQ;IAsBjC,CAAC;IAED;;;;OAIG;IACgB,uBAAuB,CACxC,MAA2B;QAE3B,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAChD,OAAO,wCAAwC,CAAC;QAClD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAES,gBAAgB,CACxB,MAA2B,EAC3B,UAAuB;QAEvB,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Config } from '../config/config.js';
|
|
7
7
|
import { BaseDeclarativeTool, ToolResult, ToolInvocation } from './tools.js';
|
|
8
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
8
9
|
import { ModifiableDeclarativeTool, ModifyContext } from './modifiable-tool.js';
|
|
9
10
|
/**
|
|
10
11
|
* Parameters for the WriteFile tool
|
|
@@ -51,9 +52,9 @@ export declare function getCorrectedFileContent(filePath: string, proposedConten
|
|
|
51
52
|
export declare class WriteFileTool extends BaseDeclarativeTool<WriteFileToolParams, ToolResult> implements ModifiableDeclarativeTool<WriteFileToolParams> {
|
|
52
53
|
private readonly config;
|
|
53
54
|
static readonly Name: string;
|
|
54
|
-
constructor(config: Config);
|
|
55
|
+
constructor(config: Config, messageBus?: MessageBus);
|
|
55
56
|
protected validateToolParamValues(params: WriteFileToolParams): string | null;
|
|
56
|
-
protected createInvocation(params: WriteFileToolParams): ToolInvocation<WriteFileToolParams, ToolResult>;
|
|
57
|
+
protected createInvocation(params: WriteFileToolParams, messageBus?: MessageBus): ToolInvocation<WriteFileToolParams, ToolResult>;
|
|
57
58
|
getModifyContext(abortSignal: AbortSignal): ModifyContext<WriteFileToolParams>;
|
|
58
59
|
}
|
|
59
60
|
export {};
|
|
@@ -75,10 +75,13 @@ export async function getCorrectedFileContent(filePath, proposedContent, config,
|
|
|
75
75
|
}
|
|
76
76
|
class WriteFileToolInvocation extends BaseToolInvocation {
|
|
77
77
|
config;
|
|
78
|
-
constructor(config, params) {
|
|
79
|
-
super(params);
|
|
78
|
+
constructor(config, params, messageBus) {
|
|
79
|
+
super(params, messageBus);
|
|
80
80
|
this.config = config;
|
|
81
81
|
}
|
|
82
|
+
getToolName() {
|
|
83
|
+
return WriteFileTool.Name;
|
|
84
|
+
}
|
|
82
85
|
getFilePath() {
|
|
83
86
|
// Use file_path if provided, otherwise fall back to absolute_path
|
|
84
87
|
return this.params.file_path || this.params.absolute_path || '';
|
|
@@ -324,7 +327,7 @@ class WriteFileToolInvocation extends BaseToolInvocation {
|
|
|
324
327
|
export class WriteFileTool extends BaseDeclarativeTool {
|
|
325
328
|
config;
|
|
326
329
|
static Name = 'write_file';
|
|
327
|
-
constructor(config) {
|
|
330
|
+
constructor(config, messageBus) {
|
|
328
331
|
super(WriteFileTool.Name, 'WriteFile', `Writes content to a specified file in the local filesystem.
|
|
329
332
|
|
|
330
333
|
The user has the ability to modify \`content\`. If modified, this will be stated in the response.`, Kind.Edit, {
|
|
@@ -344,7 +347,9 @@ export class WriteFileTool extends BaseDeclarativeTool {
|
|
|
344
347
|
},
|
|
345
348
|
required: ['content'], // Content is always required, path validation in validateToolParamValues
|
|
346
349
|
type: 'object',
|
|
347
|
-
}
|
|
350
|
+
}, true, // output is markdown
|
|
351
|
+
false, // output cannot be updated
|
|
352
|
+
messageBus);
|
|
348
353
|
this.config = config;
|
|
349
354
|
}
|
|
350
355
|
validateToolParamValues(params) {
|
|
@@ -378,13 +383,13 @@ export class WriteFileTool extends BaseDeclarativeTool {
|
|
|
378
383
|
}
|
|
379
384
|
return null;
|
|
380
385
|
}
|
|
381
|
-
createInvocation(params) {
|
|
386
|
+
createInvocation(params, messageBus) {
|
|
382
387
|
// Normalize parameters: if absolute_path is provided but not file_path, copy it over
|
|
383
388
|
const normalizedParams = { ...params };
|
|
384
389
|
if (!normalizedParams.file_path && normalizedParams.absolute_path) {
|
|
385
390
|
normalizedParams.file_path = normalizedParams.absolute_path;
|
|
386
391
|
}
|
|
387
|
-
return new WriteFileToolInvocation(this.config, normalizedParams);
|
|
392
|
+
return new WriteFileToolInvocation(this.config, normalizedParams, messageBus);
|
|
388
393
|
}
|
|
389
394
|
getModifyContext(abortSignal) {
|
|
390
395
|
return {
|