@google/gemini-cli-core 0.61.0-preview.0 → 0.62.0-nightly.20260916.g6a466a7e2
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/changelogs/index.md +14 -0
- package/dist/docs/changelogs/latest.md +55 -21
- package/dist/docs/changelogs/preview.md +30 -54
- package/dist/google-gemini-cli-core-0.62.0-nightly.20260915.gae28844fb.tgz +0 -0
- 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/tools/mcp-tool.d.ts +16 -0
- package/dist/src/tools/mcp-tool.js +110 -20
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/mcp-tool.test.js +41 -10
- package/dist/src/tools/mcp-tool.test.js.map +1 -1
- package/dist/src/tools/tool-registry.js +8 -3
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +8 -4
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -18,6 +18,20 @@ on GitHub.
|
|
|
18
18
|
| [Preview](preview.md) | Experimental features ready for early feedback. |
|
|
19
19
|
| [Stable](latest.md) | Stable, recommended for general use. |
|
|
20
20
|
|
|
21
|
+
## Announcements: v0.60.0 - 2026-09-15
|
|
22
|
+
|
|
23
|
+
- **Extension & Tool Safety Hardening:** Prompt for user consent on environment
|
|
24
|
+
changes and sanitize runtime-altering environment variables, while enforcing
|
|
25
|
+
envelope metadata provenance for untrusted tool outputs
|
|
26
|
+
([#28863](https://github.com/google-gemini/gemini-cli/pull/28863) by
|
|
27
|
+
@amelidev, [#29215](https://github.com/google-gemini/gemini-cli/pull/29215) by
|
|
28
|
+
@luisfelipe-alt).
|
|
29
|
+
- **Sandbox Directory Isolation:** Isolated settings and temporary directories
|
|
30
|
+
inside sandbox containers, including the macOS Seatbelt sandbox
|
|
31
|
+
([#29171](https://github.com/google-gemini/gemini-cli/pull/29171),
|
|
32
|
+
[#29216](https://github.com/google-gemini/gemini-cli/pull/29216) by
|
|
33
|
+
@jvargassanchez-dot).
|
|
34
|
+
|
|
21
35
|
## Announcements: v0.59.0 - 2026-09-08
|
|
22
36
|
|
|
23
37
|
- **MCP OAuth SSRF Mitigation:** Prevented Server-Side Request Forgery (SSRF)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Latest stable release: v0.
|
|
1
|
+
# Latest stable release: v0.60.0
|
|
2
2
|
|
|
3
|
-
Released: September
|
|
3
|
+
Released: September 15, 2026
|
|
4
4
|
|
|
5
5
|
For most users, our latest stable release is the recommended release. Install
|
|
6
6
|
the latest stable version with:
|
|
@@ -11,28 +11,62 @@ npm install -g @google/gemini-cli
|
|
|
11
11
|
|
|
12
12
|
## Highlights
|
|
13
13
|
|
|
14
|
-
- **
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
- **Extension Consent & Isolation:** Introduced explicit prompting for user
|
|
15
|
+
consent on environment changes requested by extensions, along with
|
|
16
|
+
sanitization of runtime-altering environment variables to ensure secure
|
|
17
|
+
execution environments.
|
|
18
|
+
- **Sandbox & Directory Hardening:** Isolated the settings directory and
|
|
19
|
+
temporary directories within sandbox containers, including specific path
|
|
20
|
+
isolation enhancements for the macOS Seatbelt sandbox.
|
|
21
|
+
- **Robust Boundary & Path Resolution:** Hardened workspace boundary validation,
|
|
22
|
+
symlink resolution, and NTFS 8.3 short name (SFN) path mitigation across
|
|
23
|
+
command safety and file discovery utilities.
|
|
24
|
+
- **Enhanced API & Connection Security:** Implemented strict RFC 9207 issuer
|
|
25
|
+
identification in the Model Context Protocol (MCP) OAuth flow, along with
|
|
26
|
+
improved destination validation and connection routing inside web fetch
|
|
27
|
+
utilities.
|
|
22
28
|
|
|
23
29
|
## What's Changed
|
|
24
30
|
|
|
25
|
-
-
|
|
26
|
-
|
|
27
|
-
|
|
31
|
+
- fix(core): improve destination validation and connection routing in web fetch
|
|
32
|
+
utilities by @diegogodinezr in
|
|
33
|
+
[#29120](https://github.com/google-gemini/gemini-cli/pull/29120)
|
|
34
|
+
- fix(core): enforce RFC 9207 issuer identification in MCP OAuth flow by
|
|
35
|
+
@jvargassanchez-dot in
|
|
36
|
+
[#29117](https://github.com/google-gemini/gemini-cli/pull/29117)
|
|
37
|
+
- chore(release): bump version to 0.60.0-nightly.20260901.g0bd1d4397 by
|
|
28
38
|
@gemini-cli-robot in
|
|
29
|
-
[#
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
|
|
39
|
+
[#29162](https://github.com/google-gemini/gemini-cli/pull/29162)
|
|
40
|
+
- Changelog for v0.58.0 by @gemini-cli-robot in
|
|
41
|
+
[#29161](https://github.com/google-gemini/gemini-cli/pull/29161)
|
|
42
|
+
- fix(cli): isolate temporary directory for macOS Seatbelt sandbox by
|
|
43
|
+
@jvargassanchez-dot in
|
|
44
|
+
[#29171](https://github.com/google-gemini/gemini-cli/pull/29171)
|
|
45
|
+
- feat(extensions): harden path resolution and boundary validation in extension
|
|
46
|
+
loader by @diegogodinezr in
|
|
47
|
+
[#29169](https://github.com/google-gemini/gemini-cli/pull/29169)
|
|
48
|
+
- Changelog for v0.59.0-preview.0 by @gemini-cli-robot in
|
|
49
|
+
[#29159](https://github.com/google-gemini/gemini-cli/pull/29159)
|
|
50
|
+
- fix(core): sanitize and remove hardcoded Google CrUX API key in
|
|
51
|
+
chrome-devtools-mcp by @amelidev in
|
|
52
|
+
[#29158](https://github.com/google-gemini/gemini-cli/pull/29158)
|
|
53
|
+
- fix(extensions): prompt for consent on environment changes and sanitize
|
|
54
|
+
runtime-altering environment variables by @amelidev in
|
|
55
|
+
[#28863](https://github.com/google-gemini/gemini-cli/pull/28863)
|
|
56
|
+
- fix(core): enhance workspace path boundary checks and symlink resolution in
|
|
57
|
+
command safety and file discovery by @jesussamuel-byte in
|
|
58
|
+
[#29170](https://github.com/google-gemini/gemini-cli/pull/29170)
|
|
59
|
+
- fix(config): enforce strict permission and ownership checks on system-wide
|
|
60
|
+
configuration paths by @jesussamuel-byte in
|
|
61
|
+
[#29115](https://github.com/google-gemini/gemini-cli/pull/29115)
|
|
62
|
+
- fix(core): mitigate NTFS 8.3 short name (SFN) path by @urielefrenvirtusa in
|
|
63
|
+
[#29116](https://github.com/google-gemini/gemini-cli/pull/29116)
|
|
64
|
+
- fix(cli): isolate settings directory in sandbox containers by
|
|
65
|
+
@jvargassanchez-dot in
|
|
66
|
+
[#29216](https://github.com/google-gemini/gemini-cli/pull/29216)
|
|
67
|
+
- fix(core): enforce envelope metadata provenance for untrusted tool outputs by
|
|
68
|
+
@luisfelipe-alt in
|
|
69
|
+
[#29215](https://github.com/google-gemini/gemini-cli/pull/29215)
|
|
36
70
|
|
|
37
71
|
**Full Changelog**:
|
|
38
|
-
https://github.com/google-gemini/gemini-cli/compare/v0.
|
|
72
|
+
https://github.com/google-gemini/gemini-cli/compare/v0.59.0...v0.60.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Preview release: v0.
|
|
1
|
+
# Preview release: v0.61.0-preview.0
|
|
2
2
|
|
|
3
|
-
Released: September
|
|
3
|
+
Released: September 15, 2026
|
|
4
4
|
|
|
5
5
|
Our preview release includes the latest, new, and experimental features. This
|
|
6
6
|
release may not be as stable as our [latest weekly release](latest.md).
|
|
@@ -13,61 +13,37 @@ npm install -g @google/gemini-cli@preview
|
|
|
13
13
|
|
|
14
14
|
## Highlights
|
|
15
15
|
|
|
16
|
-
- **
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
- **
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
the MCP OAuth flow.
|
|
27
|
-
- **Tool Output Provenance**: Enforced envelope metadata provenance for
|
|
28
|
-
untrusted tool outputs to guarantee integrity.
|
|
16
|
+
- **Sandbox Isolation**: Enhanced filesystem boundaries and isolated runtime
|
|
17
|
+
state within the sandbox environments to restrict untrusted execution.
|
|
18
|
+
- **Prompt Injection Defense**: Prevented potential indirect prompt injection
|
|
19
|
+
vulnerabilities related to build file modifications and untrusted command
|
|
20
|
+
flags.
|
|
21
|
+
- **Flash Model ID Preservation**: Fixed core logic to properly preserve
|
|
22
|
+
explicit, versioned Flash model IDs without overriding them.
|
|
23
|
+
- **Agent Loop Reliability**: Resolved an issue where crucial `AgentLoopContext`
|
|
24
|
+
properties were discarded during object spread, stabilizing the main agent
|
|
25
|
+
loop.
|
|
29
26
|
|
|
30
27
|
## What's Changed
|
|
31
28
|
|
|
32
|
-
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
- fix(core): enforce RFC 9207 issuer identification in MCP OAuth flow by
|
|
36
|
-
@jvargassanchez-dot in
|
|
37
|
-
[#29117](https://github.com/google-gemini/gemini-cli/pull/29117)
|
|
38
|
-
- chore(release): bump version to 0.60.0-nightly.20260901.g0bd1d4397 by
|
|
29
|
+
- Changelog for v0.60.0-preview.0 by @gemini-cli-robot in
|
|
30
|
+
[#29251](https://github.com/google-gemini/gemini-cli/pull/29251)
|
|
31
|
+
- chore(release): bump version to 0.61.0-nightly.20260908.gc647533d6 by
|
|
39
32
|
@gemini-cli-robot in
|
|
40
|
-
[#
|
|
41
|
-
- Changelog for v0.
|
|
42
|
-
[#
|
|
43
|
-
- fix(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
[#
|
|
51
|
-
- fix(core):
|
|
52
|
-
|
|
53
|
-
[#
|
|
54
|
-
- fix(extensions): prompt for consent on environment changes and sanitize
|
|
55
|
-
runtime-altering environment variables by @amelidev in
|
|
56
|
-
[#28863](https://github.com/google-gemini/gemini-cli/pull/28863)
|
|
57
|
-
- fix(core): enhance workspace path boundary checks and symlink resolution in
|
|
58
|
-
command safety and file discovery by @jesussamuel-byte in
|
|
59
|
-
[#29170](https://github.com/google-gemini/gemini-cli/pull/29170)
|
|
60
|
-
- fix(config): enforce strict permission and ownership checks on system-wide
|
|
61
|
-
configuration paths by @jesussamuel-byte in
|
|
62
|
-
[#29115](https://github.com/google-gemini/gemini-cli/pull/29115)
|
|
63
|
-
- fix(core): mitigate NTFS 8.3 short name (SFN) path by @urielefrenvirtusa in
|
|
64
|
-
[#29116](https://github.com/google-gemini/gemini-cli/pull/29116)
|
|
65
|
-
- fix(cli): isolate settings directory in sandbox containers by
|
|
66
|
-
@jvargassanchez-dot in
|
|
67
|
-
[#29216](https://github.com/google-gemini/gemini-cli/pull/29216)
|
|
68
|
-
- fix(core): enforce envelope metadata provenance for untrusted tool outputs by
|
|
69
|
-
@luisfelipe-alt in
|
|
70
|
-
[#29215](https://github.com/google-gemini/gemini-cli/pull/29215)
|
|
33
|
+
[#29254](https://github.com/google-gemini/gemini-cli/pull/29254)
|
|
34
|
+
- Changelog for v0.59.0 by @gemini-cli-robot in
|
|
35
|
+
[#29253](https://github.com/google-gemini/gemini-cli/pull/29253)
|
|
36
|
+
- fix(core): preserve explicit versioned Flash model IDs by @SandyTao520 in
|
|
37
|
+
[#29252](https://github.com/google-gemini/gemini-cli/pull/29252)
|
|
38
|
+
- fix(core): prevent indirect prompt injection via build file modifications and
|
|
39
|
+
untrusted flags by @villahernandez-coder in
|
|
40
|
+
[#29250](https://github.com/google-gemini/gemini-cli/pull/29250)
|
|
41
|
+
- fix(sandbox): harden filesystem boundaries and isolate runtime state by
|
|
42
|
+
@diegogodinezr in
|
|
43
|
+
[#29214](https://github.com/google-gemini/gemini-cli/pull/29214)
|
|
44
|
+
- fix(core): ensure AgentLoopContext properties are preserved across object
|
|
45
|
+
spread by @diegogodinezr in
|
|
46
|
+
[#29335](https://github.com/google-gemini/gemini-cli/pull/29335)
|
|
71
47
|
|
|
72
48
|
**Full Changelog**:
|
|
73
|
-
https://github.com/google-gemini/gemini-cli/compare/v0.
|
|
49
|
+
https://github.com/google-gemini/gemini-cli/compare/v0.60.0-preview.0...v0.61.0-preview.0
|
|
@@ -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.
|
|
6
|
+
export declare const GIT_COMMIT_INFO = "6a466a7e2";
|
|
7
|
+
export declare const CLI_VERSION = "0.62.0-nightly.20260916.g6a466a7e2";
|
|
@@ -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.
|
|
8
|
+
export const GIT_COMMIT_INFO = '6a466a7e2';
|
|
9
|
+
export const CLI_VERSION = '0.62.0-nightly.20260916.g6a466a7e2';
|
|
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,oCAAoC,CAAC"}
|
|
@@ -52,6 +52,22 @@ export interface McpToolAnnotation extends Record<string, unknown> {
|
|
|
52
52
|
*/
|
|
53
53
|
export declare function isMcpToolAnnotation(annotation: unknown): annotation is McpToolAnnotation;
|
|
54
54
|
type ToolParams = Record<string, unknown>;
|
|
55
|
+
/**
|
|
56
|
+
* Formats tool parameters into a human-readable function signature or raw command,
|
|
57
|
+
* excluding conversational/explanatory parameters and avoiding raw JSON braces.
|
|
58
|
+
*/
|
|
59
|
+
export declare function formatToolDescription(toolName: string, fallbackDisplayName: string | undefined, params: Record<string, unknown>): string;
|
|
60
|
+
/**
|
|
61
|
+
* Formats a clean title for UI/ACP display. If a `command` parameter is present,
|
|
62
|
+
* returns strictly the raw executable command so IDE clients can syntax-highlight it.
|
|
63
|
+
* Otherwise, returns the formatted function signature.
|
|
64
|
+
*/
|
|
65
|
+
export declare function formatToolDisplayTitle(toolName: string, fallbackDisplayName: string | undefined, params: Record<string, unknown>): string;
|
|
66
|
+
/**
|
|
67
|
+
* Extracts conversational/explanatory text (and non-command contextual parameters
|
|
68
|
+
* when a command is present) so explanations travel in ACP content blocks.
|
|
69
|
+
*/
|
|
70
|
+
export declare function extractToolExplanation(params: Record<string, unknown>): string;
|
|
55
71
|
export declare class DiscoveredMCPToolInvocation extends BaseToolInvocation<ToolParams, ToolResult> {
|
|
56
72
|
private readonly mcpTool;
|
|
57
73
|
readonly serverName: string;
|
|
@@ -81,6 +81,113 @@ export function isMcpToolAnnotation(annotation) {
|
|
|
81
81
|
const serverName = record['_serverName'];
|
|
82
82
|
return typeof serverName === 'string';
|
|
83
83
|
}
|
|
84
|
+
const CONVERSATIONAL_PARAM_KEYS = new Set([
|
|
85
|
+
'description',
|
|
86
|
+
'explanation',
|
|
87
|
+
'reason',
|
|
88
|
+
'thought',
|
|
89
|
+
]);
|
|
90
|
+
function formatParamValue(value) {
|
|
91
|
+
if (value === null || value === undefined) {
|
|
92
|
+
return String(value);
|
|
93
|
+
}
|
|
94
|
+
if (typeof value === 'string') {
|
|
95
|
+
return value;
|
|
96
|
+
}
|
|
97
|
+
if (typeof value === 'number' ||
|
|
98
|
+
typeof value === 'boolean' ||
|
|
99
|
+
typeof value === 'bigint') {
|
|
100
|
+
return String(value);
|
|
101
|
+
}
|
|
102
|
+
if (Array.isArray(value)) {
|
|
103
|
+
return `[${value.map(formatParamValue).join(', ')}]`;
|
|
104
|
+
}
|
|
105
|
+
if (typeof value === 'object') {
|
|
106
|
+
const entries = Object.entries(value)
|
|
107
|
+
.filter(([, v]) => v !== undefined)
|
|
108
|
+
.map(([k, v]) => `${k}: ${formatParamValue(v)}`);
|
|
109
|
+
return `(${entries.join(', ')})`;
|
|
110
|
+
}
|
|
111
|
+
return String(value);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Formats tool parameters into a human-readable function signature or raw command,
|
|
115
|
+
* excluding conversational/explanatory parameters and avoiding raw JSON braces.
|
|
116
|
+
*/
|
|
117
|
+
export function formatToolDescription(toolName, fallbackDisplayName, params) {
|
|
118
|
+
const functionalEntries = Object.entries(params).filter(([key, val]) => !CONVERSATIONAL_PARAM_KEYS.has(key.toLowerCase()) && val !== undefined);
|
|
119
|
+
const command = params['command'];
|
|
120
|
+
if (typeof command === 'string' &&
|
|
121
|
+
functionalEntries.length === 1 &&
|
|
122
|
+
functionalEntries[0]?.[0] === 'command') {
|
|
123
|
+
return command;
|
|
124
|
+
}
|
|
125
|
+
if (functionalEntries.length === 0) {
|
|
126
|
+
return fallbackDisplayName || toolName;
|
|
127
|
+
}
|
|
128
|
+
const formattedArgs = functionalEntries
|
|
129
|
+
.map(([key, val]) => `${key}: ${formatParamValue(val)}`)
|
|
130
|
+
.join(', ');
|
|
131
|
+
return `${toolName}(${formattedArgs})`;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Formats a clean title for UI/ACP display. If a `command` parameter is present,
|
|
135
|
+
* returns strictly the raw executable command so IDE clients can syntax-highlight it.
|
|
136
|
+
* Otherwise, returns the formatted function signature.
|
|
137
|
+
*/
|
|
138
|
+
export function formatToolDisplayTitle(toolName, fallbackDisplayName, params) {
|
|
139
|
+
const command = params['command'];
|
|
140
|
+
if (typeof command === 'string' && command.trim().length > 0) {
|
|
141
|
+
return command;
|
|
142
|
+
}
|
|
143
|
+
return formatToolDescription(toolName, fallbackDisplayName, params);
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Extracts conversational/explanatory text (and non-command contextual parameters
|
|
147
|
+
* when a command is present) so explanations travel in ACP content blocks.
|
|
148
|
+
*/
|
|
149
|
+
export function extractToolExplanation(params) {
|
|
150
|
+
const MAX_EXPLANATION_LENGTH = 500;
|
|
151
|
+
const parts = [];
|
|
152
|
+
const command = params['command'];
|
|
153
|
+
const hasCommand = typeof command === 'string' && command.trim().length > 0;
|
|
154
|
+
if (hasCommand) {
|
|
155
|
+
const contextEntries = Object.entries(params).filter(([key, val]) => key !== 'command' &&
|
|
156
|
+
!CONVERSATIONAL_PARAM_KEYS.has(key.toLowerCase()) &&
|
|
157
|
+
val !== undefined);
|
|
158
|
+
if (contextEntries.length > 0) {
|
|
159
|
+
const formattedContext = contextEntries
|
|
160
|
+
.map(([key, val]) => `${key}: ${formatParamValue(val)}`)
|
|
161
|
+
.join(', ');
|
|
162
|
+
if (formattedContext.length > MAX_EXPLANATION_LENGTH) {
|
|
163
|
+
const keys = Object.keys(params);
|
|
164
|
+
const displayedKeys = keys.slice(0, 5);
|
|
165
|
+
const keysDesc = displayedKeys.length > 0
|
|
166
|
+
? ` with parameters: ${displayedKeys.join(', ')}${keys.length > 5 ? ', ...' : ''}`
|
|
167
|
+
: '';
|
|
168
|
+
parts.push(`[Payload omitted due to length${keysDesc}]`);
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
parts.push(`[${formattedContext}]`);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
for (const [key, val] of Object.entries(params)) {
|
|
176
|
+
if (CONVERSATIONAL_PARAM_KEYS.has(key.toLowerCase()) &&
|
|
177
|
+
typeof val === 'string' &&
|
|
178
|
+
val.trim().length > 0) {
|
|
179
|
+
parts.push(val.trim());
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if (parts.length === 0) {
|
|
183
|
+
return '';
|
|
184
|
+
}
|
|
185
|
+
const combined = parts.join(' ');
|
|
186
|
+
if (combined.length > MAX_EXPLANATION_LENGTH) {
|
|
187
|
+
return `${combined.slice(0, MAX_EXPLANATION_LENGTH)}...`;
|
|
188
|
+
}
|
|
189
|
+
return combined;
|
|
190
|
+
}
|
|
84
191
|
export class DiscoveredMCPToolInvocation extends BaseToolInvocation {
|
|
85
192
|
mcpTool;
|
|
86
193
|
serverName;
|
|
@@ -223,30 +330,13 @@ export class DiscoveredMCPToolInvocation extends BaseToolInvocation {
|
|
|
223
330
|
};
|
|
224
331
|
}
|
|
225
332
|
getDescription() {
|
|
226
|
-
return
|
|
333
|
+
return formatToolDescription(this.serverToolName, this.displayName, this.params);
|
|
227
334
|
}
|
|
228
335
|
getDisplayTitle() {
|
|
229
|
-
|
|
230
|
-
// and a command argument is present, return just the command.
|
|
231
|
-
const command = this.params['command'];
|
|
232
|
-
if (typeof command === 'string') {
|
|
233
|
-
return command;
|
|
234
|
-
}
|
|
235
|
-
// Otherwise fallback to the display name or server tool name
|
|
236
|
-
return this.displayName || this.serverToolName;
|
|
336
|
+
return formatToolDisplayTitle(this.serverToolName, this.displayName, this.params);
|
|
237
337
|
}
|
|
238
338
|
getExplanation() {
|
|
239
|
-
|
|
240
|
-
const stringified = safeJsonStringify(this.params);
|
|
241
|
-
if (stringified.length > MAX_EXPLANATION_LENGTH) {
|
|
242
|
-
const keys = Object.keys(this.params);
|
|
243
|
-
const displayedKeys = keys.slice(0, 5);
|
|
244
|
-
const keysDesc = displayedKeys.length > 0
|
|
245
|
-
? ` with parameters: ${displayedKeys.join(', ')}${keys.length > 5 ? ', ...' : ''}`
|
|
246
|
-
: '';
|
|
247
|
-
return `[Payload omitted due to length${keysDesc}]`;
|
|
248
|
-
}
|
|
249
|
-
return stringified;
|
|
339
|
+
return extractToolExplanation(this.params);
|
|
250
340
|
}
|
|
251
341
|
}
|
|
252
342
|
export class DiscoveredMCPTool extends BaseDeclarativeTool {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-tool.js","sourceRoot":"","sources":["../../../src/tools/mcp-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,25 +116,56 @@ describe('DiscoveredMCPTool', () => {
|
|
|
116
116
|
properties: { command: { type: 'string' }, path: { type: 'string' } },
|
|
117
117
|
required: ['command'],
|
|
118
118
|
}, createMockMessageBus(), undefined, undefined, undefined, undefined, undefined, undefined);
|
|
119
|
-
it('should return command as title if
|
|
119
|
+
it('should return command as title if command is the sole functional parameter', () => {
|
|
120
120
|
const invocation = commandTool.build({ command: 'ls -la' });
|
|
121
121
|
expect(invocation.getDisplayTitle?.()).toBe('ls -la');
|
|
122
|
+
expect(invocation.getDescription()).toBe('ls -la');
|
|
123
|
+
expect(invocation.getExplanation?.()).toBe('');
|
|
122
124
|
});
|
|
123
|
-
it('should return
|
|
125
|
+
it('should return strictly command for getDisplayTitle and clean signature for getDescription when multiple functional parameters exist', () => {
|
|
126
|
+
const invocation = commandTool.build({
|
|
127
|
+
command: 'date',
|
|
128
|
+
projectPath: '/path/to/project',
|
|
129
|
+
});
|
|
130
|
+
expect(invocation.getDisplayTitle?.()).toBe('date');
|
|
131
|
+
expect(invocation.getDescription()).toBe(`${serverToolName}(command: date, projectPath: /path/to/project)`);
|
|
132
|
+
expect(invocation.getExplanation?.()).toBe('[projectPath: /path/to/project]');
|
|
133
|
+
});
|
|
134
|
+
it('should segregate conversational parameters into getExplanation and exclude them from title', () => {
|
|
135
|
+
const invocation = commandTool.build({
|
|
136
|
+
command: 'date',
|
|
137
|
+
projectPath: '/path/to/project',
|
|
138
|
+
description: 'I will now run date to check the system clock',
|
|
139
|
+
});
|
|
140
|
+
expect(invocation.getDisplayTitle?.()).toBe('date');
|
|
141
|
+
expect(invocation.getDescription()).toBe(`${serverToolName}(command: date, projectPath: /path/to/project)`);
|
|
142
|
+
expect(invocation.getDescription()).not.toContain('{');
|
|
143
|
+
expect(invocation.getDescription()).not.toContain('I will now run');
|
|
144
|
+
expect(invocation.getExplanation?.()).toBe('[projectPath: /path/to/project] I will now run date to check the system clock');
|
|
145
|
+
});
|
|
146
|
+
it('should return function signature if command does not exist', () => {
|
|
124
147
|
const invocation = tool.build({ param: 'testValue' });
|
|
125
|
-
expect(invocation.getDisplayTitle?.()).toBe(
|
|
148
|
+
expect(invocation.getDisplayTitle?.()).toBe(`${serverToolName}(param: testValue)`);
|
|
126
149
|
});
|
|
127
|
-
it('should return
|
|
128
|
-
const
|
|
150
|
+
it('should return fallback displayName when no functional parameters exist', () => {
|
|
151
|
+
const noParamTool = new DiscoveredMCPTool(mockCallableToolInstance, serverName, serverToolName, baseDescription, { type: 'object', properties: {} }, createMockMessageBus());
|
|
152
|
+
const invocation = noParamTool.build({});
|
|
153
|
+
expect(invocation.getDisplayTitle?.()).toBe(noParamTool.displayName);
|
|
154
|
+
});
|
|
155
|
+
it('should truncate long conversational explanations for getExplanation', () => {
|
|
156
|
+
const longString = 'a'.repeat(600);
|
|
157
|
+
const params = { command: 'echo', description: longString };
|
|
129
158
|
const invocation = commandTool.build(params);
|
|
130
|
-
|
|
159
|
+
const explanation = invocation.getExplanation?.() ?? '';
|
|
160
|
+
expect(explanation).toHaveLength(503);
|
|
161
|
+
expect(explanation.endsWith('...')).toBe(true);
|
|
131
162
|
});
|
|
132
|
-
it('should truncate and summarize long
|
|
163
|
+
it('should truncate and summarize long contextual payloads for getExplanation (PR #23179 compatibility)', () => {
|
|
133
164
|
const longString = 'a'.repeat(600);
|
|
134
165
|
const params = { command: 'echo', text: longString, other: 'value' };
|
|
135
166
|
const invocation = commandTool.build(params);
|
|
136
167
|
const explanation = invocation.getExplanation?.() ?? '';
|
|
137
|
-
expect(explanation).
|
|
168
|
+
expect(explanation).toBe('[Payload omitted due to length with parameters: command, text, other]');
|
|
138
169
|
});
|
|
139
170
|
});
|
|
140
171
|
describe('execute', () => {
|
|
@@ -751,11 +782,11 @@ describe('DiscoveredMCPTool', () => {
|
|
|
751
782
|
});
|
|
752
783
|
});
|
|
753
784
|
describe('DiscoveredMCPToolInvocation', () => {
|
|
754
|
-
it('should return
|
|
785
|
+
it('should return clean function signature from getDescription', () => {
|
|
755
786
|
const params = { param: 'testValue', param2: 'anotherOne' };
|
|
756
787
|
const invocation = tool.build(params);
|
|
757
788
|
const description = invocation.getDescription();
|
|
758
|
-
expect(description).toBe(
|
|
789
|
+
expect(description).toBe(`${serverToolName}(param: testValue, param2: anotherOne)`);
|
|
759
790
|
});
|
|
760
791
|
it('should wrap text output in <untrusted_context> tags', async () => {
|
|
761
792
|
const params = { param: 'testValue' };
|