@google/gemini-cli 0.44.0 → 0.45.0-preview.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/{chunk-BOYNQXWU.js → chunk-2O7YSVPU.js} +2 -2
- package/bundle/{chunk-CBT4PN4R.js → chunk-2RRZM3IR.js} +8 -8
- package/bundle/{chunk-BE42OOYM.js → chunk-4FNXKOEB.js} +377 -297
- package/bundle/{chunk-FOOWNGAB.js → chunk-4M3TG6ZU.js} +1 -1
- package/bundle/{chunk-XTG4JBIR.js → chunk-APSDEHHA.js} +1 -1
- package/bundle/{chunk-SIXPHUVZ.js → chunk-CWAXEILN.js} +423 -330
- package/bundle/{chunk-LM6XTSWQ.js → chunk-DMCSPKNM.js} +56 -2
- package/bundle/{chunk-M3EDSAPV.js → chunk-EZCW6IDX.js} +1 -1
- package/bundle/{chunk-3K52543M.js → chunk-GIXFMPPJ.js} +56 -2
- package/bundle/{chunk-TN4WXWFM.js → chunk-I7UI7NB6.js} +3 -3
- package/bundle/{chunk-OTLI6LZ3.js → chunk-IPQLMJS5.js} +1 -1
- package/bundle/{chunk-VUERI7WB.js → chunk-J4QUIOHJ.js} +8 -8
- package/bundle/{chunk-TW47A6FW.js → chunk-J7SEBVDD.js} +423 -330
- package/bundle/{chunk-QUZ62PY7.js → chunk-LUQGJPIY.js} +2 -2
- package/bundle/{chunk-N4SGO3W6.js → chunk-N4X4WHSW.js} +2 -2
- package/bundle/{chunk-EKUU3KNX.js → chunk-NOJPXYUJ.js} +1 -1
- package/bundle/{chunk-DALZZYPQ.js → chunk-OY6QYVTR.js} +1 -1
- package/bundle/{chunk-6W2Z7FTE.js → chunk-Q3UZDZZV.js} +3 -3
- package/bundle/{chunk-5CABHQOE.js → chunk-R5OZKB4U.js} +1 -1
- package/bundle/{chunk-7KIX5G5D.js → chunk-S4CJ6KAO.js} +3 -3
- package/bundle/{chunk-OLBOCZ5F.js → chunk-TH3OOWK4.js} +8 -8
- package/bundle/{chunk-7ZH745HC.js → chunk-VS2OY6HJ.js} +56 -2
- package/bundle/{chunk-G2L4VCSN.js → chunk-WPCNMQ6J.js} +1 -1
- package/bundle/{chunk-ONQVFEHS.js → chunk-Y5REX36P.js} +1 -1
- package/bundle/{cleanup-PDT5ATZB.js → cleanup-2WCUS5XU.js} +2 -2
- package/bundle/{cleanup-SF7XW2P3.js → cleanup-7FHLTEXT.js} +2 -2
- package/bundle/{cleanup-UW3DZLXP.js → cleanup-WGOZFAQJ.js} +2 -2
- package/bundle/{core-LN2S4IOX.js → core-LD6MHGD6.js} +3 -7
- package/bundle/{dist-J4RONYVV.js → core-SIRU2VWJ.js} +3 -7
- package/bundle/{devtoolsService-DUEWJW52.js → devtoolsService-4Y2RGEUE.js} +2 -2
- package/bundle/{devtoolsService-ZC7E4R2A.js → devtoolsService-F5XFL4BF.js} +2 -2
- package/bundle/{devtoolsService-64QE2V7E.js → devtoolsService-IANYOK3R.js} +2 -2
- package/bundle/{core-GW6VAL53.js → dist-67ZORME5.js} +3 -7
- package/bundle/docs/changelogs/index.md +15 -0
- package/bundle/docs/changelogs/latest.md +198 -262
- package/bundle/docs/changelogs/preview.md +202 -181
- package/bundle/docs/reference/configuration.md +24 -29
- package/bundle/{gemini-SSQIKHR2.js → gemini-24ENZ343.js} +41 -30
- package/bundle/{gemini-CMBH5YG6.js → gemini-5ZI322FJ.js} +41 -30
- package/bundle/{gemini-CSPRLMWN.js → gemini-74UML3PJ.js} +41 -30
- package/bundle/gemini.js +15 -10
- package/bundle/{interactiveCli-RDMZS6KL.js → interactiveCli-7GM3U7SA.js} +34 -58
- package/bundle/{interactiveCli-TOEU7LIO.js → interactiveCli-BVZLMTVC.js} +34 -58
- package/bundle/{interactiveCli-Q2A2JFLA.js → interactiveCli-XM5HDVD7.js} +34 -58
- package/bundle/{liteRtServerManager-ASKAVAO7.js → liteRtServerManager-3HS3VUPU.js} +4 -4
- package/bundle/{liteRtServerManager-6BWTXMUI.js → liteRtServerManager-6N5DYDEQ.js} +4 -4
- package/bundle/{liteRtServerManager-ZS3BCW53.js → liteRtServerManager-JVMDH3TN.js} +4 -4
- package/bundle/{oauth2-provider-SYRZDGL5.js → oauth2-provider-RUFABDNL.js} +1 -1
- package/bundle/{oauth2-provider-FGI6QDEM.js → oauth2-provider-U72EWZHQ.js} +1 -1
- package/bundle/{oauth2-provider-7JOVY727.js → oauth2-provider-WS7LUQ5V.js} +1 -1
- package/bundle/{start-KJCIH3GX.js → start-DJ6EBFEA.js} +6 -6
- package/bundle/{start-TU5WNP77.js → start-KOAGXRA2.js} +6 -6
- package/bundle/{start-47OYCVVA.js → start-XLIGOOW3.js} +6 -6
- package/package.json +1 -1
|
@@ -41,18 +41,18 @@ import {
|
|
|
41
41
|
updateAllUpdatableExtensions,
|
|
42
42
|
updateExtension,
|
|
43
43
|
validateAuthMethod
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-TH3OOWK4.js";
|
|
45
45
|
import {
|
|
46
46
|
appEvents
|
|
47
47
|
} from "./chunk-5PS3AYFU.js";
|
|
48
48
|
import {
|
|
49
49
|
startCommand,
|
|
50
50
|
startServer
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-I7UI7NB6.js";
|
|
52
52
|
import {
|
|
53
53
|
exitCli,
|
|
54
54
|
require_source
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-IPQLMJS5.js";
|
|
56
56
|
import {
|
|
57
57
|
DEFAULT_PORT,
|
|
58
58
|
GEMMA_MODEL_NAME,
|
|
@@ -86,11 +86,11 @@ import {
|
|
|
86
86
|
readServerProcessInfo,
|
|
87
87
|
resolveGemmaConfig,
|
|
88
88
|
saveModelChange
|
|
89
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-VS2OY6HJ.js";
|
|
90
90
|
import {
|
|
91
91
|
RELAUNCH_EXIT_CODE
|
|
92
|
-
} from "./chunk-
|
|
93
|
-
import "./chunk-
|
|
92
|
+
} from "./chunk-N4X4WHSW.js";
|
|
93
|
+
import "./chunk-APSDEHHA.js";
|
|
94
94
|
import {
|
|
95
95
|
cleanupCheckpoints,
|
|
96
96
|
registerCleanup,
|
|
@@ -99,7 +99,7 @@ import {
|
|
|
99
99
|
runExitCleanup,
|
|
100
100
|
runSyncCleanup,
|
|
101
101
|
setupSignalHandlers
|
|
102
|
-
} from "./chunk-
|
|
102
|
+
} from "./chunk-Y5REX36P.js";
|
|
103
103
|
import {
|
|
104
104
|
ASK_USER_TOOL_NAME,
|
|
105
105
|
AuthType,
|
|
@@ -133,8 +133,8 @@ import {
|
|
|
133
133
|
Logger,
|
|
134
134
|
MCPServerConfig,
|
|
135
135
|
PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL,
|
|
136
|
-
PREVIEW_GEMINI_3_1_FLASH_LITE_MODEL,
|
|
137
136
|
PREVIEW_GEMINI_3_1_MODEL,
|
|
137
|
+
PREVIEW_GEMINI_FLASH_LITE_MODEL,
|
|
138
138
|
PREVIEW_GEMINI_FLASH_MODEL,
|
|
139
139
|
PREVIEW_GEMINI_MODEL,
|
|
140
140
|
PolicyIntegrityManager,
|
|
@@ -231,7 +231,7 @@ import {
|
|
|
231
231
|
updatePolicy,
|
|
232
232
|
writeToStderr,
|
|
233
233
|
writeToStdout
|
|
234
|
-
} from "./chunk-
|
|
234
|
+
} from "./chunk-J7SEBVDD.js";
|
|
235
235
|
import "./chunk-6HI7VNOG.js";
|
|
236
236
|
import "./chunk-TUDYL3X4.js";
|
|
237
237
|
import "./chunk-IUUIT4SU.js";
|
|
@@ -5417,12 +5417,12 @@ async function testMCPConnection(serverName, config, isTrusted, activeSettings)
|
|
|
5417
5417
|
return "disconnected" /* DISCONNECTED */;
|
|
5418
5418
|
}
|
|
5419
5419
|
}
|
|
5420
|
-
async function getServerStatus(serverName, server, isTrusted, activeSettings) {
|
|
5420
|
+
async function getServerStatus(serverName, server, isTrusted, activeSettings, consolidatedExcluded, consolidatedAllowed) {
|
|
5421
5421
|
const mcpEnablementManager = McpServerEnablementManager.getInstance();
|
|
5422
5422
|
const loadResult = await canLoadServer(serverName, {
|
|
5423
5423
|
adminMcpEnabled: activeSettings.admin?.mcp?.enabled ?? true,
|
|
5424
|
-
allowedList:
|
|
5425
|
-
excludedList:
|
|
5424
|
+
allowedList: consolidatedAllowed,
|
|
5425
|
+
excludedList: consolidatedExcluded.length > 0 ? consolidatedExcluded : void 0,
|
|
5426
5426
|
enablement: mcpEnablementManager.getEnablementCallbacks()
|
|
5427
5427
|
});
|
|
5428
5428
|
if (!loadResult.allowed) {
|
|
@@ -5462,6 +5462,8 @@ async function listMcpServers(loadedSettingsArg) {
|
|
|
5462
5462
|
)
|
|
5463
5463
|
);
|
|
5464
5464
|
}
|
|
5465
|
+
const consolidatedExcluded = loadedSettings.getConsolidatedExcludedMcpServers();
|
|
5466
|
+
const consolidatedAllowed = loadedSettings.getConsolidatedAllowedMcpServers();
|
|
5465
5467
|
debugLogger.log("Configured MCP servers:\n");
|
|
5466
5468
|
for (const serverName of serverNames) {
|
|
5467
5469
|
const server = mcpServers[serverName];
|
|
@@ -5469,7 +5471,9 @@ async function listMcpServers(loadedSettingsArg) {
|
|
|
5469
5471
|
serverName,
|
|
5470
5472
|
server,
|
|
5471
5473
|
loadedSettings.isTrusted,
|
|
5472
|
-
activeSettings
|
|
5474
|
+
activeSettings,
|
|
5475
|
+
consolidatedExcluded,
|
|
5476
|
+
consolidatedAllowed
|
|
5473
5477
|
);
|
|
5474
5478
|
let statusIndicator = "";
|
|
5475
5479
|
let statusText = "";
|
|
@@ -7821,7 +7825,7 @@ async function loadSandboxConfig(settings, argv) {
|
|
|
7821
7825
|
}
|
|
7822
7826
|
const command2 = getSandboxCommand(sandboxValue);
|
|
7823
7827
|
const packageJson = await getPackageJson(__dirname3);
|
|
7824
|
-
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.
|
|
7828
|
+
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.45.0-preview.0" ?? customImage ?? packageJson?.config?.sandboxImageUri;
|
|
7825
7829
|
const isNative = command2 === "windows-native" || command2 === "sandbox-exec" || command2 === "lxc";
|
|
7826
7830
|
return command2 && (image || isNative) ? { enabled: true, allowedPaths, networkAccess, command: command2, image } : void 0;
|
|
7827
7831
|
}
|
|
@@ -8236,7 +8240,12 @@ function isDebugMode(argv) {
|
|
|
8236
8240
|
);
|
|
8237
8241
|
}
|
|
8238
8242
|
async function loadCliConfig(settings, sessionId, argv, options = {}) {
|
|
8239
|
-
const {
|
|
8243
|
+
const {
|
|
8244
|
+
cwd = process3.cwd(),
|
|
8245
|
+
projectHooks,
|
|
8246
|
+
skipExtensions = false,
|
|
8247
|
+
loadedSettings
|
|
8248
|
+
} = options;
|
|
8240
8249
|
const debugMode = isDebugMode(argv);
|
|
8241
8250
|
const worktreeSettings = options.worktreeSettings ?? await resolveWorktreeSettings(cwd);
|
|
8242
8251
|
if (argv.sandbox) {
|
|
@@ -8483,6 +8492,8 @@ async function loadCliConfig(settings, sessionId, argv, options = {}) {
|
|
|
8483
8492
|
let profileSelector = void 0;
|
|
8484
8493
|
if (settings.experimental?.stressTestProfile) {
|
|
8485
8494
|
profileSelector = "stressTestProfile";
|
|
8495
|
+
} else if (settings.experimental?.powerUserProfile) {
|
|
8496
|
+
profileSelector = "powerUserProfile";
|
|
8486
8497
|
} else if (settings.experimental?.generalistProfile || settings.experimental?.contextManagement) {
|
|
8487
8498
|
profileSelector = "generalistProfile";
|
|
8488
8499
|
}
|
|
@@ -8522,8 +8533,8 @@ async function loadCliConfig(settings, sessionId, argv, options = {}) {
|
|
|
8522
8533
|
extensionsEnabled,
|
|
8523
8534
|
agents: settings.agents,
|
|
8524
8535
|
adminSkillsEnabled,
|
|
8525
|
-
allowedMcpServers: mcpEnabled ? argv.allowedMcpServerNames ?? settings.mcp?.allowed : void 0,
|
|
8526
|
-
blockedMcpServers: mcpEnabled ? argv.allowedMcpServerNames ? void 0 : settings.mcp?.excluded : void 0,
|
|
8536
|
+
allowedMcpServers: mcpEnabled ? argv.allowedMcpServerNames ?? (loadedSettings ? loadedSettings.getConsolidatedAllowedMcpServers() : settings.mcp?.allowed) : void 0,
|
|
8537
|
+
blockedMcpServers: mcpEnabled ? argv.allowedMcpServerNames ? void 0 : loadedSettings ? loadedSettings.getConsolidatedExcludedMcpServers() : settings.mcp?.excluded : void 0,
|
|
8527
8538
|
blockedEnvironmentVariables: settings.security?.environmentVariableRedaction?.blocked,
|
|
8528
8539
|
allowedEnvironmentVariables: settings.security?.environmentVariableRedaction?.allowed,
|
|
8529
8540
|
enableEnvironmentVariableRedaction: settings.security?.environmentVariableRedaction?.enabled,
|
|
@@ -10222,7 +10233,7 @@ async function runNonInteractive({
|
|
|
10222
10233
|
}
|
|
10223
10234
|
});
|
|
10224
10235
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
10225
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
10236
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-F5XFL4BF.js");
|
|
10226
10237
|
setupInitialActivityLogger(config);
|
|
10227
10238
|
}
|
|
10228
10239
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -10693,7 +10704,7 @@ async function runNonInteractive2(params) {
|
|
|
10693
10704
|
}
|
|
10694
10705
|
});
|
|
10695
10706
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
10696
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
10707
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-F5XFL4BF.js");
|
|
10697
10708
|
setupInitialActivityLogger(config);
|
|
10698
10709
|
}
|
|
10699
10710
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -13637,13 +13648,11 @@ function buildAvailableModels(config, settings) {
|
|
|
13637
13648
|
const preferredModel = config.getModel() || GEMINI_MODEL_ALIAS_AUTO;
|
|
13638
13649
|
const shouldShowPreviewModels = config.getHasAccessToPreviewModel();
|
|
13639
13650
|
const useGemini31 = config.getGemini31LaunchedSync?.() ?? false;
|
|
13640
|
-
const useGemini31FlashLite = config.getGemini31FlashLiteLaunchedSync?.() ?? false;
|
|
13641
13651
|
const selectedAuthType = settings.merged.security.auth.selectedType;
|
|
13642
13652
|
const useCustomToolModel = useGemini31 && selectedAuthType === "gemini-api-key" /* USE_GEMINI */;
|
|
13643
13653
|
if (config.getExperimentalDynamicModelConfiguration?.() === true && config.getModelConfigService) {
|
|
13644
13654
|
const options = config.getModelConfigService().getAvailableModelOptions({
|
|
13645
13655
|
useGemini3_1: useGemini31,
|
|
13646
|
-
useGemini3_1FlashLite: useGemini31FlashLite,
|
|
13647
13656
|
useCustomTools: useCustomToolModel,
|
|
13648
13657
|
hasAccessToPreview: shouldShowPreviewModels
|
|
13649
13658
|
});
|
|
@@ -13689,10 +13698,10 @@ function buildAvailableModels(config, settings) {
|
|
|
13689
13698
|
title: getDisplayString(PREVIEW_GEMINI_FLASH_MODEL)
|
|
13690
13699
|
}
|
|
13691
13700
|
];
|
|
13692
|
-
if (
|
|
13701
|
+
if (PREVIEW_GEMINI_FLASH_LITE_MODEL !== "none") {
|
|
13693
13702
|
previewOptions.push({
|
|
13694
|
-
value:
|
|
13695
|
-
title: getDisplayString(
|
|
13703
|
+
value: PREVIEW_GEMINI_FLASH_LITE_MODEL,
|
|
13704
|
+
title: getDisplayString(PREVIEW_GEMINI_FLASH_LITE_MODEL)
|
|
13696
13705
|
});
|
|
13697
13706
|
}
|
|
13698
13707
|
manualOptions.unshift(...previewOptions);
|
|
@@ -15423,7 +15432,7 @@ async function relaunchOnExitCode(runner) {
|
|
|
15423
15432
|
while (true) {
|
|
15424
15433
|
try {
|
|
15425
15434
|
const exitCode = await runner();
|
|
15426
|
-
if (exitCode !== RELAUNCH_EXIT_CODE) {
|
|
15435
|
+
if (process.platform === "android" || exitCode !== RELAUNCH_EXIT_CODE) {
|
|
15427
15436
|
process.exit(exitCode);
|
|
15428
15437
|
}
|
|
15429
15438
|
} catch (error) {
|
|
@@ -15883,7 +15892,7 @@ async function resolveSessionId(resumeArg, sessionIdArg, sessionFileArg) {
|
|
|
15883
15892
|
}
|
|
15884
15893
|
}
|
|
15885
15894
|
async function startInteractiveUI(config, settings, startupWarnings, workspaceRoot = process.cwd(), resumedSessionData, initializationResult) {
|
|
15886
|
-
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-
|
|
15895
|
+
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-BVZLMTVC.js");
|
|
15887
15896
|
await doStartUI(
|
|
15888
15897
|
config,
|
|
15889
15898
|
settings,
|
|
@@ -15997,7 +16006,8 @@ async function main() {
|
|
|
15997
16006
|
}
|
|
15998
16007
|
const partialConfig = await loadCliConfig(settings.merged, sessionId, argv, {
|
|
15999
16008
|
projectHooks: settings.workspace.settings.hooks,
|
|
16000
|
-
skipExtensions: true
|
|
16009
|
+
skipExtensions: true,
|
|
16010
|
+
loadedSettings: settings
|
|
16001
16011
|
});
|
|
16002
16012
|
adminControlsListner.setConfig(partialConfig);
|
|
16003
16013
|
let initialAuthFailed = false;
|
|
@@ -16084,13 +16094,14 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16084
16094
|
const loadConfigHandle = startupProfiler.start("load_cli_config");
|
|
16085
16095
|
config = await loadCliConfig(settings.merged, sessionId, argv, {
|
|
16086
16096
|
projectHooks: settings.workspace.settings.hooks,
|
|
16087
|
-
worktreeSettings: worktreeInfo
|
|
16097
|
+
worktreeSettings: worktreeInfo,
|
|
16098
|
+
loadedSettings: settings
|
|
16088
16099
|
});
|
|
16089
16100
|
loadConfigHandle?.end();
|
|
16090
16101
|
await config.storage.initialize();
|
|
16091
16102
|
adminControlsListner.setConfig(config);
|
|
16092
16103
|
if (config.isInteractive() && settings.merged.general.devtools) {
|
|
16093
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
16104
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-F5XFL4BF.js");
|
|
16094
16105
|
setupInitialActivityLogger(config);
|
|
16095
16106
|
}
|
|
16096
16107
|
registerTelemetryConfig(config);
|
|
@@ -16149,7 +16160,7 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16149
16160
|
const initAppHandle = startupProfiler.start("initialize_app");
|
|
16150
16161
|
const initializationResult = await initializeApp(config, settings);
|
|
16151
16162
|
initAppHandle?.end();
|
|
16152
|
-
import("./liteRtServerManager-
|
|
16163
|
+
import("./liteRtServerManager-3HS3VUPU.js").then(({ LiteRtServerManager }) => {
|
|
16153
16164
|
const mergedGemma = settings.merged.experimental?.gemmaModelRouter;
|
|
16154
16165
|
if (!mergedGemma) return;
|
|
16155
16166
|
const userGemma = settings.forScope("User" /* User */).settings.experimental?.gemmaModelRouter;
|
package/bundle/gemini.js
CHANGED
|
@@ -4,10 +4,10 @@ import {
|
|
|
4
4
|
RELAUNCH_EXIT_CODE,
|
|
5
5
|
getScriptArgs,
|
|
6
6
|
getSpawnConfig
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-2O7YSVPU.js";
|
|
8
|
+
import "./chunk-NOJPXYUJ.js";
|
|
9
|
+
import "./chunk-R5OZKB4U.js";
|
|
10
|
+
import "./chunk-4FNXKOEB.js";
|
|
11
11
|
import "./chunk-6HI7VNOG.js";
|
|
12
12
|
import "./chunk-TUDYL3X4.js";
|
|
13
13
|
import "./chunk-IUUIT4SU.js";
|
|
@@ -18,8 +18,13 @@ import { spawn } from "node:child_process";
|
|
|
18
18
|
import os from "node:os";
|
|
19
19
|
import v8 from "node:v8";
|
|
20
20
|
process.on("uncaughtException", (error) => {
|
|
21
|
-
if (
|
|
22
|
-
|
|
21
|
+
if (error instanceof Error) {
|
|
22
|
+
const isPtyResizeError = error.message === "Cannot resize a pty that has already exited";
|
|
23
|
+
const isEbadfError = error.message.includes("EBADF");
|
|
24
|
+
const isFromNodePty = error.stack?.includes("node-pty") || error.stack?.includes("PtyResize");
|
|
25
|
+
if ((isPtyResizeError || isEbadfError) && isFromNodePty) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
23
28
|
}
|
|
24
29
|
if (error instanceof Error) {
|
|
25
30
|
process.stderr.write(error.stack + "\n");
|
|
@@ -95,7 +100,7 @@ async function run() {
|
|
|
95
100
|
while (true) {
|
|
96
101
|
try {
|
|
97
102
|
const exitCode = await runner();
|
|
98
|
-
if (exitCode !== RELAUNCH_EXIT_CODE) {
|
|
103
|
+
if (process.platform === "android" || exitCode !== RELAUNCH_EXIT_CODE) {
|
|
99
104
|
process.exit(exitCode);
|
|
100
105
|
}
|
|
101
106
|
} catch (error) {
|
|
@@ -109,9 +114,9 @@ ${error instanceof Error ? error.stack ?? error.message : String(error)}
|
|
|
109
114
|
}
|
|
110
115
|
}
|
|
111
116
|
} else {
|
|
112
|
-
const { main } = await import("./gemini-
|
|
113
|
-
const { FatalError, writeToStderr } = await import("./dist-
|
|
114
|
-
const { runExitCleanup } = await import("./cleanup-
|
|
117
|
+
const { main } = await import("./gemini-24ENZ343.js");
|
|
118
|
+
const { FatalError, writeToStderr } = await import("./dist-67ZORME5.js");
|
|
119
|
+
const { runExitCleanup } = await import("./cleanup-2WCUS5XU.js");
|
|
115
120
|
main().catch(async (error) => {
|
|
116
121
|
const cleanupTimeout = setTimeout(() => {
|
|
117
122
|
writeToStderr("Cleanup timed out, forcing exit...\n");
|
|
@@ -155,13 +155,13 @@ import {
|
|
|
155
155
|
widestLineFromStyledChars,
|
|
156
156
|
wordBreakStyledChars,
|
|
157
157
|
wrapStyledChars
|
|
158
|
-
} from "./chunk-
|
|
158
|
+
} from "./chunk-J4QUIOHJ.js";
|
|
159
159
|
import {
|
|
160
160
|
appEvents
|
|
161
161
|
} from "./chunk-5PS3AYFU.js";
|
|
162
162
|
import {
|
|
163
163
|
require_source
|
|
164
|
-
} from "./chunk-
|
|
164
|
+
} from "./chunk-EZCW6IDX.js";
|
|
165
165
|
import {
|
|
166
166
|
ACTIVE_SHELL_MAX_LINES,
|
|
167
167
|
COMPACT_TOOL_SUBVIEW_MAX_LINES,
|
|
@@ -211,24 +211,24 @@ import {
|
|
|
211
211
|
stringWidth,
|
|
212
212
|
stripUnsafeCharacters,
|
|
213
213
|
toCodePoints
|
|
214
|
-
} from "./chunk-
|
|
214
|
+
} from "./chunk-DMCSPKNM.js";
|
|
215
215
|
import {
|
|
216
216
|
handleAutoUpdate,
|
|
217
217
|
isDevelopment,
|
|
218
218
|
relaunchApp,
|
|
219
219
|
setUpdateHandler
|
|
220
|
-
} from "./chunk-
|
|
220
|
+
} from "./chunk-2O7YSVPU.js";
|
|
221
221
|
import {
|
|
222
222
|
isTodoList,
|
|
223
223
|
mapCoreStatusToDisplayStatus,
|
|
224
224
|
require_react
|
|
225
|
-
} from "./chunk-
|
|
225
|
+
} from "./chunk-NOJPXYUJ.js";
|
|
226
226
|
import {
|
|
227
227
|
registerCleanup,
|
|
228
228
|
removeCleanup,
|
|
229
229
|
runExitCleanup,
|
|
230
230
|
setupTtyCheck
|
|
231
|
-
} from "./chunk-
|
|
231
|
+
} from "./chunk-R5OZKB4U.js";
|
|
232
232
|
import {
|
|
233
233
|
ACTIVATE_SKILL_TOOL_NAME,
|
|
234
234
|
AGENT_TOOL_NAME,
|
|
@@ -281,8 +281,8 @@ import {
|
|
|
281
281
|
OverageMenuShownEvent,
|
|
282
282
|
OverageOptionSelectedEvent,
|
|
283
283
|
PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL,
|
|
284
|
-
PREVIEW_GEMINI_3_1_FLASH_LITE_MODEL,
|
|
285
284
|
PREVIEW_GEMINI_3_1_MODEL,
|
|
285
|
+
PREVIEW_GEMINI_FLASH_LITE_MODEL,
|
|
286
286
|
PREVIEW_GEMINI_FLASH_MODEL,
|
|
287
287
|
PREVIEW_GEMINI_MODEL,
|
|
288
288
|
PolicyIntegrityManager,
|
|
@@ -429,7 +429,7 @@ import {
|
|
|
429
429
|
validatePlanContent,
|
|
430
430
|
validatePlanPath,
|
|
431
431
|
writeToStdout
|
|
432
|
-
} from "./chunk-
|
|
432
|
+
} from "./chunk-4FNXKOEB.js";
|
|
433
433
|
import "./chunk-6HI7VNOG.js";
|
|
434
434
|
import "./chunk-TUDYL3X4.js";
|
|
435
435
|
import "./chunk-IUUIT4SU.js";
|
|
@@ -16643,7 +16643,6 @@ function ModelDialog({ onClose }) {
|
|
|
16643
16643
|
const preferredModel = config?.getModel() || GEMINI_MODEL_ALIAS_AUTO;
|
|
16644
16644
|
const shouldShowPreviewModels = config?.getHasAccessToPreviewModel() ?? false;
|
|
16645
16645
|
const useGemini31 = config?.getGemini31LaunchedSync?.() ?? false;
|
|
16646
|
-
const useGemini31FlashLite = config?.getGemini31FlashLiteLaunchedSync?.() ?? false;
|
|
16647
16646
|
const selectedAuthType = settings.merged.security.auth.selectedType;
|
|
16648
16647
|
const useCustomToolModel = useGemini31 && selectedAuthType === AuthType.USE_GEMINI;
|
|
16649
16648
|
const manualModelSelected = (0, import_react55.useMemo)(() => {
|
|
@@ -16658,9 +16657,9 @@ function ModelDialog({ onClose }) {
|
|
|
16658
16657
|
PREVIEW_GEMINI_MODEL,
|
|
16659
16658
|
PREVIEW_GEMINI_3_1_MODEL,
|
|
16660
16659
|
PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL,
|
|
16661
|
-
|
|
16660
|
+
PREVIEW_GEMINI_FLASH_LITE_MODEL,
|
|
16662
16661
|
PREVIEW_GEMINI_FLASH_MODEL
|
|
16663
|
-
];
|
|
16662
|
+
].filter((m) => m !== "none");
|
|
16664
16663
|
if (manualModels.includes(preferredModel)) {
|
|
16665
16664
|
return preferredModel;
|
|
16666
16665
|
}
|
|
@@ -16688,7 +16687,6 @@ function ModelDialog({ onClose }) {
|
|
|
16688
16687
|
if (config?.getExperimentalDynamicModelConfiguration?.() === true && config.getModelConfigService) {
|
|
16689
16688
|
const allOptions = config.getModelConfigService().getAvailableModelOptions({
|
|
16690
16689
|
useGemini3_1: useGemini31,
|
|
16691
|
-
useGemini3_1FlashLite: useGemini31FlashLite,
|
|
16692
16690
|
useCustomTools: useCustomToolModel,
|
|
16693
16691
|
hasAccessToPreview: shouldShowPreviewModels,
|
|
16694
16692
|
hasAccessToProModel
|
|
@@ -16730,7 +16728,6 @@ function ModelDialog({ onClose }) {
|
|
|
16730
16728
|
shouldShowPreviewModels,
|
|
16731
16729
|
manualModelSelected,
|
|
16732
16730
|
useGemini31,
|
|
16733
|
-
useGemini31FlashLite,
|
|
16734
16731
|
useCustomToolModel,
|
|
16735
16732
|
hasAccessToProModel
|
|
16736
16733
|
]);
|
|
@@ -16738,7 +16735,6 @@ function ModelDialog({ onClose }) {
|
|
|
16738
16735
|
if (config?.getExperimentalDynamicModelConfiguration?.() === true && config.getModelConfigService) {
|
|
16739
16736
|
const allOptions = config.getModelConfigService().getAvailableModelOptions({
|
|
16740
16737
|
useGemini3_1: useGemini31,
|
|
16741
|
-
useGemini3_1FlashLite: useGemini31FlashLite,
|
|
16742
16738
|
useCustomTools: useCustomToolModel,
|
|
16743
16739
|
hasAccessToPreview: shouldShowPreviewModels,
|
|
16744
16740
|
hasAccessToProModel
|
|
@@ -16756,15 +16752,15 @@ function ModelDialog({ onClose }) {
|
|
|
16756
16752
|
title: getDisplayString(DEFAULT_GEMINI_MODEL),
|
|
16757
16753
|
key: DEFAULT_GEMINI_MODEL
|
|
16758
16754
|
},
|
|
16759
|
-
{
|
|
16760
|
-
value: DEFAULT_GEMINI_FLASH_MODEL,
|
|
16761
|
-
title: getDisplayString(DEFAULT_GEMINI_FLASH_MODEL),
|
|
16762
|
-
key: DEFAULT_GEMINI_FLASH_MODEL
|
|
16763
|
-
},
|
|
16764
16755
|
{
|
|
16765
16756
|
value: DEFAULT_GEMINI_FLASH_LITE_MODEL,
|
|
16766
16757
|
title: getDisplayString(DEFAULT_GEMINI_FLASH_LITE_MODEL),
|
|
16767
16758
|
key: DEFAULT_GEMINI_FLASH_LITE_MODEL
|
|
16759
|
+
},
|
|
16760
|
+
{
|
|
16761
|
+
value: DEFAULT_GEMINI_FLASH_MODEL,
|
|
16762
|
+
title: getDisplayString(DEFAULT_GEMINI_FLASH_MODEL),
|
|
16763
|
+
key: DEFAULT_GEMINI_FLASH_MODEL
|
|
16768
16764
|
}
|
|
16769
16765
|
];
|
|
16770
16766
|
if (showGemmaModels) {
|
|
@@ -16796,11 +16792,11 @@ function ModelDialog({ onClose }) {
|
|
|
16796
16792
|
key: PREVIEW_GEMINI_FLASH_MODEL
|
|
16797
16793
|
}
|
|
16798
16794
|
];
|
|
16799
|
-
if (
|
|
16795
|
+
if (PREVIEW_GEMINI_FLASH_LITE_MODEL !== "none") {
|
|
16800
16796
|
previewOptions.push({
|
|
16801
|
-
value:
|
|
16802
|
-
title: getDisplayString(
|
|
16803
|
-
key:
|
|
16797
|
+
value: PREVIEW_GEMINI_FLASH_LITE_MODEL,
|
|
16798
|
+
title: getDisplayString(PREVIEW_GEMINI_FLASH_LITE_MODEL),
|
|
16799
|
+
key: PREVIEW_GEMINI_FLASH_LITE_MODEL
|
|
16804
16800
|
});
|
|
16805
16801
|
}
|
|
16806
16802
|
options2.unshift(...previewOptions);
|
|
@@ -16812,12 +16808,21 @@ function ModelDialog({ onClose }) {
|
|
|
16812
16808
|
}, [
|
|
16813
16809
|
shouldShowPreviewModels,
|
|
16814
16810
|
useGemini31,
|
|
16815
|
-
useGemini31FlashLite,
|
|
16816
16811
|
useCustomToolModel,
|
|
16817
16812
|
hasAccessToProModel,
|
|
16818
16813
|
config
|
|
16819
16814
|
]);
|
|
16820
|
-
const options =
|
|
16815
|
+
const options = (0, import_react55.useMemo)(() => {
|
|
16816
|
+
const rawOptions = view === "main" ? mainOptions : manualOptions;
|
|
16817
|
+
const seen = /* @__PURE__ */ new Set();
|
|
16818
|
+
return rawOptions.filter((option) => {
|
|
16819
|
+
if (seen.has(option.value)) {
|
|
16820
|
+
return false;
|
|
16821
|
+
}
|
|
16822
|
+
seen.add(option.value);
|
|
16823
|
+
return true;
|
|
16824
|
+
});
|
|
16825
|
+
}, [view, mainOptions, manualOptions]);
|
|
16821
16826
|
const initialIndex = (0, import_react55.useMemo)(() => {
|
|
16822
16827
|
const idx = options.findIndex((option) => option.value === preferredModel);
|
|
16823
16828
|
if (idx !== -1) {
|
|
@@ -30014,7 +30019,7 @@ function useVim(buffer, onSubmit) {
|
|
|
30014
30019
|
return true;
|
|
30015
30020
|
}
|
|
30016
30021
|
dispatch({ type: "CLEAR_PENDING_STATES" });
|
|
30017
|
-
if (normalizedKey.insertable) {
|
|
30022
|
+
if (normalizedKey.insertable && !normalizedKey.ctrl && !normalizedKey.alt && !normalizedKey.cmd) {
|
|
30018
30023
|
return true;
|
|
30019
30024
|
}
|
|
30020
30025
|
return false;
|
|
@@ -31932,8 +31937,6 @@ import process11 from "node:process";
|
|
|
31932
31937
|
function useSuspend({
|
|
31933
31938
|
handleWarning,
|
|
31934
31939
|
setRawMode,
|
|
31935
|
-
refreshStatic,
|
|
31936
|
-
setForceRerenderKey,
|
|
31937
31940
|
shouldUseAlternateScreen
|
|
31938
31941
|
}) {
|
|
31939
31942
|
const [ctrlZPressCount, setCtrlZPressCount] = (0, import_react117.useState)(0);
|
|
@@ -31995,10 +31998,6 @@ function useSuspend({
|
|
|
31995
31998
|
enableMouseEvents();
|
|
31996
31999
|
}
|
|
31997
32000
|
process11.stdout.emit("resize");
|
|
31998
|
-
setImmediate(() => {
|
|
31999
|
-
refreshStatic();
|
|
32000
|
-
setForceRerenderKey((prev) => prev + 1);
|
|
32001
|
-
});
|
|
32002
32001
|
} finally {
|
|
32003
32002
|
if (onResumeHandlerRef.current === onResume) {
|
|
32004
32003
|
onResumeHandlerRef.current = null;
|
|
@@ -32021,14 +32020,7 @@ function useSuspend({
|
|
|
32021
32020
|
ctrlZTimerRef.current = null;
|
|
32022
32021
|
}, WARNING_PROMPT_DURATION_MS);
|
|
32023
32022
|
}
|
|
32024
|
-
}, [
|
|
32025
|
-
ctrlZPressCount,
|
|
32026
|
-
handleWarning,
|
|
32027
|
-
setRawMode,
|
|
32028
|
-
refreshStatic,
|
|
32029
|
-
setForceRerenderKey,
|
|
32030
|
-
shouldUseAlternateScreen
|
|
32031
|
-
]);
|
|
32023
|
+
}, [ctrlZPressCount, handleWarning, setRawMode, shouldUseAlternateScreen]);
|
|
32032
32024
|
const handleSuspend = (0, import_react117.useCallback)(() => {
|
|
32033
32025
|
setCtrlZPressCount((prev) => prev + 1);
|
|
32034
32026
|
}, []);
|
|
@@ -32447,7 +32439,6 @@ var AppContainer = (props) => {
|
|
|
32447
32439
|
}
|
|
32448
32440
|
}, [mouseMode, setOptions]);
|
|
32449
32441
|
const [corgiMode, setCorgiMode] = (0, import_react121.useState)(false);
|
|
32450
|
-
const [forceRerenderKey, setForceRerenderKey] = (0, import_react121.useState)(0);
|
|
32451
32442
|
const [debugMessage, setDebugMessage] = (0, import_react121.useState)("");
|
|
32452
32443
|
const [quittingMessages, setQuittingMessages] = (0, import_react121.useState)(null);
|
|
32453
32444
|
const [showPrivacyNotice, setShowPrivacyNotice] = (0, import_react121.useState)(false);
|
|
@@ -33562,7 +33553,6 @@ ${queuedText}` : queuedText;
|
|
|
33562
33553
|
needsRestart: ideNeedsRestart,
|
|
33563
33554
|
restartReason: ideTrustRestartReason
|
|
33564
33555
|
} = useIdeTrustListener();
|
|
33565
|
-
const isInitialMount = (0, import_react121.useRef)(true);
|
|
33566
33556
|
useIncludeDirsTrust(config, isTrustedFolder, historyManager, setCustomDialog);
|
|
33567
33557
|
const tabFocusTimeoutRef = (0, import_react121.useRef)(null);
|
|
33568
33558
|
(0, import_react121.useEffect)(() => {
|
|
@@ -33605,8 +33595,6 @@ ${queuedText}` : queuedText;
|
|
|
33605
33595
|
const { handleSuspend } = useSuspend({
|
|
33606
33596
|
handleWarning,
|
|
33607
33597
|
setRawMode,
|
|
33608
|
-
refreshStatic,
|
|
33609
|
-
setForceRerenderKey,
|
|
33610
33598
|
shouldUseAlternateScreen
|
|
33611
33599
|
});
|
|
33612
33600
|
(0, import_react121.useEffect)(() => {
|
|
@@ -33614,18 +33602,6 @@ ${queuedText}` : queuedText;
|
|
|
33614
33602
|
setShowIdeRestartPrompt(true);
|
|
33615
33603
|
}
|
|
33616
33604
|
}, [ideNeedsRestart]);
|
|
33617
|
-
(0, import_react121.useEffect)(() => {
|
|
33618
|
-
if (isInitialMount.current) {
|
|
33619
|
-
isInitialMount.current = false;
|
|
33620
|
-
return;
|
|
33621
|
-
}
|
|
33622
|
-
const handler = setTimeout(() => {
|
|
33623
|
-
refreshStatic();
|
|
33624
|
-
}, 300);
|
|
33625
|
-
return () => {
|
|
33626
|
-
clearTimeout(handler);
|
|
33627
|
-
};
|
|
33628
|
-
}, [terminalWidth, refreshStatic]);
|
|
33629
33605
|
(0, import_react121.useEffect)(() => {
|
|
33630
33606
|
const unsubscribe = ideContextStore.subscribe(setIdeContextState);
|
|
33631
33607
|
setIdeContextState(ideContextStore.get());
|
|
@@ -33745,7 +33721,7 @@ ${queuedText}` : queuedText;
|
|
|
33745
33721
|
if (keyMatchers["app.showErrorDetails" /* SHOW_ERROR_DETAILS */](key)) {
|
|
33746
33722
|
if (settings.merged.general.devtools) {
|
|
33747
33723
|
void (async () => {
|
|
33748
|
-
const { toggleDevToolsPanel } = await import("./devtoolsService-
|
|
33724
|
+
const { toggleDevToolsPanel } = await import("./devtoolsService-IANYOK3R.js");
|
|
33749
33725
|
await toggleDevToolsPanel(
|
|
33750
33726
|
config,
|
|
33751
33727
|
showErrorDetails,
|
|
@@ -34554,7 +34530,7 @@ ${queuedText}` : queuedText;
|
|
|
34554
34530
|
isExpanded,
|
|
34555
34531
|
toggleExpansion,
|
|
34556
34532
|
toggleAllExpansion,
|
|
34557
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(MouseProvider, { mouseEventsEnabled: mouseMode, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ScrollProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(App, {}
|
|
34533
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(MouseProvider, { mouseEventsEnabled: mouseMode, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ScrollProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(App, {}) }) }) })
|
|
34558
34534
|
}
|
|
34559
34535
|
)
|
|
34560
34536
|
}
|