@google/gemini-cli-core 0.23.0-preview.3 → 0.24.0-nightly.20251227.37be16243
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/docs/cli/settings.md +7 -5
- package/dist/docs/get-started/configuration.md +67 -0
- package/dist/google-gemini-cli-core-0.24.0-nightly.20251226.546baf993.tgz +0 -0
- package/dist/src/agents/a2a-client-manager.d.ts +73 -0
- package/dist/src/agents/a2a-client-manager.js +165 -0
- package/dist/src/agents/a2a-client-manager.js.map +1 -0
- package/dist/src/agents/a2a-client-manager.test.d.ts +6 -0
- package/dist/src/agents/a2a-client-manager.test.js +211 -0
- package/dist/src/agents/a2a-client-manager.test.js.map +1 -0
- package/dist/src/agents/local-executor.js +1 -0
- package/dist/src/agents/local-executor.js.map +1 -1
- package/dist/src/availability/policyHelpers.js +0 -2
- package/dist/src/availability/policyHelpers.js.map +1 -1
- package/dist/src/code_assist/server.js +7 -2
- package/dist/src/code_assist/server.js.map +1 -1
- package/dist/src/code_assist/server.test.js +3 -0
- package/dist/src/code_assist/server.test.js.map +1 -1
- package/dist/src/config/config.d.ts +25 -4
- package/dist/src/config/config.js +37 -6
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +18 -0
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/models.d.ts +1 -9
- package/dist/src/config/models.js +1 -11
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +16 -16
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/core/client.d.ts +1 -1
- package/dist/src/core/client.js +3 -3
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/contentGenerator.js +2 -2
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +5 -85
- package/dist/src/core/coreToolScheduler.js +13 -184
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +18 -365
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/turn.d.ts +3 -21
- package/dist/src/core/turn.js +1 -0
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/fallback/handler.js +0 -6
- package/dist/src/fallback/handler.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/hooks/hookPlanner.d.ts +1 -5
- package/dist/src/hooks/hookPlanner.js +2 -9
- package/dist/src/hooks/hookPlanner.js.map +1 -1
- package/dist/src/hooks/hookPlanner.test.js +1 -2
- package/dist/src/hooks/hookPlanner.test.js.map +1 -1
- package/dist/src/hooks/hookRegistry.d.ts +5 -10
- package/dist/src/hooks/hookRegistry.js +39 -12
- package/dist/src/hooks/hookRegistry.js.map +1 -1
- package/dist/src/hooks/hookRegistry.test.js +93 -2
- package/dist/src/hooks/hookRegistry.test.js.map +1 -1
- package/dist/src/hooks/hookRunner.d.ts +3 -1
- package/dist/src/hooks/hookRunner.js +20 -3
- package/dist/src/hooks/hookRunner.js.map +1 -1
- package/dist/src/hooks/hookRunner.test.js +58 -2
- package/dist/src/hooks/hookRunner.test.js.map +1 -1
- package/dist/src/hooks/hookSystem.js +1 -1
- package/dist/src/hooks/hookSystem.js.map +1 -1
- package/dist/src/hooks/index.d.ts +1 -1
- package/dist/src/hooks/index.js +1 -1
- package/dist/src/hooks/index.js.map +1 -1
- package/dist/src/hooks/trustedHooks.d.ts +28 -0
- package/dist/src/hooks/trustedHooks.js +90 -0
- package/dist/src/hooks/trustedHooks.js.map +1 -0
- package/dist/src/hooks/trustedHooks.test.d.ts +6 -0
- package/dist/src/hooks/trustedHooks.test.js +154 -0
- package/dist/src/hooks/trustedHooks.test.js.map +1 -0
- package/dist/src/hooks/types.d.ts +15 -11
- package/dist/src/hooks/types.js +19 -30
- package/dist/src/hooks/types.js.map +1 -1
- package/dist/src/hooks/types.test.js +1 -24
- package/dist/src/hooks/types.test.js.map +1 -1
- package/dist/src/ide/ide-client.js +3 -0
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/policy/config.js +2 -1
- package/dist/src/policy/config.js.map +1 -1
- package/dist/src/policy/persistence.test.js +6 -1
- package/dist/src/policy/persistence.test.js.map +1 -1
- package/dist/src/policy/policy-engine.d.ts +10 -1
- package/dist/src/policy/policy-engine.js +24 -4
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +26 -2
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/shell-safety.test.js +2 -1
- package/dist/src/policy/shell-safety.test.js.map +1 -1
- package/dist/src/policy/toml-loader.d.ts +3 -5
- package/dist/src/policy/toml-loader.js +35 -20
- package/dist/src/policy/toml-loader.js.map +1 -1
- package/dist/src/policy/toml-loader.test.js +28 -7
- package/dist/src/policy/toml-loader.test.js.map +1 -1
- package/dist/src/policy/types.d.ts +15 -0
- package/dist/src/routing/strategies/overrideStrategy.js +2 -2
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/scheduler/types.d.ts +95 -0
- package/dist/src/scheduler/types.js +7 -0
- package/dist/src/scheduler/types.js.map +1 -0
- package/dist/src/services/environmentSanitization.d.ts +15 -0
- package/dist/src/services/environmentSanitization.js +141 -0
- package/dist/src/services/environmentSanitization.js.map +1 -0
- package/dist/src/services/environmentSanitization.test.d.ts +6 -0
- package/dist/src/services/environmentSanitization.test.js +284 -0
- package/dist/src/services/environmentSanitization.test.js.map +1 -0
- package/dist/src/services/gitService.js +10 -1
- package/dist/src/services/gitService.js.map +1 -1
- package/dist/src/services/gitService.test.js +18 -0
- package/dist/src/services/gitService.test.js.map +1 -1
- package/dist/src/services/shellExecutionService.d.ts +2 -0
- package/dist/src/services/shellExecutionService.js +5 -65
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +26 -3
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +1 -0
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +3 -2
- package/dist/src/tools/mcp-client.js +7 -6
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +47 -42
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/shell.js +6 -1
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/tools.d.ts +1 -1
- package/dist/src/tools/tools.js +1 -1
- package/dist/src/utils/checkpointUtils.d.ts +1 -1
- package/dist/src/utils/fileUtils.d.ts +4 -0
- package/dist/src/utils/fileUtils.js +53 -0
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +112 -1
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/generateContentResponseUtilities.d.ts +2 -1
- package/dist/src/utils/generateContentResponseUtilities.js +96 -0
- package/dist/src/utils/generateContentResponseUtilities.js.map +1 -1
- package/dist/src/utils/generateContentResponseUtilities.test.js +221 -1
- package/dist/src/utils/generateContentResponseUtilities.test.js.map +1 -1
- package/dist/src/utils/terminal.d.ts +2 -0
- package/dist/src/utils/terminal.js +6 -0
- package/dist/src/utils/terminal.js.map +1 -1
- package/dist/src/utils/tool-utils.d.ts +9 -0
- package/dist/src/utils/tool-utils.js +29 -0
- package/dist/src/utils/tool-utils.js.map +1 -1
- package/dist/src/utils/tool-utils.test.js +15 -1
- package/dist/src/utils/tool-utils.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
- package/dist/google-gemini-cli-core-0.23.0-preview.2.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../../src/utils/terminal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,UAAU,iBAAiB;IAC/B,wCAAwC;IACxC,iEAAiE;IACjE,gEAAgE;IAChE,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,yCAAyC;IACzC,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,aAAa,CAAC,aAAa,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,aAAa,CAAC,aAAa,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,kBAA2B,EAC3B,cAAuB;IAEvB,OAAO,kBAAkB,IAAI,CAAC,cAAc,CAAC;AAC/C,CAAC"}
|
|
1
|
+
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../../src/utils/terminal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,UAAU,iBAAiB;IAC/B,wCAAwC;IACxC,iEAAiE;IACjE,gEAAgE;IAChE,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,yCAAyC;IACzC,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,aAAa,CAAC,YAAY,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,aAAa,CAAC,YAAY,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,aAAa,CAAC,aAAa,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,aAAa,CAAC,aAAa,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,kBAA2B,EAC3B,cAAuB;IAEvB,OAAO,kBAAkB,IAAI,CAAC,cAAc,CAAC;AAC/C,CAAC"}
|
|
@@ -4,6 +4,15 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import type { AnyDeclarativeTool, AnyToolInvocation } from '../index.js';
|
|
7
|
+
/**
|
|
8
|
+
* Generates a suggestion string for a tool name that was not found in the registry.
|
|
9
|
+
* It finds the closest matches based on Levenshtein distance.
|
|
10
|
+
* @param unknownToolName The tool name that was not found.
|
|
11
|
+
* @param allToolNames The list of all available tool names.
|
|
12
|
+
* @param topN The number of suggestions to return. Defaults to 3.
|
|
13
|
+
* @returns A suggestion string like " Did you mean 'tool'?" or " Did you mean one of: 'tool1', 'tool2'?", or an empty string if no suggestions are found.
|
|
14
|
+
*/
|
|
15
|
+
export declare function getToolSuggestion(unknownToolName: string, allToolNames: string[], topN?: number): string;
|
|
7
16
|
/**
|
|
8
17
|
* Checks if a tool invocation matches any of a list of patterns.
|
|
9
18
|
*
|
|
@@ -5,6 +5,35 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { isTool } from '../index.js';
|
|
7
7
|
import { SHELL_TOOL_NAMES } from './shell-utils.js';
|
|
8
|
+
import levenshtein from 'fast-levenshtein';
|
|
9
|
+
/**
|
|
10
|
+
* Generates a suggestion string for a tool name that was not found in the registry.
|
|
11
|
+
* It finds the closest matches based on Levenshtein distance.
|
|
12
|
+
* @param unknownToolName The tool name that was not found.
|
|
13
|
+
* @param allToolNames The list of all available tool names.
|
|
14
|
+
* @param topN The number of suggestions to return. Defaults to 3.
|
|
15
|
+
* @returns A suggestion string like " Did you mean 'tool'?" or " Did you mean one of: 'tool1', 'tool2'?", or an empty string if no suggestions are found.
|
|
16
|
+
*/
|
|
17
|
+
export function getToolSuggestion(unknownToolName, allToolNames, topN = 3) {
|
|
18
|
+
const matches = allToolNames.map((toolName) => ({
|
|
19
|
+
name: toolName,
|
|
20
|
+
distance: levenshtein.get(unknownToolName, toolName),
|
|
21
|
+
}));
|
|
22
|
+
matches.sort((a, b) => a.distance - b.distance);
|
|
23
|
+
const topNResults = matches.slice(0, topN);
|
|
24
|
+
if (topNResults.length === 0) {
|
|
25
|
+
return '';
|
|
26
|
+
}
|
|
27
|
+
const suggestedNames = topNResults
|
|
28
|
+
.map((match) => `"${match.name}"`)
|
|
29
|
+
.join(', ');
|
|
30
|
+
if (topNResults.length > 1) {
|
|
31
|
+
return ` Did you mean one of: ${suggestedNames}?`;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
return ` Did you mean ${suggestedNames}?`;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
8
37
|
/**
|
|
9
38
|
* Checks if a tool invocation matches any of a list of patterns.
|
|
10
39
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-utils.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-utils.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,22 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { expect, describe, it } from 'vitest';
|
|
7
|
-
import { doesToolInvocationMatch } from './tool-utils.js';
|
|
7
|
+
import { doesToolInvocationMatch, getToolSuggestion } from './tool-utils.js';
|
|
8
8
|
import { ReadFileTool } from '../tools/read-file.js';
|
|
9
|
+
describe('getToolSuggestion', () => {
|
|
10
|
+
it('should suggest the top N closest tool names for a typo', () => {
|
|
11
|
+
const allToolNames = ['list_files', 'read_file', 'write_file'];
|
|
12
|
+
// Test that the right tool is selected, with only 1 result, for typos
|
|
13
|
+
const misspelledTool = getToolSuggestion('list_fils', allToolNames, 1);
|
|
14
|
+
expect(misspelledTool).toBe(' Did you mean "list_files"?');
|
|
15
|
+
// Test that the right tool is selected, with only 1 result, for prefixes
|
|
16
|
+
const prefixedTool = getToolSuggestion('github.list_files', allToolNames, 1);
|
|
17
|
+
expect(prefixedTool).toBe(' Did you mean "list_files"?');
|
|
18
|
+
// Test that the right tool is first
|
|
19
|
+
const suggestionMultiple = getToolSuggestion('list_fils', allToolNames);
|
|
20
|
+
expect(suggestionMultiple).toBe(' Did you mean one of: "list_files", "read_file", "write_file"?');
|
|
21
|
+
});
|
|
22
|
+
});
|
|
9
23
|
describe('doesToolInvocationMatch', () => {
|
|
10
24
|
it('should not match a partial command prefix', () => {
|
|
11
25
|
const invocation = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-utils.test.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-utils.test.js","sourceRoot":"","sources":["../../../src/utils/tool-utils.test.ts"],"names":[],"mappings":"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"}
|