@office-ai/aioncli-core 0.24.0 → 0.26.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/src/agents/introspection-agent.d.ts +2 -2
- package/dist/src/core/anthropicContentGenerator.d.ts +28 -0
- package/dist/src/core/anthropicContentGenerator.js +282 -0
- package/dist/src/core/anthropicContentGenerator.js.map +1 -0
- package/dist/src/core/contentGenerator.d.ts +2 -1
- package/dist/src/core/contentGenerator.js +14 -0
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/coreToolHookTriggers.js +3 -3
- 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/types.d.ts +44 -44
- package/dist/src/services/shellExecutionService.d.ts +5 -0
- package/dist/src/services/shellExecutionService.js +12 -0
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/tools/shell.js +8 -0
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/utils/checkpointUtils.d.ts +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -9,11 +9,11 @@ declare const IntrospectionReportSchema: z.ZodObject<{
|
|
|
9
9
|
answer: z.ZodString;
|
|
10
10
|
sources: z.ZodArray<z.ZodString, "many">;
|
|
11
11
|
}, "strip", z.ZodTypeAny, {
|
|
12
|
-
sources: string[];
|
|
13
12
|
answer: string;
|
|
14
|
-
}, {
|
|
15
13
|
sources: string[];
|
|
14
|
+
}, {
|
|
16
15
|
answer: string;
|
|
16
|
+
sources: string[];
|
|
17
17
|
}>;
|
|
18
18
|
/**
|
|
19
19
|
* An agent specialized in answering questions about Gemini CLI itself,
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 AionUi (aionui.com)
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { CountTokensResponse, GenerateContentParameters, CountTokensParameters, EmbedContentResponse, EmbedContentParameters } from '@google/genai';
|
|
7
|
+
import { GenerateContentResponse } from '@google/genai';
|
|
8
|
+
import type { ContentGenerator } from './contentGenerator.js';
|
|
9
|
+
import Anthropic from '@anthropic-ai/sdk';
|
|
10
|
+
import type { Config } from '../config/config.js';
|
|
11
|
+
export declare class AnthropicContentGenerator implements ContentGenerator {
|
|
12
|
+
protected client: Anthropic;
|
|
13
|
+
private model;
|
|
14
|
+
private config;
|
|
15
|
+
constructor(apiKey: string, model: string, config: Config);
|
|
16
|
+
generateContent(request: GenerateContentParameters, _userPromptId: string): Promise<GenerateContentResponse>;
|
|
17
|
+
generateContentStream(request: GenerateContentParameters, userPromptId: string): Promise<AsyncGenerator<GenerateContentResponse>>;
|
|
18
|
+
countTokens(request: CountTokensParameters): Promise<CountTokensResponse>;
|
|
19
|
+
embedContent(_request: EmbedContentParameters): Promise<EmbedContentResponse>;
|
|
20
|
+
private convertToAnthropicFormat;
|
|
21
|
+
private extractSystemInstruction;
|
|
22
|
+
private processContentParts;
|
|
23
|
+
private ensureAlternatingMessages;
|
|
24
|
+
private convertGeminiToolsToAnthropic;
|
|
25
|
+
private convertToGeminiFormat;
|
|
26
|
+
private mapStopReason;
|
|
27
|
+
private buildSamplingParameters;
|
|
28
|
+
}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 AionUi (aionui.com)
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { GenerateContentResponse, FinishReason } from '@google/genai';
|
|
7
|
+
import Anthropic from '@anthropic-ai/sdk';
|
|
8
|
+
import { toContents } from '../code_assist/converter.js';
|
|
9
|
+
export class AnthropicContentGenerator {
|
|
10
|
+
client;
|
|
11
|
+
model;
|
|
12
|
+
config;
|
|
13
|
+
constructor(apiKey, model, config) {
|
|
14
|
+
this.model = model;
|
|
15
|
+
this.config = config;
|
|
16
|
+
let baseURL = process.env['ANTHROPIC_BASE_URL'] || 'https://api.anthropic.com';
|
|
17
|
+
// Remove trailing /v1 if present - Anthropic SDK adds its own path
|
|
18
|
+
if (baseURL.endsWith('/v1')) {
|
|
19
|
+
baseURL = baseURL.slice(0, -3);
|
|
20
|
+
}
|
|
21
|
+
// Configure timeout settings
|
|
22
|
+
const timeoutConfig = {
|
|
23
|
+
timeout: 120000,
|
|
24
|
+
maxRetries: 3,
|
|
25
|
+
};
|
|
26
|
+
// Allow config to override timeout settings
|
|
27
|
+
const contentGeneratorConfig = this.config.getContentGeneratorConfig();
|
|
28
|
+
if (contentGeneratorConfig?.timeout) {
|
|
29
|
+
timeoutConfig.timeout = contentGeneratorConfig.timeout;
|
|
30
|
+
}
|
|
31
|
+
if (contentGeneratorConfig?.maxRetries !== undefined) {
|
|
32
|
+
timeoutConfig.maxRetries = contentGeneratorConfig.maxRetries;
|
|
33
|
+
}
|
|
34
|
+
this.client = new Anthropic({
|
|
35
|
+
apiKey,
|
|
36
|
+
baseURL,
|
|
37
|
+
timeout: timeoutConfig.timeout,
|
|
38
|
+
maxRetries: timeoutConfig.maxRetries,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async generateContent(request, _userPromptId) {
|
|
42
|
+
const { systemMessage, messages } = this.convertToAnthropicFormat(request);
|
|
43
|
+
try {
|
|
44
|
+
const samplingParams = this.buildSamplingParameters(request);
|
|
45
|
+
const createParams = {
|
|
46
|
+
model: this.model,
|
|
47
|
+
max_tokens: samplingParams.max_tokens || 4096,
|
|
48
|
+
messages,
|
|
49
|
+
...(systemMessage ? { system: systemMessage } : {}),
|
|
50
|
+
...(samplingParams.temperature !== undefined ? { temperature: samplingParams.temperature } : {}),
|
|
51
|
+
...(samplingParams.top_p !== undefined ? { top_p: samplingParams.top_p } : {}),
|
|
52
|
+
};
|
|
53
|
+
// Convert tools if present
|
|
54
|
+
if (request.config?.tools) {
|
|
55
|
+
createParams.tools = await this.convertGeminiToolsToAnthropic(request.config.tools);
|
|
56
|
+
}
|
|
57
|
+
const completion = await this.client.messages.create(createParams);
|
|
58
|
+
return this.convertToGeminiFormat(completion);
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.error('Anthropic API Error:', error instanceof Error ? error.message : String(error));
|
|
62
|
+
throw error;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
async generateContentStream(request, userPromptId) {
|
|
66
|
+
// For now, use non-streaming API and wrap in generator
|
|
67
|
+
// This ensures compatibility while we can improve streaming later
|
|
68
|
+
const self = this;
|
|
69
|
+
async function* streamWrapper() {
|
|
70
|
+
const response = await self.generateContent(request, userPromptId);
|
|
71
|
+
yield response;
|
|
72
|
+
}
|
|
73
|
+
return streamWrapper();
|
|
74
|
+
}
|
|
75
|
+
async countTokens(request) {
|
|
76
|
+
// Anthropic doesn't have a public token counting API
|
|
77
|
+
// Use character approximation
|
|
78
|
+
const content = JSON.stringify(request.contents);
|
|
79
|
+
const totalTokens = Math.ceil(content.length / 4);
|
|
80
|
+
return { totalTokens };
|
|
81
|
+
}
|
|
82
|
+
async embedContent(_request) {
|
|
83
|
+
throw new Error('Anthropic does not support embeddings');
|
|
84
|
+
}
|
|
85
|
+
convertToAnthropicFormat(request) {
|
|
86
|
+
let systemMessage;
|
|
87
|
+
const messages = [];
|
|
88
|
+
// Handle system instruction
|
|
89
|
+
if (request.config?.systemInstruction) {
|
|
90
|
+
systemMessage = this.extractSystemInstruction(request.config.systemInstruction);
|
|
91
|
+
}
|
|
92
|
+
// Handle contents
|
|
93
|
+
if (Array.isArray(request.contents)) {
|
|
94
|
+
for (const content of request.contents) {
|
|
95
|
+
if (typeof content === 'string') {
|
|
96
|
+
messages.push({ role: 'user', content });
|
|
97
|
+
}
|
|
98
|
+
else if ('role' in content && 'parts' in content) {
|
|
99
|
+
const { role, contentBlocks } = this.processContentParts(content);
|
|
100
|
+
if (contentBlocks.length > 0) {
|
|
101
|
+
messages.push({ role, content: contentBlocks });
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Ensure messages alternate and start with user
|
|
107
|
+
return { systemMessage, messages: this.ensureAlternatingMessages(messages) };
|
|
108
|
+
}
|
|
109
|
+
extractSystemInstruction(systemInstruction) {
|
|
110
|
+
if (typeof systemInstruction === 'string') {
|
|
111
|
+
return systemInstruction;
|
|
112
|
+
}
|
|
113
|
+
if (Array.isArray(systemInstruction)) {
|
|
114
|
+
return systemInstruction
|
|
115
|
+
.map((item) => {
|
|
116
|
+
if (typeof item === 'string')
|
|
117
|
+
return item;
|
|
118
|
+
if (typeof item === 'object' && item && 'parts' in item) {
|
|
119
|
+
const contentObj = item;
|
|
120
|
+
return contentObj.parts?.map((p) => ('text' in p ? p.text : '')).join('\n') || '';
|
|
121
|
+
}
|
|
122
|
+
return '';
|
|
123
|
+
})
|
|
124
|
+
.join('\n');
|
|
125
|
+
}
|
|
126
|
+
if (typeof systemInstruction === 'object' && systemInstruction && 'parts' in systemInstruction) {
|
|
127
|
+
const contentObj = systemInstruction;
|
|
128
|
+
return contentObj.parts?.map((p) => ('text' in p ? p.text : '')).join('\n') || '';
|
|
129
|
+
}
|
|
130
|
+
return '';
|
|
131
|
+
}
|
|
132
|
+
processContentParts(content) {
|
|
133
|
+
const role = content.role === 'model' ? 'assistant' : 'user';
|
|
134
|
+
const contentBlocks = [];
|
|
135
|
+
const functionResponses = [];
|
|
136
|
+
for (const part of content.parts || []) {
|
|
137
|
+
if (typeof part === 'string') {
|
|
138
|
+
contentBlocks.push({ type: 'text', text: part });
|
|
139
|
+
}
|
|
140
|
+
else if ('text' in part && part.text) {
|
|
141
|
+
contentBlocks.push({ type: 'text', text: part.text });
|
|
142
|
+
}
|
|
143
|
+
else if ('functionCall' in part && part.functionCall) {
|
|
144
|
+
// Convert to tool_use block
|
|
145
|
+
contentBlocks.push({
|
|
146
|
+
type: 'tool_use',
|
|
147
|
+
id: part.functionCall.id || `call_${Date.now()}`,
|
|
148
|
+
name: part.functionCall.name || '',
|
|
149
|
+
input: part.functionCall.args || {},
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
else if ('functionResponse' in part && part.functionResponse) {
|
|
153
|
+
functionResponses.push(part.functionResponse);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
// Handle function responses as tool_result
|
|
157
|
+
for (const funcResponse of functionResponses) {
|
|
158
|
+
contentBlocks.push({
|
|
159
|
+
type: 'tool_result',
|
|
160
|
+
tool_use_id: funcResponse.id || '',
|
|
161
|
+
content: typeof funcResponse.response === 'string' ? funcResponse.response : JSON.stringify(funcResponse.response),
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
return { role, contentBlocks };
|
|
165
|
+
}
|
|
166
|
+
ensureAlternatingMessages(messages) {
|
|
167
|
+
if (messages.length === 0)
|
|
168
|
+
return [];
|
|
169
|
+
const result = [];
|
|
170
|
+
for (const msg of messages) {
|
|
171
|
+
const lastRole = result.length > 0 ? result[result.length - 1].role : null;
|
|
172
|
+
if (lastRole === msg.role) {
|
|
173
|
+
// Merge with previous message
|
|
174
|
+
const lastMsg = result[result.length - 1];
|
|
175
|
+
const lastContent = lastMsg.content;
|
|
176
|
+
const newContent = msg.content;
|
|
177
|
+
if (typeof lastContent === 'string' && typeof newContent === 'string') {
|
|
178
|
+
lastMsg.content = lastContent + '\n' + newContent;
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
const lastArray = typeof lastContent === 'string' ? [{ type: 'text', text: lastContent }] : lastContent;
|
|
182
|
+
const newArray = typeof newContent === 'string' ? [{ type: 'text', text: newContent }] : newContent;
|
|
183
|
+
lastMsg.content = [...lastArray, ...newArray];
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
result.push({ ...msg });
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
// Ensure first message is from user
|
|
191
|
+
if (result.length > 0 && result[0].role !== 'user') {
|
|
192
|
+
result.unshift({ role: 'user', content: 'Continue.' });
|
|
193
|
+
}
|
|
194
|
+
return result;
|
|
195
|
+
}
|
|
196
|
+
async convertGeminiToolsToAnthropic(geminiTools) {
|
|
197
|
+
const anthropicTools = [];
|
|
198
|
+
if (!Array.isArray(geminiTools))
|
|
199
|
+
return anthropicTools;
|
|
200
|
+
for (const tool of geminiTools) {
|
|
201
|
+
let actualTool;
|
|
202
|
+
if ('tool' in tool) {
|
|
203
|
+
actualTool = await (tool.tool)();
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
actualTool = tool;
|
|
207
|
+
}
|
|
208
|
+
const toolObj = actualTool;
|
|
209
|
+
if (toolObj.functionDeclarations) {
|
|
210
|
+
for (const func of toolObj.functionDeclarations) {
|
|
211
|
+
if (func.name) {
|
|
212
|
+
anthropicTools.push({
|
|
213
|
+
name: func.name,
|
|
214
|
+
description: func.description || '',
|
|
215
|
+
input_schema: func.parameters || { type: 'object', properties: {} },
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return anthropicTools;
|
|
222
|
+
}
|
|
223
|
+
convertToGeminiFormat(anthropicResponse) {
|
|
224
|
+
const response = new GenerateContentResponse();
|
|
225
|
+
const parts = [];
|
|
226
|
+
for (const block of anthropicResponse.content) {
|
|
227
|
+
if (block.type === 'text') {
|
|
228
|
+
parts.push({ text: block.text });
|
|
229
|
+
}
|
|
230
|
+
else if (block.type === 'tool_use') {
|
|
231
|
+
parts.push({
|
|
232
|
+
functionCall: {
|
|
233
|
+
id: block.id,
|
|
234
|
+
name: block.name,
|
|
235
|
+
args: block.input,
|
|
236
|
+
},
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
response.responseId = anthropicResponse.id;
|
|
241
|
+
response.createTime = new Date().getTime().toString();
|
|
242
|
+
response.candidates = [
|
|
243
|
+
{
|
|
244
|
+
content: { parts, role: 'model' },
|
|
245
|
+
finishReason: this.mapStopReason(anthropicResponse.stop_reason),
|
|
246
|
+
index: 0,
|
|
247
|
+
safetyRatings: [],
|
|
248
|
+
},
|
|
249
|
+
];
|
|
250
|
+
response.modelVersion = this.model;
|
|
251
|
+
response.promptFeedback = { safetyRatings: [] };
|
|
252
|
+
response.usageMetadata = {
|
|
253
|
+
promptTokenCount: anthropicResponse.usage.input_tokens,
|
|
254
|
+
candidatesTokenCount: anthropicResponse.usage.output_tokens,
|
|
255
|
+
totalTokenCount: anthropicResponse.usage.input_tokens + anthropicResponse.usage.output_tokens,
|
|
256
|
+
};
|
|
257
|
+
return response;
|
|
258
|
+
}
|
|
259
|
+
mapStopReason(stopReason) {
|
|
260
|
+
switch (stopReason) {
|
|
261
|
+
case 'end_turn':
|
|
262
|
+
return FinishReason.STOP;
|
|
263
|
+
case 'max_tokens':
|
|
264
|
+
return FinishReason.MAX_TOKENS;
|
|
265
|
+
case 'stop_sequence':
|
|
266
|
+
return FinishReason.STOP;
|
|
267
|
+
case 'tool_use':
|
|
268
|
+
return FinishReason.STOP;
|
|
269
|
+
default:
|
|
270
|
+
return FinishReason.STOP;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
buildSamplingParameters(request) {
|
|
274
|
+
const configSamplingParams = this.config.getContentGeneratorConfig()?.samplingParams;
|
|
275
|
+
return {
|
|
276
|
+
temperature: configSamplingParams?.temperature !== undefined ? configSamplingParams.temperature : request.config?.temperature,
|
|
277
|
+
max_tokens: configSamplingParams?.max_tokens !== undefined ? configSamplingParams.max_tokens : request.config?.maxOutputTokens,
|
|
278
|
+
top_p: configSamplingParams?.top_p !== undefined ? configSamplingParams.top_p : request.config?.topP,
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
//# sourceMappingURL=anthropicContentGenerator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropicContentGenerator.js","sourceRoot":"","sources":["../../../src/core/anthropicContentGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,8 @@ export declare enum AuthType {
|
|
|
22
22
|
USE_VERTEX_AI = "vertex-ai",
|
|
23
23
|
LEGACY_CLOUD_SHELL = "cloud-shell",
|
|
24
24
|
COMPUTE_ADC = "compute-default-credentials",
|
|
25
|
-
USE_OPENAI = "openai"
|
|
25
|
+
USE_OPENAI = "openai",
|
|
26
|
+
USE_ANTHROPIC = "anthropic"
|
|
26
27
|
}
|
|
27
28
|
export type ContentGeneratorConfig = {
|
|
28
29
|
model?: string;
|
|
@@ -21,6 +21,7 @@ export var AuthType;
|
|
|
21
21
|
AuthType["LEGACY_CLOUD_SHELL"] = "cloud-shell";
|
|
22
22
|
AuthType["COMPUTE_ADC"] = "compute-default-credentials";
|
|
23
23
|
AuthType["USE_OPENAI"] = "openai";
|
|
24
|
+
AuthType["USE_ANTHROPIC"] = "anthropic";
|
|
24
25
|
})(AuthType || (AuthType = {}));
|
|
25
26
|
export async function createContentGeneratorConfig(config, authType) {
|
|
26
27
|
const geminiApiKey = process.env['GEMINI_API_KEY'] || (await loadApiKey()) || undefined;
|
|
@@ -30,6 +31,7 @@ export async function createContentGeneratorConfig(config, authType) {
|
|
|
30
31
|
undefined;
|
|
31
32
|
const googleCloudLocation = process.env['GOOGLE_CLOUD_LOCATION'] || undefined;
|
|
32
33
|
const openAiApiKey = process.env['OPENAI_API_KEY'] || undefined;
|
|
34
|
+
const anthropicApiKey = process.env['ANTHROPIC_API_KEY'] || undefined;
|
|
33
35
|
const contentGeneratorConfig = {
|
|
34
36
|
model: config.getModel() || DEFAULT_GEMINI_MODEL,
|
|
35
37
|
authType,
|
|
@@ -54,6 +56,9 @@ export async function createContentGeneratorConfig(config, authType) {
|
|
|
54
56
|
if (authType === AuthType.USE_OPENAI && openAiApiKey) {
|
|
55
57
|
contentGeneratorConfig.apiKey = openAiApiKey;
|
|
56
58
|
}
|
|
59
|
+
if (authType === AuthType.USE_ANTHROPIC && anthropicApiKey) {
|
|
60
|
+
contentGeneratorConfig.apiKey = anthropicApiKey;
|
|
61
|
+
}
|
|
57
62
|
return contentGeneratorConfig;
|
|
58
63
|
}
|
|
59
64
|
export async function createContentGenerator(config, gcConfig, sessionId) {
|
|
@@ -110,6 +115,15 @@ export async function createContentGenerator(config, gcConfig, sessionId) {
|
|
|
110
115
|
const { OpenAIContentGenerator } = await import('./openaiContentGenerator.js');
|
|
111
116
|
return new OpenAIContentGenerator(config.apiKey, config.model || gcConfig.getModel() || DEFAULT_GEMINI_MODEL, gcConfig);
|
|
112
117
|
}
|
|
118
|
+
// Handle Anthropic authType
|
|
119
|
+
if (config.authType === AuthType.USE_ANTHROPIC) {
|
|
120
|
+
if (!config.apiKey) {
|
|
121
|
+
throw new Error('Anthropic API key is required');
|
|
122
|
+
}
|
|
123
|
+
// Import AnthropicContentGenerator dynamically to avoid circular dependencies
|
|
124
|
+
const { AnthropicContentGenerator } = await import('./anthropicContentGenerator.js');
|
|
125
|
+
return new AnthropicContentGenerator(config.apiKey, config.model || gcConfig.getModel() || 'claude-sonnet-4-20250514', gcConfig);
|
|
126
|
+
}
|
|
113
127
|
throw new Error(`Error creating contentGenerator: Unsupported authType: ${config.authType}`);
|
|
114
128
|
})();
|
|
115
129
|
if (gcConfig.recordResponses) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contentGenerator.js","sourceRoot":"","sources":["../../../src/core/contentGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAuB1D,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"contentGenerator.js","sourceRoot":"","sources":["../../../src/core/contentGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { MessageBusType, } from '../confirmation-bus/types.js';
|
|
7
|
-
import { createHookOutput, NotificationType,
|
|
7
|
+
import { BeforeToolHookOutput, createHookOutput, NotificationType, } from '../hooks/types.js';
|
|
8
|
+
import { ShellToolInvocation } from '../tools/shell.js';
|
|
8
9
|
import { ToolErrorType } from '../tools/tool-error.js';
|
|
9
10
|
import { debugLogger } from '../utils/debugLogger.js';
|
|
10
|
-
import { ShellToolInvocation } from '../tools/shell.js';
|
|
11
11
|
/**
|
|
12
12
|
* Converts ToolCallConfirmationDetails to a serializable format for hooks.
|
|
13
13
|
* Excludes function properties (onConfirm, ideConfirmation) that can't be serialized.
|
|
@@ -301,4 +301,4 @@ export async function executeToolWithHooks(invocation, toolName, signal, message
|
|
|
301
301
|
}
|
|
302
302
|
return toolResult;
|
|
303
303
|
}
|
|
304
|
-
//# sourceMappingURL=coreToolHookTriggers.js.map
|
|
304
|
+
//# sourceMappingURL=coreToolHookTriggers.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
export declare const GIT_COMMIT_INFO = "
|
|
7
|
-
export declare const CLI_VERSION = "0.24.0
|
|
6
|
+
export declare const GIT_COMMIT_INFO = "21affff64";
|
|
7
|
+
export declare const CLI_VERSION = "0.24.0";
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
*/
|
|
6
6
|
// This file is auto-generated by the build script (scripts/generate-git-commit-info.js)
|
|
7
7
|
// Do not edit this file manually.
|
|
8
|
-
export const GIT_COMMIT_INFO = '
|
|
9
|
-
export const CLI_VERSION = '0.24.0
|
|
8
|
+
export const GIT_COMMIT_INFO = '21affff64';
|
|
9
|
+
export const CLI_VERSION = '0.24.0';
|
|
10
10
|
//# sourceMappingURL=git-commit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-commit.js","sourceRoot":"","sources":["../../../src/generated/git-commit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wFAAwF;AACxF,kCAAkC;AAClC,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,CAAC,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"git-commit.js","sourceRoot":"","sources":["../../../src/generated/git-commit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wFAAwF;AACxF,kCAAkC;AAClC,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC"}
|