@google/gemini-cli 0.63.0-preview.0 → 0.64.0-nightly.20261001.gc6bccb7ec
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/bundle/{chunk-EIMVJG2V.js → chunk-2AWGKUBT.js} +1 -1
- package/bundle/{chunk-GRSO6OI3.js → chunk-33M6KTJD.js} +11 -9
- package/bundle/{chunk-2J6RC447.js → chunk-3V7PFNJW.js} +3 -3
- package/bundle/{chunk-NWSCUKK3.js → chunk-5Q2IR4AT.js} +1512 -1317
- package/bundle/{chunk-RXHIISMM.js → chunk-5S3XVXG6.js} +1 -1
- package/bundle/{chunk-R6Q6D3UA.js → chunk-A7EL6FWX.js} +1 -1
- package/bundle/{chunk-UEOEM4H5.js → chunk-AMALQQ3Z.js} +3 -3
- package/bundle/{chunk-EWEUWTBB.js → chunk-CBYMGCHX.js} +75 -60
- package/bundle/{chunk-2NCBQURB.js → chunk-CFKLEVXK.js} +1 -1
- package/bundle/{chunk-RC6VJ6FT.js → chunk-DGM2IXGQ.js} +1 -1
- package/bundle/{chunk-NTWFJ2RF.js → chunk-EUQCH4QF.js} +2 -2
- package/bundle/{chunk-KCB54UJ5.js → chunk-FLYR6TVJ.js} +9279 -16064
- package/bundle/{chunk-H4WLRV6U.js → chunk-FQCPUDNE.js} +2 -2
- package/bundle/{chunk-BVDTRESW.js → chunk-FSELSFI5.js} +1 -1
- package/bundle/{chunk-5VYF5TVF.js → chunk-G4FAHQEH.js} +2 -2
- package/bundle/{chunk-Z5RCAIV5.js → chunk-I5GYMICM.js} +7 -5
- package/bundle/{chunk-JEUVKR2X.js → chunk-IGVQSZBB.js} +3 -3
- package/bundle/{chunk-HBZBBLAV.js → chunk-JMQIN5UZ.js} +1521 -1323
- package/bundle/{chunk-KPPDDNGJ.js → chunk-JW5YA5WN.js} +9 -8
- package/bundle/chunk-KTIX6VY2.js +17446 -0
- package/bundle/{chunk-SNGNFODQ.js → chunk-KUSXLIPR.js} +1 -1
- package/bundle/{chunk-ZDQYLJYN.js → chunk-KVZWFEJY.js} +1 -1
- package/bundle/{chunk-2P4ETAEG.js → chunk-LTM347XQ.js} +1 -1
- package/bundle/chunk-LXT3NLFW.js +118 -0
- package/bundle/chunk-PAWJR2VY.js +1571 -0
- package/bundle/chunk-RVS5CHWO.js +425 -0
- package/bundle/{chunk-B2C7BQ4Z.js → chunk-RW6IRAFG.js} +11 -9
- package/bundle/{chunk-CTL6DZSY.js → chunk-U4667HKR.js} +1 -1
- package/bundle/chunk-WTO5SKFR.js +400730 -0
- package/bundle/chunk-WXSWGEUJ.js +512 -0
- package/bundle/chunk-XKSEOGBW.js +154 -0
- package/bundle/chunk-ZG5IQP2R.js +102953 -0
- package/bundle/{cleanup-EX2L3L3E.js → cleanup-I7CTORMX.js} +2 -2
- package/bundle/{cleanup-IT7XR7KS.js → cleanup-MOFJ6BES.js} +2 -2
- package/bundle/{cleanup-WWLYKZIX.js → cleanup-OAR3IBTA.js} +2 -2
- package/bundle/cleanup-WFLHSVPH.js +32 -0
- package/bundle/{core-GAJB2LOX.js → core-VXMTLS6K.js} +1 -1
- package/bundle/{devtoolsService-TJPENQSW.js → devtoolsService-4QAJJ6WJ.js} +2 -2
- package/bundle/{devtoolsService-S4ZTRGJL.js → devtoolsService-54XKSYYW.js} +4 -3
- package/bundle/{devtoolsService-4YTFHHPN.js → devtoolsService-L6BPP3IA.js} +2 -2
- package/bundle/devtoolsService-LSDQLZ62.js +4359 -0
- package/bundle/{dist-MTMOCTIW.js → dist-BNMP57Q5.js} +1 -1
- package/bundle/{core-D5D4MF5H.js → dist-FJ7DKGAM.js} +1 -1
- package/bundle/dist-U5DFAJ4Y.js +2250 -0
- package/bundle/docs/changelogs/preview.md +54 -65
- package/bundle/{gemini-5T5BS7L7.js → gemini-L553JD26.js} +66 -95
- package/bundle/{gemini-FHORRYHM.js → gemini-LN35PXGR.js} +66 -95
- package/bundle/gemini-VZOPAMKQ.js +17834 -0
- package/bundle/{gemini-UQRS6TBE.js → gemini-W63I3AHM.js} +266 -279
- package/bundle/gemini.js +7 -7
- package/bundle/{interactiveCli-WOM6QZHM.js → interactiveCli-2JCDVYVC.js} +26 -23
- package/bundle/{interactiveCli-I5K7O5Z6.js → interactiveCli-KN6ETEWY.js} +26 -23
- package/bundle/{interactiveCli-5YNYZTMK.js → interactiveCli-N7HBJ434.js} +329 -307
- package/bundle/interactiveCli-TX7INBPE.js +34918 -0
- package/bundle/{liteRtServerManager-EH2L2UVH.js → liteRtServerManager-GIDPQRR4.js} +4 -4
- package/bundle/{liteRtServerManager-ZLIHBLZP.js → liteRtServerManager-NK3OA5CI.js} +4 -4
- package/bundle/{liteRtServerManager-3N5KI6YS.js → liteRtServerManager-NSDSBW7B.js} +4 -4
- package/bundle/liteRtServerManager-PKOODTU4.js +65 -0
- package/bundle/{oauth2-provider-TA2KRXWQ.js → oauth2-provider-DE3RVHTQ.js} +1 -1
- package/bundle/{oauth2-provider-5GFYTXFU.js → oauth2-provider-FDRYB63N.js} +38 -72
- package/bundle/{oauth2-provider-NGSH2JQK.js → oauth2-provider-KMACQ2PX.js} +1 -1
- package/bundle/oauth2-provider-UAZAD3AF.js +235 -0
- package/bundle/{start-M3IUNCYH.js → start-5X2H6QGN.js} +6 -6
- package/bundle/{start-MWDNIQUY.js → start-AMYT67DW.js} +6 -6
- package/bundle/{start-CWI6OP6N.js → start-QYGGE4KC.js} +6 -6
- package/bundle/start-WWUBZPNX.js +18 -0
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require = (await import('node:module')).createRequire(import.meta.url); const __chunk_filename = (await import('node:url')).fileURLToPath(import.meta.url); const __chunk_dirname = (await import('node:path')).dirname(__chunk_filename);
|
|
2
2
|
import {
|
|
3
3
|
runExitCleanup
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-U4667HKR.js";
|
|
5
5
|
import {
|
|
6
6
|
__commonJS,
|
|
7
7
|
__require
|
|
@@ -2,7 +2,7 @@ const require = (await import('node:module')).createRequire(import.meta.url); co
|
|
|
2
2
|
import {
|
|
3
3
|
exitCli,
|
|
4
4
|
require_source
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-LTM347XQ.js";
|
|
6
6
|
import {
|
|
7
7
|
DEFAULT_PORT,
|
|
8
8
|
SERVER_START_WAIT_MS,
|
|
@@ -14,10 +14,10 @@ import {
|
|
|
14
14
|
isServerRunning,
|
|
15
15
|
resolveGemmaConfig,
|
|
16
16
|
writeServerProcessInfo
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-I5GYMICM.js";
|
|
18
18
|
import {
|
|
19
19
|
debugLogger
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-WTO5SKFR.js";
|
|
21
21
|
import {
|
|
22
22
|
__toESM
|
|
23
23
|
} from "./chunk-34MYV7JD.js";
|
|
@@ -2,7 +2,7 @@ const require = (await import('node:module')).createRequire(import.meta.url); co
|
|
|
2
2
|
import {
|
|
3
3
|
exitCli,
|
|
4
4
|
require_source
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-A7EL6FWX.js";
|
|
6
6
|
import {
|
|
7
7
|
AppEvent,
|
|
8
8
|
appEvents
|
|
@@ -63,21 +63,23 @@ import {
|
|
|
63
63
|
stripUnsafeCharacters,
|
|
64
64
|
toCodePoints,
|
|
65
65
|
validateCustomTheme
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-KTIX6VY2.js";
|
|
67
67
|
import {
|
|
68
68
|
isDevelopment
|
|
69
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-EUQCH4QF.js";
|
|
70
70
|
import {
|
|
71
71
|
emptyIcon,
|
|
72
72
|
mapCoreStatusToDisplayStatus,
|
|
73
73
|
require_react
|
|
74
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-WXSWGEUJ.js";
|
|
75
75
|
import {
|
|
76
76
|
ALL_EDITORS,
|
|
77
77
|
ApprovalMode,
|
|
78
78
|
AsyncFzf,
|
|
79
|
+
AuthType,
|
|
79
80
|
Config,
|
|
80
81
|
CoreEvent,
|
|
82
|
+
CoreToolCallStatus,
|
|
81
83
|
DiscoveredMCPTool,
|
|
82
84
|
ExtensionDisableEvent,
|
|
83
85
|
ExtensionEnableEvent,
|
|
@@ -88,21 +90,32 @@ import {
|
|
|
88
90
|
ExtensionUpdateEvent,
|
|
89
91
|
GEMINI_CLI_COMPANION_EXTENSION_NAME,
|
|
90
92
|
GEMINI_DIR,
|
|
93
|
+
HookType,
|
|
94
|
+
IDEConnectionStatus,
|
|
91
95
|
INITIAL_HISTORY_LENGTH,
|
|
92
96
|
IdeClient,
|
|
93
97
|
IdeConnectionEvent,
|
|
98
|
+
IdeConnectionType,
|
|
99
|
+
IntegrityDataStatus,
|
|
94
100
|
KeychainTokenStorage,
|
|
101
|
+
LlmRole,
|
|
102
|
+
MCPDiscoveryState,
|
|
95
103
|
MCPOAuthTokenStorage,
|
|
104
|
+
MCPServerStatus,
|
|
96
105
|
ModelSlashCommandEvent,
|
|
106
|
+
PolicyDecision,
|
|
97
107
|
ProjectIdRequiredError,
|
|
98
108
|
REFERENCE_CONTENT_END,
|
|
99
109
|
REFERENCE_CONTENT_START,
|
|
100
110
|
ReadManyFilesTool,
|
|
101
111
|
RewindEvent,
|
|
102
112
|
SHELL_TOOL_NAME,
|
|
113
|
+
SessionEndReason,
|
|
114
|
+
SessionStartSource,
|
|
103
115
|
ShellExecutionService,
|
|
104
116
|
StartSessionEvent,
|
|
105
117
|
Storage,
|
|
118
|
+
TrustLevel,
|
|
106
119
|
UPGRADE_URL_PAGE,
|
|
107
120
|
UserAccountManager,
|
|
108
121
|
ValidationRequiredError,
|
|
@@ -238,7 +251,7 @@ import {
|
|
|
238
251
|
tokenLimit,
|
|
239
252
|
uiTelemetryService,
|
|
240
253
|
unescapePath
|
|
241
|
-
} from "./chunk-
|
|
254
|
+
} from "./chunk-FLYR6TVJ.js";
|
|
242
255
|
import {
|
|
243
256
|
require_src
|
|
244
257
|
} from "./chunk-L6PII3GR.js";
|
|
@@ -60093,7 +60106,7 @@ var import_react34 = __toESM(require_react(), 1);
|
|
|
60093
60106
|
function useIdeTrustListener() {
|
|
60094
60107
|
const settings = useSettings();
|
|
60095
60108
|
const [connectionStatus, setConnectionStatus] = (0, import_react34.useState)(
|
|
60096
|
-
|
|
60109
|
+
IDEConnectionStatus.Disconnected
|
|
60097
60110
|
);
|
|
60098
60111
|
const previousTrust = (0, import_react34.useRef)(void 0);
|
|
60099
60112
|
const [restartReason, setRestartReason] = (0, import_react34.useState)("NONE");
|
|
@@ -60123,7 +60136,7 @@ function useIdeTrustListener() {
|
|
|
60123
60136
|
};
|
|
60124
60137
|
}, []);
|
|
60125
60138
|
const getSnapshot = () => {
|
|
60126
|
-
if (connectionStatus !==
|
|
60139
|
+
if (connectionStatus !== IDEConnectionStatus.Connected) {
|
|
60127
60140
|
return void 0;
|
|
60128
60141
|
}
|
|
60129
60142
|
return ideContextStore.get()?.workspaceState?.isTrusted;
|
|
@@ -60828,7 +60841,7 @@ async function initializeApp(config, settings) {
|
|
|
60828
60841
|
await ideClient.connect();
|
|
60829
60842
|
logIdeConnection(
|
|
60830
60843
|
config,
|
|
60831
|
-
new IdeConnectionEvent(
|
|
60844
|
+
new IdeConnectionEvent(IdeConnectionType.START)
|
|
60832
60845
|
);
|
|
60833
60846
|
}).catch((e) => {
|
|
60834
60847
|
debugLogger.error("Failed to initialize IDE client:", e);
|
|
@@ -60846,17 +60859,17 @@ async function initializeApp(config, settings) {
|
|
|
60846
60859
|
// packages/cli/src/config/auth.ts
|
|
60847
60860
|
async function validateAuthMethod(authMethod) {
|
|
60848
60861
|
loadEnvironment(loadSettings().merged, process.cwd());
|
|
60849
|
-
if (authMethod ===
|
|
60862
|
+
if (authMethod === AuthType.LOGIN_WITH_GOOGLE || authMethod === AuthType.COMPUTE_ADC) {
|
|
60850
60863
|
return null;
|
|
60851
60864
|
}
|
|
60852
|
-
if (authMethod ===
|
|
60865
|
+
if (authMethod === AuthType.USE_GEMINI) {
|
|
60853
60866
|
const key = process.env["GEMINI_API_KEY"] || await loadApiKey();
|
|
60854
60867
|
if (!key) {
|
|
60855
60868
|
return "When using Gemini API, you must specify the GEMINI_API_KEY environment variable.\nUpdate your environment and try again (no reload needed if using .env)!";
|
|
60856
60869
|
}
|
|
60857
60870
|
return null;
|
|
60858
60871
|
}
|
|
60859
|
-
if (authMethod ===
|
|
60872
|
+
if (authMethod === AuthType.USE_VERTEX_AI) {
|
|
60860
60873
|
const hasVertexProjectLocationConfig = !!process.env["GOOGLE_CLOUD_PROJECT"] && !!process.env["GOOGLE_CLOUD_LOCATION"];
|
|
60861
60874
|
const hasGoogleApiKey = !!process.env["GOOGLE_API_KEY"];
|
|
60862
60875
|
if (!hasVertexProjectLocationConfig && !hasGoogleApiKey) {
|
|
@@ -65382,7 +65395,7 @@ var ExtensionManager = class extends ExtensionLoader {
|
|
|
65382
65395
|
const trustedFolders = loadTrustedFolders();
|
|
65383
65396
|
await trustedFolders.setValue(
|
|
65384
65397
|
this.workspaceDir,
|
|
65385
|
-
|
|
65398
|
+
TrustLevel.TRUST_FOLDER
|
|
65386
65399
|
);
|
|
65387
65400
|
} else {
|
|
65388
65401
|
throw new Error(
|
|
@@ -65568,7 +65581,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65568
65581
|
newExtensionConfig.version,
|
|
65569
65582
|
previousExtensionConfig.version,
|
|
65570
65583
|
installMetadata.type,
|
|
65571
|
-
|
|
65584
|
+
CoreToolCallStatus.Success
|
|
65572
65585
|
)
|
|
65573
65586
|
);
|
|
65574
65587
|
if (newExtensionName !== previousName) {
|
|
@@ -65591,7 +65604,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65591
65604
|
getExtensionId(newExtensionConfig, installMetadata),
|
|
65592
65605
|
newExtensionConfig.version,
|
|
65593
65606
|
installMetadata.type,
|
|
65594
|
-
|
|
65607
|
+
CoreToolCallStatus.Success
|
|
65595
65608
|
)
|
|
65596
65609
|
);
|
|
65597
65610
|
await this.enableExtension(
|
|
@@ -65624,7 +65637,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65624
65637
|
newExtensionConfig?.version ?? "",
|
|
65625
65638
|
previousExtensionConfig.version,
|
|
65626
65639
|
installMetadata.type,
|
|
65627
|
-
|
|
65640
|
+
CoreToolCallStatus.Error
|
|
65628
65641
|
)
|
|
65629
65642
|
);
|
|
65630
65643
|
} else {
|
|
@@ -65636,7 +65649,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65636
65649
|
extensionId ?? "",
|
|
65637
65650
|
newExtensionConfig?.version ?? "",
|
|
65638
65651
|
installMetadata.type,
|
|
65639
|
-
|
|
65652
|
+
CoreToolCallStatus.Error
|
|
65640
65653
|
)
|
|
65641
65654
|
);
|
|
65642
65655
|
}
|
|
@@ -65667,7 +65680,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65667
65680
|
extension.name,
|
|
65668
65681
|
hashValue(extension.name),
|
|
65669
65682
|
extension.id,
|
|
65670
|
-
|
|
65683
|
+
CoreToolCallStatus.Success
|
|
65671
65684
|
)
|
|
65672
65685
|
);
|
|
65673
65686
|
}
|
|
@@ -65929,7 +65942,7 @@ Would you like to attempt to install via "git clone" instead?`
|
|
|
65929
65942
|
if (eventHooks) {
|
|
65930
65943
|
for (const definition of eventHooks) {
|
|
65931
65944
|
for (const hook of definition.hooks) {
|
|
65932
|
-
if (hook.type ===
|
|
65945
|
+
if (hook.type === HookType.Command) {
|
|
65933
65946
|
hook.env = { ...hook.env, ...hookEnv };
|
|
65934
65947
|
}
|
|
65935
65948
|
}
|
|
@@ -66818,7 +66831,7 @@ function unescapeLiteralAt(text) {
|
|
|
66818
66831
|
return backslashCount % 2 === 0 ? "@" : "\\@";
|
|
66819
66832
|
});
|
|
66820
66833
|
}
|
|
66821
|
-
var AT_COMMAND_PATH_REGEX_SOURCE = '(?:(?:"
|
|
66834
|
+
var AT_COMMAND_PATH_REGEX_SOURCE = '(?:(?:"[^"\\n\\r]*")|(?:\\\\.|[^ \\t\\n\\r,;!?()\\[\\]{}."\'`]|\\.(?!$|[ \\t\\n\\r]))+)';
|
|
66822
66835
|
function parseAllAtCommands(query, escapePastedAtSymbols = false) {
|
|
66823
66836
|
const parts = [];
|
|
66824
66837
|
let lastIndex = 0;
|
|
@@ -66948,7 +66961,9 @@ async function resolveFilePaths(fileParts, config, onDebugMessage, signal) {
|
|
|
66948
66961
|
);
|
|
66949
66962
|
}
|
|
66950
66963
|
} else if (result.status === "not_found" || result.status === "unauthorized") {
|
|
66951
|
-
|
|
66964
|
+
const MAX_GLOB_SEARCH_PATH_LENGTH = 255;
|
|
66965
|
+
const isPathSuitableForGlob = pathName.length > 0 && pathName.length <= MAX_GLOB_SEARCH_PATH_LENGTH && !path12.isAbsolute(pathName) && !pathName.includes("..") && !/[\r\n\t\0{}*?[\]]/.test(pathName);
|
|
66966
|
+
if (config.getEnableRecursiveFileSearch() && globTool && isPathSuitableForGlob) {
|
|
66952
66967
|
onDebugMessage(
|
|
66953
66968
|
`Path ${pathName} not found directly, attempting glob search.`
|
|
66954
66969
|
);
|
|
@@ -67057,7 +67072,7 @@ async function readMcpResources(resourceParts, config, signal) {
|
|
|
67057
67072
|
callId: `mcp-resource-${resource.serverName}-${resource.uri}`,
|
|
67058
67073
|
name: `resources/read (${resource.serverName})`,
|
|
67059
67074
|
description: resource.uri,
|
|
67060
|
-
status:
|
|
67075
|
+
status: CoreToolCallStatus.Success,
|
|
67061
67076
|
isClientInitiated: true,
|
|
67062
67077
|
resultDisplay: `Successfully read resource ${resource.uri}`,
|
|
67063
67078
|
confirmationDetails: void 0
|
|
@@ -67072,7 +67087,7 @@ async function readMcpResources(resourceParts, config, signal) {
|
|
|
67072
67087
|
callId: `mcp-resource-${resource.serverName}-${resource.uri}`,
|
|
67073
67088
|
name: `resources/read (${resource.serverName})`,
|
|
67074
67089
|
description: resource.uri,
|
|
67075
|
-
status:
|
|
67090
|
+
status: CoreToolCallStatus.Error,
|
|
67076
67091
|
isClientInitiated: true,
|
|
67077
67092
|
resultDisplay: `Error reading resource ${resource.uri}: ${getErrorMessage(error)}`,
|
|
67078
67093
|
confirmationDetails: void 0
|
|
@@ -67097,7 +67112,7 @@ Content from @${result.uri}:
|
|
|
67097
67112
|
}
|
|
67098
67113
|
if (hasError) {
|
|
67099
67114
|
const firstError = displays.find(
|
|
67100
|
-
(d) => d.status ===
|
|
67115
|
+
(d) => d.status === CoreToolCallStatus.Error
|
|
67101
67116
|
);
|
|
67102
67117
|
return {
|
|
67103
67118
|
parts: [],
|
|
@@ -67138,7 +67153,7 @@ async function readLocalFiles(resolvedFiles, config, signal, userMessageTimestam
|
|
|
67138
67153
|
callId: `client-read-${userMessageTimestamp}`,
|
|
67139
67154
|
name: readManyFilesTool.displayName,
|
|
67140
67155
|
description: invocation.getDescription(),
|
|
67141
|
-
status:
|
|
67156
|
+
status: CoreToolCallStatus.Success,
|
|
67142
67157
|
isClientInitiated: true,
|
|
67143
67158
|
resultDisplay: result.returnDisplay || `Successfully read: ${fileLabelsForDisplay.join(", ")}`,
|
|
67144
67159
|
confirmationDetails: void 0
|
|
@@ -67185,7 +67200,7 @@ Content from @${displayPath}:
|
|
|
67185
67200
|
callId: `client-read-${userMessageTimestamp}`,
|
|
67186
67201
|
name: readManyFilesTool.displayName,
|
|
67187
67202
|
description: invocation?.getDescription() ?? "Error attempting to execute tool to read files",
|
|
67188
|
-
status:
|
|
67203
|
+
status: CoreToolCallStatus.Error,
|
|
67189
67204
|
isClientInitiated: true,
|
|
67190
67205
|
resultDisplay: `Error reading files (${fileLabelsForDisplay.join(", ")}): ${getErrorMessage(error)}`,
|
|
67191
67206
|
confirmationDetails: void 0
|
|
@@ -70452,7 +70467,7 @@ async function openFileInEditor(filePath, stdin, setRawMode, preferredEditorType
|
|
|
70452
70467
|
if (wasRaw) {
|
|
70453
70468
|
setRawMode?.(true);
|
|
70454
70469
|
}
|
|
70455
|
-
coreEvents.emit(
|
|
70470
|
+
coreEvents.emit(CoreEvent.ExternalEditorClosed);
|
|
70456
70471
|
}
|
|
70457
70472
|
}
|
|
70458
70473
|
|
|
@@ -73147,7 +73162,7 @@ async function updateExtension(extension, extensionManager, currentState, dispat
|
|
|
73147
73162
|
extension.name,
|
|
73148
73163
|
installMetadata
|
|
73149
73164
|
);
|
|
73150
|
-
if (status ===
|
|
73165
|
+
if (status === IntegrityDataStatus.INVALID) {
|
|
73151
73166
|
throw new Error("Extension integrity cannot be verified");
|
|
73152
73167
|
}
|
|
73153
73168
|
} catch (e) {
|
|
@@ -74568,11 +74583,11 @@ var ShellProcessor = class {
|
|
|
74568
74583
|
},
|
|
74569
74584
|
void 0
|
|
74570
74585
|
);
|
|
74571
|
-
if (decision ===
|
|
74586
|
+
if (decision === PolicyDecision.DENY) {
|
|
74572
74587
|
throw new Error(
|
|
74573
74588
|
`${this.commandName} cannot be run. Blocked command: "${command}". Reason: Blocked by policy.`
|
|
74574
74589
|
);
|
|
74575
|
-
} else if (decision ===
|
|
74590
|
+
} else if (decision === PolicyDecision.ASK_USER) {
|
|
74576
74591
|
commandsToConfirm.add(command);
|
|
74577
74592
|
}
|
|
74578
74593
|
}
|
|
@@ -75687,7 +75702,7 @@ var MultiFolderTrustDialog = ({
|
|
|
75687
75702
|
if (choice === 1 /* YES_AND_REMEMBER */) {
|
|
75688
75703
|
await trustedFolders.setValue(
|
|
75689
75704
|
expandedPath,
|
|
75690
|
-
|
|
75705
|
+
TrustLevel.TRUST_FOLDER
|
|
75691
75706
|
);
|
|
75692
75707
|
}
|
|
75693
75708
|
workspaceContext.addDirectory(expandedPath);
|
|
@@ -75973,10 +75988,10 @@ function isShellTool(name) {
|
|
|
75973
75988
|
return name === SHELL_COMMAND_NAME || name === SHELL_NAME || name === SHELL_TOOL_NAME || normalized === "shell";
|
|
75974
75989
|
}
|
|
75975
75990
|
function isThisShellFocusable(name, status, config) {
|
|
75976
|
-
return !!(isShellTool(name) && status ===
|
|
75991
|
+
return !!(isShellTool(name) && status === CoreToolCallStatus.Executing && config?.getEnableInteractiveShell());
|
|
75977
75992
|
}
|
|
75978
75993
|
function isThisShellFocused(name, status, ptyId, activeShellPtyId, embeddedShellFocused) {
|
|
75979
|
-
return !!(isShellTool(name) && status ===
|
|
75994
|
+
return !!(isShellTool(name) && status === CoreToolCallStatus.Executing && ptyId === activeShellPtyId && embeddedShellFocused);
|
|
75980
75995
|
}
|
|
75981
75996
|
function useFocusHint(isThisShellFocusable2, isThisShellFocused2, resultDisplay) {
|
|
75982
75997
|
const [userHasFocused, setUserHasFocused] = (0, import_react56.useState)(false);
|
|
@@ -76136,14 +76151,14 @@ function getToolGroupBorderAppearance(item, activeShellPtyId, embeddedShellFocus
|
|
|
76136
76151
|
if (isTrackedToolCall(t)) {
|
|
76137
76152
|
return t.status !== "success" && t.status !== "error" && t.status !== "cancelled";
|
|
76138
76153
|
} else {
|
|
76139
|
-
return t.status !==
|
|
76154
|
+
return t.status !== CoreToolCallStatus.Success && t.status !== CoreToolCallStatus.Error && t.status !== CoreToolCallStatus.Cancelled;
|
|
76140
76155
|
}
|
|
76141
76156
|
});
|
|
76142
76157
|
const isEmbeddedShellFocused = toolsToInspect.some((t) => {
|
|
76143
76158
|
if (isTrackedToolCall(t)) {
|
|
76144
76159
|
return isShellTool(t.request.name) && t.status === "executing" && t.pid === activeShellPtyId && !!embeddedShellFocused;
|
|
76145
76160
|
} else {
|
|
76146
|
-
return isShellTool(t.name) && t.status ===
|
|
76161
|
+
return isShellTool(t.name) && t.status === CoreToolCallStatus.Executing && t.ptyId === activeShellPtyId && !!embeddedShellFocused;
|
|
76147
76162
|
}
|
|
76148
76163
|
});
|
|
76149
76164
|
const isShellCommand = toolsToInspect.some((t) => {
|
|
@@ -77581,7 +77596,7 @@ var authCommand = {
|
|
|
77581
77596
|
import process29 from "node:process";
|
|
77582
77597
|
|
|
77583
77598
|
// packages/cli/src/generated/git-commit.ts
|
|
77584
|
-
var GIT_COMMIT_INFO = "
|
|
77599
|
+
var GIT_COMMIT_INFO = "508459932";
|
|
77585
77600
|
|
|
77586
77601
|
// packages/cli/src/ui/utils/historyExportUtils.ts
|
|
77587
77602
|
import * as fsPromises from "node:fs/promises";
|
|
@@ -78227,7 +78242,7 @@ var clearCommand = {
|
|
|
78227
78242
|
const config = context.services.agentContext?.config;
|
|
78228
78243
|
const hookSystem = config?.getHookSystem();
|
|
78229
78244
|
if (hookSystem) {
|
|
78230
|
-
await hookSystem.fireSessionEndEvent(
|
|
78245
|
+
await hookSystem.fireSessionEndEvent(SessionEndReason.Clear);
|
|
78231
78246
|
}
|
|
78232
78247
|
config?.injectionService.clear();
|
|
78233
78248
|
let newSessionId;
|
|
@@ -78244,7 +78259,7 @@ var clearCommand = {
|
|
|
78244
78259
|
}
|
|
78245
78260
|
let result;
|
|
78246
78261
|
if (hookSystem) {
|
|
78247
|
-
result = await hookSystem.fireSessionStartEvent(
|
|
78262
|
+
result = await hookSystem.fireSessionStartEvent(SessionStartSource.Clear);
|
|
78248
78263
|
}
|
|
78249
78264
|
await new Promise((resolve9) => setImmediate(resolve9));
|
|
78250
78265
|
if (config) {
|
|
@@ -81243,7 +81258,7 @@ var Footer = () => {
|
|
|
81243
81258
|
case "auth": {
|
|
81244
81259
|
if (!settings.merged.ui.showUserIdentity) break;
|
|
81245
81260
|
if (!authType) break;
|
|
81246
|
-
const displayStr = authType ===
|
|
81261
|
+
const displayStr = authType === AuthType.LOGIN_WITH_GOOGLE ? email ?? "google" : authType;
|
|
81247
81262
|
addCol(
|
|
81248
81263
|
id,
|
|
81249
81264
|
header,
|
|
@@ -83011,12 +83026,12 @@ import path29 from "node:path";
|
|
|
83011
83026
|
function getIdeStatusMessage(ideClient) {
|
|
83012
83027
|
const connection = ideClient.getConnectionStatus();
|
|
83013
83028
|
switch (connection.status) {
|
|
83014
|
-
case
|
|
83029
|
+
case IDEConnectionStatus.Connected:
|
|
83015
83030
|
return {
|
|
83016
83031
|
messageType: "info",
|
|
83017
83032
|
content: `\u{1F7E2} Connected to ${ideClient.getDetectedIdeDisplayName()}`
|
|
83018
83033
|
};
|
|
83019
|
-
case
|
|
83034
|
+
case IDEConnectionStatus.Connecting:
|
|
83020
83035
|
return {
|
|
83021
83036
|
messageType: "info",
|
|
83022
83037
|
content: `\u{1F7E1} Connecting...`
|
|
@@ -83057,7 +83072,7 @@ ${infoMessage}`;
|
|
|
83057
83072
|
async function getIdeStatusMessageWithFiles(ideClient) {
|
|
83058
83073
|
const connection = ideClient.getConnectionStatus();
|
|
83059
83074
|
switch (connection.status) {
|
|
83060
|
-
case
|
|
83075
|
+
case IDEConnectionStatus.Connected: {
|
|
83061
83076
|
let content = `\u{1F7E2} Connected to ${ideClient.getDetectedIdeDisplayName()}`;
|
|
83062
83077
|
const context = ideContextStore.get();
|
|
83063
83078
|
const openFiles = context?.workspaceState?.openFiles;
|
|
@@ -83069,7 +83084,7 @@ async function getIdeStatusMessageWithFiles(ideClient) {
|
|
|
83069
83084
|
content
|
|
83070
83085
|
};
|
|
83071
83086
|
}
|
|
83072
|
-
case
|
|
83087
|
+
case IDEConnectionStatus.Connecting:
|
|
83073
83088
|
return {
|
|
83074
83089
|
messageType: "info",
|
|
83075
83090
|
content: `\u{1F7E1} Connecting...`
|
|
@@ -83091,7 +83106,7 @@ async function setIdeModeAndSyncConnection(config, value, options = {}) {
|
|
|
83091
83106
|
const ideClient = await IdeClient.getInstance();
|
|
83092
83107
|
if (value) {
|
|
83093
83108
|
await ideClient.connect(options);
|
|
83094
|
-
logIdeConnection(config, new IdeConnectionEvent(
|
|
83109
|
+
logIdeConnection(config, new IdeConnectionEvent(IdeConnectionType.SESSION));
|
|
83095
83110
|
} else {
|
|
83096
83111
|
await ideClient.disconnect();
|
|
83097
83112
|
}
|
|
@@ -83179,7 +83194,7 @@ var ideCommand = async () => {
|
|
|
83179
83194
|
logToConsole: false
|
|
83180
83195
|
}
|
|
83181
83196
|
);
|
|
83182
|
-
if (ideClient.getConnectionStatus().status ===
|
|
83197
|
+
if (ideClient.getConnectionStatus().status === IDEConnectionStatus.Connected) {
|
|
83183
83198
|
break;
|
|
83184
83199
|
}
|
|
83185
83200
|
await new Promise((resolve9) => setTimeout(resolve9, 500));
|
|
@@ -83256,7 +83271,7 @@ var ideCommand = async () => {
|
|
|
83256
83271
|
}
|
|
83257
83272
|
};
|
|
83258
83273
|
const { status } = ideClient.getConnectionStatus();
|
|
83259
|
-
const isConnected = status ===
|
|
83274
|
+
const isConnected = status === IDEConnectionStatus.Connected;
|
|
83260
83275
|
if (isConnected) {
|
|
83261
83276
|
ideSlashCommand.subCommands = [statusCommand2, disableCommand5];
|
|
83262
83277
|
} else {
|
|
@@ -83356,13 +83371,13 @@ Use /mcp auth <server-name> to authenticate.`
|
|
|
83356
83371
|
const displayListener = (message) => {
|
|
83357
83372
|
context.ui.addItem({ type: "info", text: message });
|
|
83358
83373
|
};
|
|
83359
|
-
coreEvents.on(
|
|
83374
|
+
coreEvents.on(CoreEvent.OauthDisplayMessage, displayListener);
|
|
83360
83375
|
try {
|
|
83361
83376
|
context.ui.addItem({
|
|
83362
83377
|
type: "info",
|
|
83363
83378
|
text: `Starting OAuth authentication for MCP server '${serverName}'...`
|
|
83364
83379
|
});
|
|
83365
|
-
const { MCPOAuthProvider } = await import("./
|
|
83380
|
+
const { MCPOAuthProvider } = await import("./dist-U5DFAJ4Y.js");
|
|
83366
83381
|
let oauthConfig = server.oauth;
|
|
83367
83382
|
if (!oauthConfig) {
|
|
83368
83383
|
oauthConfig = { enabled: false };
|
|
@@ -83399,7 +83414,7 @@ Use /mcp auth <server-name> to authenticate.`
|
|
|
83399
83414
|
content: `Failed to authenticate with MCP server '${serverName}': ${getErrorMessage(error)}`
|
|
83400
83415
|
};
|
|
83401
83416
|
} finally {
|
|
83402
|
-
coreEvents.removeListener(
|
|
83417
|
+
coreEvents.removeListener(CoreEvent.OauthDisplayMessage, displayListener);
|
|
83403
83418
|
}
|
|
83404
83419
|
},
|
|
83405
83420
|
completion: async (context, partialArg) => {
|
|
@@ -83445,10 +83460,10 @@ var listAction2 = async (context, showDescriptions = false, showSchema = false,
|
|
|
83445
83460
|
}
|
|
83446
83461
|
const serverNames = Object.keys(mcpServers);
|
|
83447
83462
|
const connectingServers = serverNames.filter(
|
|
83448
|
-
(name) => getMCPServerStatus(name) ===
|
|
83463
|
+
(name) => getMCPServerStatus(name) === MCPServerStatus.CONNECTING
|
|
83449
83464
|
);
|
|
83450
83465
|
const discoveryState = getMCPDiscoveryState();
|
|
83451
|
-
const discoveryInProgress = discoveryState ===
|
|
83466
|
+
const discoveryInProgress = discoveryState === MCPDiscoveryState.IN_PROGRESS || connectingServers.length > 0;
|
|
83452
83467
|
const allTools = toolRegistry.getAllTools();
|
|
83453
83468
|
const mcpTools = allTools.filter((tool) => tool instanceof DiscoveredMCPTool);
|
|
83454
83469
|
const promptRegistry = config.getPromptRegistry();
|
|
@@ -99220,7 +99235,7 @@ Return a JSON object with:
|
|
|
99220
99235
|
},
|
|
99221
99236
|
abortSignal: new AbortController().signal,
|
|
99222
99237
|
promptId: "triage-duplicates",
|
|
99223
|
-
role:
|
|
99238
|
+
role: LlmRole.UTILITY_TOOL
|
|
99224
99239
|
});
|
|
99225
99240
|
const rec = response;
|
|
99226
99241
|
let canonical;
|
|
@@ -100054,7 +100069,7 @@ Return a JSON object with:
|
|
|
100054
100069
|
},
|
|
100055
100070
|
abortSignal: abortControllerRef.current.signal,
|
|
100056
100071
|
promptId: "triage-issues",
|
|
100057
|
-
role:
|
|
100072
|
+
role: LlmRole.UTILITY_TOOL
|
|
100058
100073
|
});
|
|
100059
100074
|
return response;
|
|
100060
100075
|
},
|
|
@@ -100628,8 +100643,8 @@ var planCommand = {
|
|
|
100628
100643
|
return;
|
|
100629
100644
|
}
|
|
100630
100645
|
const previousApprovalMode = config.getApprovalMode();
|
|
100631
|
-
config.setApprovalMode(
|
|
100632
|
-
if (previousApprovalMode !==
|
|
100646
|
+
config.setApprovalMode(ApprovalMode.PLAN);
|
|
100647
|
+
if (previousApprovalMode !== ApprovalMode.PLAN) {
|
|
100633
100648
|
coreEvents.emitFeedback("info", "Switched to Plan Mode.");
|
|
100634
100649
|
}
|
|
100635
100650
|
if (context.invocation?.args) {
|
|
@@ -100688,10 +100703,10 @@ var categorizeRulesByMode = (rules) => {
|
|
|
100688
100703
|
rules.forEach((rule) => {
|
|
100689
100704
|
const modes = rule.modes?.length ? rule.modes : ALL_MODES;
|
|
100690
100705
|
const modeSet = new Set(modes);
|
|
100691
|
-
if (modeSet.has(
|
|
100692
|
-
if (modeSet.has(
|
|
100693
|
-
if (modeSet.has(
|
|
100694
|
-
if (modeSet.has(
|
|
100706
|
+
if (modeSet.has(ApprovalMode.DEFAULT)) result.normal.push(rule);
|
|
100707
|
+
if (modeSet.has(ApprovalMode.AUTO_EDIT)) result.autoEdit.push(rule);
|
|
100708
|
+
if (modeSet.has(ApprovalMode.YOLO)) result.yolo.push(rule);
|
|
100709
|
+
if (modeSet.has(ApprovalMode.PLAN)) result.plan.push(rule);
|
|
100695
100710
|
});
|
|
100696
100711
|
return result;
|
|
100697
100712
|
};
|
|
@@ -102072,7 +102087,7 @@ var upgradeCommand = {
|
|
|
102072
102087
|
action: async (context) => {
|
|
102073
102088
|
const config = context.services.agentContext?.config;
|
|
102074
102089
|
const authType = config?.getContentGeneratorConfig()?.authType;
|
|
102075
|
-
if (authType !==
|
|
102090
|
+
if (authType !== AuthType.LOGIN_WITH_GOOGLE) {
|
|
102076
102091
|
return {
|
|
102077
102092
|
type: "message",
|
|
102078
102093
|
messageType: "error",
|
|
@@ -102301,7 +102316,7 @@ var BuiltinCommandLoader = class {
|
|
|
102301
102316
|
setupGithubCommand,
|
|
102302
102317
|
terminalSetupCommand,
|
|
102303
102318
|
...this.config?.isVoiceModeEnabled() ? [voiceCommand] : [],
|
|
102304
|
-
...this.config?.getContentGeneratorConfig()?.authType ===
|
|
102319
|
+
...this.config?.getContentGeneratorConfig()?.authType === AuthType.LOGIN_WITH_GOOGLE ? [upgradeCommand] : []
|
|
102305
102320
|
];
|
|
102306
102321
|
handle?.end();
|
|
102307
102322
|
return allDefinitions.filter((cmd) => cmd !== null);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
const require = (await import('node:module')).createRequire(import.meta.url); const __chunk_filename = (await import('node:url')).fileURLToPath(import.meta.url); const __chunk_dirname = (await import('node:path')).dirname(__chunk_filename);
|
|
2
2
|
import {
|
|
3
3
|
runExitCleanup
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-U4667HKR.js";
|
|
5
5
|
import {
|
|
6
6
|
RELEASE_CHANNEL_STABILITY,
|
|
7
7
|
debugLogger,
|
|
8
8
|
getChannelFromVersion,
|
|
9
9
|
isGitRepository
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-FLYR6TVJ.js";
|
|
11
11
|
|
|
12
12
|
// packages/cli/src/utils/installationInfo.ts
|
|
13
13
|
import * as fs from "node:fs";
|