@google/gemini-cli-core 0.7.0-nightly.20250918.2722473a → 0.7.0-preview.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +4 -3
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/src/config/config.d.ts +13 -2
- package/dist/src/config/config.js +29 -1
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/core/client.d.ts +3 -2
- package/dist/src/core/client.js +32 -23
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +57 -67
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +4 -3
- package/dist/src/core/geminiChat.js +48 -52
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +132 -26
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/ide/detect-ide.d.ts +44 -14
- package/dist/src/ide/detect-ide.js +29 -69
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/detect-ide.test.js +29 -46
- package/dist/src/ide/detect-ide.test.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +4 -4
- package/dist/src/ide/ide-client.js +26 -25
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-client.test.js +4 -7
- package/dist/src/ide/ide-client.test.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/ide/ide-installer.test.js +20 -13
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/index.d.ts +4 -2
- package/dist/src/index.js +4 -2
- 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 +32 -26
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/policy/policy-engine.js +11 -2
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +45 -0
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/routing/strategies/compositeStrategy.js +4 -3
- package/dist/src/routing/strategies/compositeStrategy.js.map +1 -1
- package/dist/src/services/shellExecutionService.js +30 -15
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +43 -11
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/telemetry/activity-detector.d.ts +41 -0
- package/dist/src/telemetry/activity-detector.js +61 -0
- package/dist/src/telemetry/activity-detector.js.map +1 -0
- package/dist/src/telemetry/activity-detector.test.d.ts +6 -0
- package/dist/src/telemetry/activity-detector.test.js +136 -0
- package/dist/src/telemetry/activity-detector.test.js.map +1 -0
- package/dist/src/telemetry/activity-types.d.ts +19 -0
- package/dist/src/telemetry/activity-types.js +21 -0
- package/dist/src/telemetry/activity-types.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +8 -2
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +55 -2
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +6 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +10 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/config.d.ts +31 -0
- package/dist/src/telemetry/config.js +76 -0
- package/dist/src/telemetry/config.js.map +1 -0
- package/dist/src/telemetry/config.test.d.ts +6 -0
- package/dist/src/telemetry/config.test.js +124 -0
- package/dist/src/telemetry/config.test.js.map +1 -0
- package/dist/src/telemetry/constants.d.ts +6 -0
- package/dist/src/telemetry/constants.js +6 -0
- package/dist/src/telemetry/constants.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +4 -1
- package/dist/src/telemetry/index.js +4 -1
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +6 -1
- package/dist/src/telemetry/loggers.js +91 -2
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +174 -4
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +2 -1
- package/dist/src/telemetry/metrics.js +14 -1
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/sdk.js +4 -1
- package/dist/src/telemetry/sdk.js.map +1 -1
- package/dist/src/telemetry/sdk.test.js +13 -0
- package/dist/src/telemetry/sdk.test.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +26 -3
- package/dist/src/telemetry/types.js +49 -6
- package/dist/src/telemetry/types.js.map +1 -1
- 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/telemetry/uiTelemetry.test.js +11 -11
- package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
- package/dist/src/tools/message-bus-integration.test.d.ts +6 -0
- package/dist/src/tools/message-bus-integration.test.js +183 -0
- package/dist/src/tools/message-bus-integration.test.js.map +1 -0
- package/dist/src/tools/tools.d.ts +11 -3
- package/dist/src/tools/tools.js +94 -3
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +25 -0
- package/dist/src/tools/write-todos.js +150 -0
- package/dist/src/tools/write-todos.js.map +1 -0
- package/dist/src/tools/write-todos.test.d.ts +6 -0
- package/dist/src/tools/write-todos.test.js +89 -0
- package/dist/src/tools/write-todos.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uiTelemetry.test.js","sourceRoot":"","sources":["../../../src/telemetry/uiTelemetry.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uiTelemetry.test.js","sourceRoot":"","sources":["../../../src/telemetry/uiTelemetry.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { describe, it, expect, beforeEach, afterEach, vi, } from 'vitest';
|
|
7
|
+
import { BaseToolInvocation, BaseDeclarativeTool, Kind, } from './tools.js';
|
|
8
|
+
import { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
9
|
+
import { PolicyEngine } from '../policy/policy-engine.js';
|
|
10
|
+
import { MessageBusType, } from '../confirmation-bus/types.js';
|
|
11
|
+
import { randomUUID } from 'node:crypto';
|
|
12
|
+
// Mock crypto module
|
|
13
|
+
vi.mock('node:crypto', () => ({
|
|
14
|
+
randomUUID: vi.fn(),
|
|
15
|
+
}));
|
|
16
|
+
class TestToolInvocation extends BaseToolInvocation {
|
|
17
|
+
getDescription() {
|
|
18
|
+
return `Test tool with param: ${this.params.testParam}`;
|
|
19
|
+
}
|
|
20
|
+
async execute() {
|
|
21
|
+
return {
|
|
22
|
+
llmContent: `Executed with ${this.params.testParam}`,
|
|
23
|
+
returnDisplay: `Test result: ${this.params.testParam}`,
|
|
24
|
+
testValue: this.params.testParam,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
class TestTool extends BaseDeclarativeTool {
|
|
29
|
+
constructor(messageBus) {
|
|
30
|
+
super('test-tool', 'Test Tool', 'A test tool for message bus integration', Kind.Other, {
|
|
31
|
+
type: 'object',
|
|
32
|
+
properties: {
|
|
33
|
+
testParam: { type: 'string' },
|
|
34
|
+
},
|
|
35
|
+
required: ['testParam'],
|
|
36
|
+
}, true, false, messageBus);
|
|
37
|
+
}
|
|
38
|
+
createInvocation(params, messageBus) {
|
|
39
|
+
return new TestToolInvocation(params, messageBus);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
describe('Message Bus Integration', () => {
|
|
43
|
+
let policyEngine;
|
|
44
|
+
let messageBus;
|
|
45
|
+
let mockUUID;
|
|
46
|
+
beforeEach(() => {
|
|
47
|
+
vi.resetAllMocks();
|
|
48
|
+
policyEngine = new PolicyEngine();
|
|
49
|
+
messageBus = new MessageBus(policyEngine);
|
|
50
|
+
mockUUID = vi.mocked(randomUUID);
|
|
51
|
+
mockUUID.mockReturnValue('test-correlation-id');
|
|
52
|
+
});
|
|
53
|
+
afterEach(() => {
|
|
54
|
+
vi.restoreAllMocks();
|
|
55
|
+
});
|
|
56
|
+
describe('BaseToolInvocation with MessageBus', () => {
|
|
57
|
+
it('should use message bus for confirmation when available', async () => {
|
|
58
|
+
const tool = new TestTool(messageBus);
|
|
59
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
60
|
+
// Mock message bus publish and subscribe
|
|
61
|
+
const publishSpy = vi.spyOn(messageBus, 'publish');
|
|
62
|
+
const subscribeSpy = vi.spyOn(messageBus, 'subscribe');
|
|
63
|
+
const unsubscribeSpy = vi.spyOn(messageBus, 'unsubscribe');
|
|
64
|
+
// Start confirmation process
|
|
65
|
+
const confirmationPromise = invocation.shouldConfirmExecute(new AbortController().signal);
|
|
66
|
+
// Verify confirmation request was published
|
|
67
|
+
expect(publishSpy).toHaveBeenCalledWith({
|
|
68
|
+
type: MessageBusType.TOOL_CONFIRMATION_REQUEST,
|
|
69
|
+
toolCall: {
|
|
70
|
+
name: 'TestToolInvocation',
|
|
71
|
+
args: { testParam: 'test-value' },
|
|
72
|
+
},
|
|
73
|
+
correlationId: 'test-correlation-id',
|
|
74
|
+
});
|
|
75
|
+
// Verify subscription to response
|
|
76
|
+
expect(subscribeSpy).toHaveBeenCalledWith(MessageBusType.TOOL_CONFIRMATION_RESPONSE, expect.any(Function));
|
|
77
|
+
// Simulate confirmation response
|
|
78
|
+
const responseHandler = subscribeSpy.mock.calls[0][1];
|
|
79
|
+
const response = {
|
|
80
|
+
type: MessageBusType.TOOL_CONFIRMATION_RESPONSE,
|
|
81
|
+
correlationId: 'test-correlation-id',
|
|
82
|
+
confirmed: true,
|
|
83
|
+
};
|
|
84
|
+
responseHandler(response);
|
|
85
|
+
const result = await confirmationPromise;
|
|
86
|
+
expect(result).toBe(false); // No further confirmation needed
|
|
87
|
+
expect(unsubscribeSpy).toHaveBeenCalled();
|
|
88
|
+
});
|
|
89
|
+
it('should reject promise when confirmation is denied', async () => {
|
|
90
|
+
const tool = new TestTool(messageBus);
|
|
91
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
92
|
+
const subscribeSpy = vi.spyOn(messageBus, 'subscribe');
|
|
93
|
+
const confirmationPromise = invocation.shouldConfirmExecute(new AbortController().signal);
|
|
94
|
+
// Simulate denial response
|
|
95
|
+
const responseHandler = subscribeSpy.mock.calls[0][1];
|
|
96
|
+
const response = {
|
|
97
|
+
type: MessageBusType.TOOL_CONFIRMATION_RESPONSE,
|
|
98
|
+
correlationId: 'test-correlation-id',
|
|
99
|
+
confirmed: false,
|
|
100
|
+
};
|
|
101
|
+
responseHandler(response);
|
|
102
|
+
// Should reject with error when denied
|
|
103
|
+
await expect(confirmationPromise).rejects.toThrow('Tool execution denied by policy');
|
|
104
|
+
});
|
|
105
|
+
it('should handle timeout', async () => {
|
|
106
|
+
vi.useFakeTimers();
|
|
107
|
+
const tool = new TestTool(messageBus);
|
|
108
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
109
|
+
const confirmationPromise = invocation.shouldConfirmExecute(new AbortController().signal);
|
|
110
|
+
// Fast-forward past timeout
|
|
111
|
+
vi.advanceTimersByTime(30000);
|
|
112
|
+
const result = await confirmationPromise;
|
|
113
|
+
expect(result).toBe(false);
|
|
114
|
+
vi.useRealTimers();
|
|
115
|
+
});
|
|
116
|
+
it('should handle abort signal', async () => {
|
|
117
|
+
const tool = new TestTool(messageBus);
|
|
118
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
119
|
+
const abortController = new AbortController();
|
|
120
|
+
const confirmationPromise = invocation.shouldConfirmExecute(abortController.signal);
|
|
121
|
+
// Abort the operation
|
|
122
|
+
abortController.abort();
|
|
123
|
+
await expect(confirmationPromise).rejects.toThrow('Tool confirmation aborted');
|
|
124
|
+
});
|
|
125
|
+
it('should fall back to default behavior when no message bus', async () => {
|
|
126
|
+
const tool = new TestTool(); // No message bus
|
|
127
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
128
|
+
const result = await invocation.shouldConfirmExecute(new AbortController().signal);
|
|
129
|
+
expect(result).toBe(false);
|
|
130
|
+
});
|
|
131
|
+
it('should ignore responses with wrong correlation ID', async () => {
|
|
132
|
+
vi.useFakeTimers();
|
|
133
|
+
const tool = new TestTool(messageBus);
|
|
134
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
135
|
+
const subscribeSpy = vi.spyOn(messageBus, 'subscribe');
|
|
136
|
+
const confirmationPromise = invocation.shouldConfirmExecute(new AbortController().signal);
|
|
137
|
+
// Send response with wrong correlation ID
|
|
138
|
+
const responseHandler = subscribeSpy.mock.calls[0][1];
|
|
139
|
+
const wrongResponse = {
|
|
140
|
+
type: MessageBusType.TOOL_CONFIRMATION_RESPONSE,
|
|
141
|
+
correlationId: 'wrong-id',
|
|
142
|
+
confirmed: true,
|
|
143
|
+
};
|
|
144
|
+
responseHandler(wrongResponse);
|
|
145
|
+
// Should timeout since correct response wasn't received
|
|
146
|
+
vi.advanceTimersByTime(30000);
|
|
147
|
+
const result = await confirmationPromise;
|
|
148
|
+
expect(result).toBe(false);
|
|
149
|
+
vi.useRealTimers();
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
describe('Backward Compatibility', () => {
|
|
153
|
+
it('should work with existing tools that do not use message bus', async () => {
|
|
154
|
+
const tool = new TestTool(); // No message bus
|
|
155
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
156
|
+
// Should execute normally
|
|
157
|
+
const result = await invocation.execute(new AbortController().signal);
|
|
158
|
+
expect(result.testValue).toBe('test-value');
|
|
159
|
+
expect(result.llmContent).toBe('Executed with test-value');
|
|
160
|
+
});
|
|
161
|
+
it('should work with tools that have message bus but use default confirmation', async () => {
|
|
162
|
+
const tool = new TestTool(messageBus);
|
|
163
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
164
|
+
// Should execute normally even with message bus available
|
|
165
|
+
const result = await invocation.execute(new AbortController().signal);
|
|
166
|
+
expect(result.testValue).toBe('test-value');
|
|
167
|
+
expect(result.llmContent).toBe('Executed with test-value');
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
describe('Error Handling', () => {
|
|
171
|
+
it('should handle message bus publish errors gracefully', async () => {
|
|
172
|
+
const tool = new TestTool(messageBus);
|
|
173
|
+
const invocation = tool.build({ testParam: 'test-value' });
|
|
174
|
+
// Mock publish to throw error
|
|
175
|
+
vi.spyOn(messageBus, 'publish').mockImplementation(() => {
|
|
176
|
+
throw new Error('Message bus error');
|
|
177
|
+
});
|
|
178
|
+
const result = await invocation.shouldConfirmExecute(new AbortController().signal);
|
|
179
|
+
expect(result).toBe(false); // Should gracefully fall back
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
//# sourceMappingURL=message-bus-integration.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-bus-integration.test.js","sourceRoot":"","sources":["../../../src/tools/message-bus-integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { ToolErrorType } from './tool-error.js';
|
|
|
8
8
|
import type { DiffUpdateResult } from '../ide/ide-client.js';
|
|
9
9
|
import type { ShellExecutionConfig } from '../services/shellExecutionService.js';
|
|
10
10
|
import type { AnsiOutput } from '../utils/terminalSerializer.js';
|
|
11
|
+
import type { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
11
12
|
/**
|
|
12
13
|
* Represents a validated and ready-to-execute tool call.
|
|
13
14
|
* An instance of this is created by a `ToolBuilder`.
|
|
@@ -46,10 +47,16 @@ export interface ToolInvocation<TParams extends object, TResult extends ToolResu
|
|
|
46
47
|
*/
|
|
47
48
|
export declare abstract class BaseToolInvocation<TParams extends object, TResult extends ToolResult> implements ToolInvocation<TParams, TResult> {
|
|
48
49
|
readonly params: TParams;
|
|
49
|
-
|
|
50
|
+
protected readonly messageBus?: MessageBus | undefined;
|
|
51
|
+
constructor(params: TParams, messageBus?: MessageBus | undefined);
|
|
50
52
|
abstract getDescription(): string;
|
|
51
53
|
toolLocations(): ToolLocation[];
|
|
52
54
|
shouldConfirmExecute(_abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
|
|
55
|
+
/**
|
|
56
|
+
* Handle tool confirmation using the message bus.
|
|
57
|
+
* This method publishes a confirmation request and waits for the response.
|
|
58
|
+
*/
|
|
59
|
+
protected handleMessageBusConfirmation(abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
|
|
53
60
|
abstract execute(signal: AbortSignal, updateOutput?: (output: string | AnsiOutput) => void, shellExecutionConfig?: ShellExecutionConfig): Promise<TResult>;
|
|
54
61
|
}
|
|
55
62
|
/**
|
|
@@ -107,7 +114,8 @@ export declare abstract class DeclarativeTool<TParams extends object, TResult ex
|
|
|
107
114
|
readonly parameterSchema: unknown;
|
|
108
115
|
readonly isOutputMarkdown: boolean;
|
|
109
116
|
readonly canUpdateOutput: boolean;
|
|
110
|
-
|
|
117
|
+
readonly messageBus?: MessageBus | undefined;
|
|
118
|
+
constructor(name: string, displayName: string, description: string, kind: Kind, parameterSchema: unknown, isOutputMarkdown?: boolean, canUpdateOutput?: boolean, messageBus?: MessageBus | undefined);
|
|
111
119
|
get schema(): FunctionDeclaration;
|
|
112
120
|
/**
|
|
113
121
|
* Validates the raw tool parameters.
|
|
@@ -159,7 +167,7 @@ export declare abstract class BaseDeclarativeTool<TParams extends object, TResul
|
|
|
159
167
|
build(params: TParams): ToolInvocation<TParams, TResult>;
|
|
160
168
|
validateToolParams(params: TParams): string | null;
|
|
161
169
|
protected validateToolParamValues(_params: TParams): string | null;
|
|
162
|
-
protected abstract createInvocation(params: TParams): ToolInvocation<TParams, TResult>;
|
|
170
|
+
protected abstract createInvocation(params: TParams, messageBus?: MessageBus): ToolInvocation<TParams, TResult>;
|
|
163
171
|
}
|
|
164
172
|
/**
|
|
165
173
|
* A type alias for a declarative tool where the specific parameter and result types are not known.
|
package/dist/src/tools/tools.js
CHANGED
|
@@ -5,20 +5,109 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ToolErrorType } from './tool-error.js';
|
|
7
7
|
import { SchemaValidator } from '../utils/schemaValidator.js';
|
|
8
|
+
import { randomUUID } from 'node:crypto';
|
|
9
|
+
import { MessageBusType, } from '../confirmation-bus/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;
|
|
19
|
+
if (this.messageBus) {
|
|
20
|
+
console.log(`[DEBUG] Tool ${this.constructor.name} created with messageBus: YES`);
|
|
21
|
+
}
|
|
15
22
|
}
|
|
16
23
|
toolLocations() {
|
|
17
24
|
return [];
|
|
18
25
|
}
|
|
19
26
|
shouldConfirmExecute(_abortSignal) {
|
|
27
|
+
// If message bus is available, use it for confirmation
|
|
28
|
+
if (this.messageBus) {
|
|
29
|
+
console.log(`[DEBUG] Using message bus for tool confirmation: ${this.constructor.name}`);
|
|
30
|
+
return this.handleMessageBusConfirmation(_abortSignal);
|
|
31
|
+
}
|
|
32
|
+
// Fall back to existing confirmation flow
|
|
20
33
|
return Promise.resolve(false);
|
|
21
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Handle tool confirmation using the message bus.
|
|
37
|
+
* This method publishes a confirmation request and waits for the response.
|
|
38
|
+
*/
|
|
39
|
+
async handleMessageBusConfirmation(abortSignal) {
|
|
40
|
+
if (!this.messageBus) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
const correlationId = randomUUID();
|
|
44
|
+
const toolCall = {
|
|
45
|
+
name: this.constructor.name,
|
|
46
|
+
args: this.params,
|
|
47
|
+
};
|
|
48
|
+
return new Promise((resolve, reject) => {
|
|
49
|
+
if (!this.messageBus) {
|
|
50
|
+
resolve(false);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let timeoutId;
|
|
54
|
+
// Centralized cleanup function
|
|
55
|
+
const cleanup = () => {
|
|
56
|
+
if (timeoutId) {
|
|
57
|
+
clearTimeout(timeoutId);
|
|
58
|
+
timeoutId = undefined;
|
|
59
|
+
}
|
|
60
|
+
abortSignal.removeEventListener('abort', abortHandler);
|
|
61
|
+
this.messageBus?.unsubscribe(MessageBusType.TOOL_CONFIRMATION_RESPONSE, responseHandler);
|
|
62
|
+
};
|
|
63
|
+
// Set up abort handler
|
|
64
|
+
const abortHandler = () => {
|
|
65
|
+
cleanup();
|
|
66
|
+
reject(new Error('Tool confirmation aborted'));
|
|
67
|
+
};
|
|
68
|
+
// Check if already aborted
|
|
69
|
+
if (abortSignal.aborted) {
|
|
70
|
+
reject(new Error('Tool confirmation aborted'));
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
// Set up response handler
|
|
74
|
+
const responseHandler = (response) => {
|
|
75
|
+
if (response.correlationId === correlationId) {
|
|
76
|
+
cleanup();
|
|
77
|
+
if (response.confirmed) {
|
|
78
|
+
// Tool was confirmed, return false to indicate no further confirmation needed
|
|
79
|
+
resolve(false);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
// Tool was denied, reject to prevent execution
|
|
83
|
+
reject(new Error('Tool execution denied by policy'));
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
// Add event listener for abort signal
|
|
88
|
+
abortSignal.addEventListener('abort', abortHandler);
|
|
89
|
+
// Set up timeout
|
|
90
|
+
timeoutId = setTimeout(() => {
|
|
91
|
+
cleanup();
|
|
92
|
+
resolve(false);
|
|
93
|
+
}, 30000); // 30 second timeout
|
|
94
|
+
// Subscribe to response
|
|
95
|
+
this.messageBus.subscribe(MessageBusType.TOOL_CONFIRMATION_RESPONSE, responseHandler);
|
|
96
|
+
// Publish confirmation request
|
|
97
|
+
const request = {
|
|
98
|
+
type: MessageBusType.TOOL_CONFIRMATION_REQUEST,
|
|
99
|
+
toolCall,
|
|
100
|
+
correlationId,
|
|
101
|
+
};
|
|
102
|
+
try {
|
|
103
|
+
this.messageBus.publish(request);
|
|
104
|
+
}
|
|
105
|
+
catch (_error) {
|
|
106
|
+
cleanup();
|
|
107
|
+
resolve(false);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
22
111
|
}
|
|
23
112
|
/**
|
|
24
113
|
* New base class for tools that separates validation from execution.
|
|
@@ -32,7 +121,8 @@ export class DeclarativeTool {
|
|
|
32
121
|
parameterSchema;
|
|
33
122
|
isOutputMarkdown;
|
|
34
123
|
canUpdateOutput;
|
|
35
|
-
|
|
124
|
+
messageBus;
|
|
125
|
+
constructor(name, displayName, description, kind, parameterSchema, isOutputMarkdown = true, canUpdateOutput = false, messageBus) {
|
|
36
126
|
this.name = name;
|
|
37
127
|
this.displayName = displayName;
|
|
38
128
|
this.description = description;
|
|
@@ -40,6 +130,7 @@ export class DeclarativeTool {
|
|
|
40
130
|
this.parameterSchema = parameterSchema;
|
|
41
131
|
this.isOutputMarkdown = isOutputMarkdown;
|
|
42
132
|
this.canUpdateOutput = canUpdateOutput;
|
|
133
|
+
this.messageBus = messageBus;
|
|
43
134
|
}
|
|
44
135
|
get schema() {
|
|
45
136
|
return {
|
|
@@ -135,7 +226,7 @@ export class BaseDeclarativeTool extends DeclarativeTool {
|
|
|
135
226
|
if (validationError) {
|
|
136
227
|
throw new Error(validationError);
|
|
137
228
|
}
|
|
138
|
-
return this.createInvocation(params);
|
|
229
|
+
return this.createInvocation(params, this.messageBus);
|
|
139
230
|
}
|
|
140
231
|
validateToolParams(params) {
|
|
141
232
|
const errors = SchemaValidator.validate(this.schema.parametersJsonSchema, params);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/tools/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,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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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolInvocation } from './tools.js';
|
|
7
|
+
import { BaseDeclarativeTool, type ToolResult } from './tools.js';
|
|
8
|
+
export declare const WRITE_TODOS_DESCRIPTION = "This tool can help you list out the current subtasks that are required to be completed for a given user request. The list of subtasks helps you keep track of the current task, organize complex queries and help ensure that you don't miss any steps. With this list, the user can also see the current progress you are making in executing a given task.\n\nDepending on the task complexity, you should first divide a given task into subtasks and then use this tool to list out the subtasks that are required to be completed for a given user request.\nEach of the subtasks should be clear and distinct. \n\nUse this tool for complex queries that require multiple steps. If you find that the request is actually complex after you have started executing the user task, create a todo list and use it. If execution of the user task requires multiple steps, planning and generally is higher complexity than a simple Q&A, use this tool.\n\nDO NOT use this tool for simple tasks that can be completed in less than 2 steps. If the user query is simple and straightforward, do not use the tool. If you can respond with an answer in a single turn then this tool is not required.\n\n## Task state definitions\n\n- pending: Work has not begun on a given subtask.\n- in_progress: Marked just prior to beginning work on a given subtask. You should only have one subtask as in_progress at a time.\n- completed: Subtask was succesfully completed with no errors or issues. If the subtask required more steps to complete, update the todo list with the subtasks. All steps should be identified as completed only when they are completed.\n- cancelled: As you update the todo list, some tasks are not required anymore due to the dynamic nature of the task. In this case, mark the subtasks as cancelled.\n\n\n## Methodology for using this tool\n1. Use this todo list list as soon as you receive a user request based on the complexity of the task.\n2. Keep track of every subtask that you update the list with.\n3. Mark a subtask as in_progress before you begin working on it. You should only have one subtask as in_progress at a time.\n4. Update the subtask list as you proceed in executing the task. The subtask list is not static and should reflect your progress and current plans, which may evolve as you acquire new information.\n5. Mark a subtask as completed when you have completed it.\n6. Mark a subtask as cancelled if the subtask is no longer needed.\n7. You must update the todo list as soon as you start, stop or cancel a subtask. Don't batch or wait to update the todo list.\n\n\n## Examples of When to Use the Todo List\n\n<example>\nUser request: Create a website with a React for creating fancy logos using gemini-2.5-flash-image\n\nToDo list created by the agent:\n1. Initialize a new React project environment (e.g., using Vite).\n2. Design and build the core UI components: a text input (prompt field) for the logo description, selection controls for style parameters (if the API supports them), and an image preview area.\n3. Implement state management (e.g., React Context or Zustand) to manage the user's input prompt, the API loading status (pending, success, error), and the resulting image data.\n4. Create an API service module within the React app (using \"fetch\" or \"axios\") to securely format and send the prompt data via an HTTP POST request to the specified \"gemini-2.5-flash-image\" (Gemini model) endpoint.\n5. Implement asynchronous logic to handle the API call: show a loading indicator while the request is pending, retrieve the generated image (e.g., as a URL or base64 string) upon success, and display any errors.\n6. Display the returned \"fancy logo\" from the API response in the preview area component.\n7. Add functionality (e.g., a \"Download\" button) to allow the user to save the generated image file.\n8. Deploy the application to a web server or hosting platform.\n\n<reasoning>\nThe agent used the todo list to break the task into distinct, manageable steps:\n1. Building an entire interactive web application from scratch is a highly complex, multi-stage process involving setup, UI development, logic integration, and deployment.\n2. The agent inferred the core functionality required for a \"logo creator,\" such as UI controls for customization (Task 3) and an export feature (Task 7), which must be tracked as distinct goals.\n3. The agent rightly inferred the requirement of an API service model for interacting with the image model endpoint.\n</reasoning>\n</example>\n\n\n## Examples of When NOT to Use the Todo List\n\n<example>\nUser request: Ensure that the test <test file> passes.\n\nAgent:\n<Goes into a loop of running the test, identifying errors, and updating the code until the test passes.>\n\n<reasoning>\nThe agent did not use the todo list because this task could be completed by a tight loop of execute test->edit->execute test.\n</reasoning>\n</example>\n";
|
|
9
|
+
export type TodoStatus = 'pending' | 'in_progress' | 'completed' | 'cancelled';
|
|
10
|
+
export interface Todo {
|
|
11
|
+
description: string;
|
|
12
|
+
status: TodoStatus;
|
|
13
|
+
}
|
|
14
|
+
export interface WriteTodosToolParams {
|
|
15
|
+
/**
|
|
16
|
+
* The full list of todos. This will overwrite any existing list.
|
|
17
|
+
*/
|
|
18
|
+
todos: Todo[];
|
|
19
|
+
}
|
|
20
|
+
export declare class WriteTodosTool extends BaseDeclarativeTool<WriteTodosToolParams, ToolResult> {
|
|
21
|
+
static readonly Name: string;
|
|
22
|
+
constructor();
|
|
23
|
+
protected validateToolParamValues(params: WriteTodosToolParams): string | null;
|
|
24
|
+
protected createInvocation(params: WriteTodosToolParams): ToolInvocation<WriteTodosToolParams, ToolResult>;
|
|
25
|
+
}
|