@google/gemini-cli 0.67.0-nightly.20261104.g89e9d25d6 → 0.67.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/README.md +24 -18
- package/bundle/{chunk-TAYMSEDM.js → chunk-2E3ETS5J.js} +2 -2
- package/bundle/{chunk-2VRD7O3N.js → chunk-4JH2G4F4.js} +3 -3
- package/bundle/{chunk-AT7K3IZG.js → chunk-56IGTM4O.js} +1 -1
- package/bundle/{chunk-B2FKXXUH.js → chunk-5RNHNFYV.js} +106 -327
- package/bundle/{chunk-R7UEKGMB.js → chunk-7LX6MRZ6.js} +1 -1
- package/bundle/{chunk-HU3K5KGK.js → chunk-BW65QRZA.js} +11 -9
- package/bundle/{chunk-5WHCLVFH.js → chunk-CJFBYU4J.js} +157 -391
- package/bundle/{chunk-NMKJ47HQ.js → chunk-GBUWHRK6.js} +3 -3
- package/bundle/{chunk-VBHMFLBY.js → chunk-IDJ4QXBF.js} +1 -1
- package/bundle/{chunk-JMHCFAD6.js → chunk-IGE3G3WZ.js} +1 -1
- package/bundle/{chunk-RCF66HCI.js → chunk-LAR4JEC7.js} +1008 -1627
- package/bundle/{chunk-CXMHAFLN.js → chunk-M73CYIV5.js} +2 -2
- package/bundle/{chunk-TB5I5645.js → chunk-MQNW2IRI.js} +2 -2
- package/bundle/{chunk-DKKEYKSG.js → chunk-NGQU3QTQ.js} +996 -1558
- package/bundle/{chunk-VLYI5NP4.js → chunk-O7MGOE2I.js} +16023 -9466
- package/bundle/{chunk-RD2EMHV2.js → chunk-OJ62HCXG.js} +1 -1
- package/bundle/{chunk-HRM7UWGB.js → chunk-P62CI7AR.js} +11 -9
- package/bundle/{chunk-H3WGFU7D.js → chunk-PUNFASKY.js} +1 -1
- package/bundle/{chunk-L77QEOSK.js → chunk-QA5FT4VY.js} +3 -3
- package/bundle/{chunk-WY3X2UP2.js → chunk-QTXJG3I3.js} +8 -9
- package/bundle/{chunk-XBEZPOEF.js → chunk-VK766A3F.js} +1 -1
- package/bundle/{chunk-3DAQUNXR.js → chunk-VO6PFWLY.js} +15 -15
- package/bundle/{chunk-ILNZCTNC.js → chunk-XETHQLRU.js} +106 -327
- package/bundle/{chunk-7SSKD5HN.js → chunk-YUO7RUF4.js} +1 -1
- package/bundle/{cleanup-3ALSKRBJ.js → cleanup-B6AOSVD4.js} +2 -2
- package/bundle/{cleanup-6DVNSRQY.js → cleanup-BRFB47DL.js} +2 -2
- package/bundle/{cleanup-HRNPECKR.js → cleanup-S5QFYCEP.js} +2 -2
- package/bundle/{core-NQRKBS47.js → core-GTUUQBGE.js} +1 -3
- package/bundle/{dist-QYTQZ6QW.js → core-N27LU4DK.js} +1 -3
- package/bundle/{devtoolsService-EWNQDTC7.js → devtoolsService-6V46WMXX.js} +2 -2
- package/bundle/{devtoolsService-64TPRUWQ.js → devtoolsService-E74ZMDMM.js} +2 -2
- package/bundle/{devtoolsService-E6I4WSAL.js → devtoolsService-EFJXZRFD.js} +3 -4
- package/bundle/{dist-L5NYU7FF.js → dist-E6RCLXQU.js} +1 -3
- package/bundle/docs/changelogs/index.md +0 -24
- package/bundle/docs/changelogs/latest.md +90 -83
- package/bundle/docs/changelogs/preview.md +87 -89
- package/bundle/docs/cli/sandbox.md +2 -8
- package/bundle/docs/cli/themes.md +3 -6
- package/bundle/docs/extensions/releasing.md +0 -32
- package/bundle/docs/reference/configuration.md +10 -2
- package/bundle/{gemini-YFCTZ76S.js → gemini-4JPKPLQN.js} +24 -122
- package/bundle/{gemini-QAVNR7N4.js → gemini-QWDTSJTS.js} +209 -323
- package/bundle/{gemini-7USJ6MGR.js → gemini-VF5FS3OM.js} +24 -122
- package/bundle/gemini.js +7 -7
- package/bundle/{interactiveCli-X54KN2EM.js → interactiveCli-F2YYMYTP.js} +1145 -1350
- package/bundle/{interactiveCli-XN43CGES.js → interactiveCli-FQ3YKGOG.js} +1428 -1652
- package/bundle/{interactiveCli-3VTQP4GH.js → interactiveCli-QJZZISQQ.js} +1145 -1350
- package/bundle/{liteRtServerManager-E4PDEWY3.js → liteRtServerManager-27R2M6XE.js} +4 -4
- package/bundle/{liteRtServerManager-ENSSU4TN.js → liteRtServerManager-JAV3GR4V.js} +4 -4
- package/bundle/{liteRtServerManager-FLPMMDNM.js → liteRtServerManager-X5CCMKM6.js} +4 -4
- package/bundle/{oauth2-provider-3MJNDLJF.js → oauth2-provider-6UCP23AQ.js} +1 -1
- package/bundle/{oauth2-provider-VMBYZOC7.js → oauth2-provider-C65IJMNQ.js} +1 -1
- package/bundle/{oauth2-provider-ZIZQIT7D.js → oauth2-provider-H2KV36NU.js} +79 -41
- package/bundle/{start-B63MUWDV.js → start-E4ZL44QM.js} +6 -6
- package/bundle/{start-DFHM4HI4.js → start-GNOA75NQ.js} +6 -6
- package/bundle/{start-OHBUJSIL.js → start-K2AYYNST.js} +6 -6
- package/package.json +1 -1
- package/bundle/chunk-674DJGDU.js +0 -512
- package/bundle/chunk-M4REEHDQ.js +0 -185
- package/bundle/chunk-NOMIJA6W.js +0 -1956
- package/bundle/chunk-ORXIIXSA.js +0 -80453
- package/bundle/chunk-Q3OUSMTD.js +0 -39405
- package/bundle/chunk-Q76ZDILI.js +0 -118
- package/bundle/chunk-T6YNV33L.js +0 -1571
- package/bundle/chunk-YTSRA7S6.js +0 -403181
- package/bundle/cleanup-OQV2G5Y3.js +0 -34
- package/bundle/devtoolsService-PG47POWV.js +0 -4422
- package/bundle/dist-LJVRZOCO.js +0 -2298
- package/bundle/gemini-QVVNPYKF.js +0 -19271
- package/bundle/interactiveCli-ELN2VGHK.js +0 -35871
- package/bundle/liteRtServerManager-TYCQMNCE.js +0 -65
- package/bundle/oauth2-provider-NLSE3P5W.js +0 -273
- package/bundle/start-V3EP7MBL.js +0 -18
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
runSyncCleanup,
|
|
13
13
|
setupSignalHandlers,
|
|
14
14
|
setupTtyCheck
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-PUNFASKY.js";
|
|
16
|
+
import "./chunk-NGQU3QTQ.js";
|
|
17
17
|
import "./chunk-664ZODQF.js";
|
|
18
18
|
import "./chunk-IUUIT4SU.js";
|
|
19
19
|
import "./chunk-L6PII3GR.js";
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
runSyncCleanup,
|
|
13
13
|
setupSignalHandlers,
|
|
14
14
|
setupTtyCheck
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-VK766A3F.js";
|
|
16
|
+
import "./chunk-O7MGOE2I.js";
|
|
17
17
|
import "./chunk-664ZODQF.js";
|
|
18
18
|
import "./chunk-IUUIT4SU.js";
|
|
19
19
|
import "./chunk-L6PII3GR.js";
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
runSyncCleanup,
|
|
13
13
|
setupSignalHandlers,
|
|
14
14
|
setupTtyCheck
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-OJ62HCXG.js";
|
|
16
|
+
import "./chunk-LAR4JEC7.js";
|
|
17
17
|
import "./chunk-664ZODQF.js";
|
|
18
18
|
import "./chunk-IUUIT4SU.js";
|
|
19
19
|
import "./chunk-L6PII3GR.js";
|
|
@@ -962,7 +962,6 @@ import {
|
|
|
962
962
|
mcpServerRequiresOAuth,
|
|
963
963
|
moveInboxSkill,
|
|
964
964
|
normalizeCommand,
|
|
965
|
-
normalizeEscapedNewlines,
|
|
966
965
|
normalizePath,
|
|
967
966
|
normalizeSecurityPath,
|
|
968
967
|
normalizeSpace,
|
|
@@ -1142,7 +1141,7 @@ import {
|
|
|
1142
1141
|
wrapWithSynchronizedOutput,
|
|
1143
1142
|
writeToStderr,
|
|
1144
1143
|
writeToStdout
|
|
1145
|
-
} from "./chunk-
|
|
1144
|
+
} from "./chunk-LAR4JEC7.js";
|
|
1146
1145
|
import "./chunk-664ZODQF.js";
|
|
1147
1146
|
import {
|
|
1148
1147
|
SpanStatusCode,
|
|
@@ -2115,7 +2114,6 @@ export {
|
|
|
2115
2114
|
mcpServerRequiresOAuth,
|
|
2116
2115
|
moveInboxSkill,
|
|
2117
2116
|
normalizeCommand,
|
|
2118
|
-
normalizeEscapedNewlines,
|
|
2119
2117
|
normalizePath,
|
|
2120
2118
|
normalizeSecurityPath,
|
|
2121
2119
|
normalizeSpace,
|
|
@@ -962,7 +962,6 @@ import {
|
|
|
962
962
|
mcpServerRequiresOAuth,
|
|
963
963
|
moveInboxSkill,
|
|
964
964
|
normalizeCommand,
|
|
965
|
-
normalizeEscapedNewlines,
|
|
966
965
|
normalizePath,
|
|
967
966
|
normalizeSecurityPath,
|
|
968
967
|
normalizeSpace,
|
|
@@ -1142,7 +1141,7 @@ import {
|
|
|
1142
1141
|
wrapWithSynchronizedOutput,
|
|
1143
1142
|
writeToStderr,
|
|
1144
1143
|
writeToStdout
|
|
1145
|
-
} from "./chunk-
|
|
1144
|
+
} from "./chunk-O7MGOE2I.js";
|
|
1146
1145
|
import "./chunk-664ZODQF.js";
|
|
1147
1146
|
import {
|
|
1148
1147
|
SpanStatusCode,
|
|
@@ -2115,7 +2114,6 @@ export {
|
|
|
2115
2114
|
mcpServerRequiresOAuth,
|
|
2116
2115
|
moveInboxSkill,
|
|
2117
2116
|
normalizeCommand,
|
|
2118
|
-
normalizeEscapedNewlines,
|
|
2119
2117
|
normalizePath,
|
|
2120
2118
|
normalizeSecurityPath,
|
|
2121
2119
|
normalizeSpace,
|
|
@@ -2,7 +2,7 @@ const require = (await import('node:module')).createRequire(import.meta.url); co
|
|
|
2
2
|
import {
|
|
3
3
|
coreEvents,
|
|
4
4
|
debugLogger
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-O7MGOE2I.js";
|
|
6
6
|
import "./chunk-664ZODQF.js";
|
|
7
7
|
import "./chunk-IUUIT4SU.js";
|
|
8
8
|
import "./chunk-L6PII3GR.js";
|
|
@@ -4387,7 +4387,7 @@ async function toggleDevToolsPanel(config, isOpen, toggle, setOpen) {
|
|
|
4387
4387
|
return;
|
|
4388
4388
|
}
|
|
4389
4389
|
try {
|
|
4390
|
-
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./core-
|
|
4390
|
+
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./core-N27LU4DK.js");
|
|
4391
4391
|
const url = await startDevToolsServer(config);
|
|
4392
4392
|
if (shouldLaunchBrowser()) {
|
|
4393
4393
|
try {
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
CoreEvent,
|
|
4
4
|
coreEvents,
|
|
5
5
|
debugLogger
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-NGQU3QTQ.js";
|
|
7
7
|
import "./chunk-664ZODQF.js";
|
|
8
8
|
import "./chunk-IUUIT4SU.js";
|
|
9
9
|
import "./chunk-L6PII3GR.js";
|
|
@@ -4388,7 +4388,7 @@ async function toggleDevToolsPanel(config, isOpen, toggle, setOpen) {
|
|
|
4388
4388
|
return;
|
|
4389
4389
|
}
|
|
4390
4390
|
try {
|
|
4391
|
-
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./dist-
|
|
4391
|
+
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./dist-E6RCLXQU.js");
|
|
4392
4392
|
const url = await startDevToolsServer(config);
|
|
4393
4393
|
if (shouldLaunchBrowser()) {
|
|
4394
4394
|
try {
|
|
@@ -1,9 +1,8 @@
|
|
|
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
|
-
CoreEvent,
|
|
4
3
|
coreEvents,
|
|
5
4
|
debugLogger
|
|
6
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-LAR4JEC7.js";
|
|
7
6
|
import "./chunk-664ZODQF.js";
|
|
8
7
|
import "./chunk-IUUIT4SU.js";
|
|
9
8
|
import "./chunk-L6PII3GR.js";
|
|
@@ -4237,7 +4236,7 @@ var bridgeAttached = false;
|
|
|
4237
4236
|
function bridgeCoreEvents(capture) {
|
|
4238
4237
|
if (bridgeAttached) return;
|
|
4239
4238
|
bridgeAttached = true;
|
|
4240
|
-
coreEvents.on(
|
|
4239
|
+
coreEvents.on("console-log" /* ConsoleLog */, (payload) => {
|
|
4241
4240
|
capture.logConsole(payload);
|
|
4242
4241
|
});
|
|
4243
4242
|
}
|
|
@@ -4388,7 +4387,7 @@ async function toggleDevToolsPanel(config, isOpen, toggle, setOpen) {
|
|
|
4388
4387
|
return;
|
|
4389
4388
|
}
|
|
4390
4389
|
try {
|
|
4391
|
-
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./
|
|
4390
|
+
const { openBrowserSecurely, shouldLaunchBrowser } = await import("./core-GTUUQBGE.js");
|
|
4392
4391
|
const url = await startDevToolsServer(config);
|
|
4393
4392
|
if (shouldLaunchBrowser()) {
|
|
4394
4393
|
try {
|
|
@@ -962,7 +962,6 @@ import {
|
|
|
962
962
|
mcpServerRequiresOAuth,
|
|
963
963
|
moveInboxSkill,
|
|
964
964
|
normalizeCommand,
|
|
965
|
-
normalizeEscapedNewlines,
|
|
966
965
|
normalizePath,
|
|
967
966
|
normalizeSecurityPath,
|
|
968
967
|
normalizeSpace,
|
|
@@ -1142,7 +1141,7 @@ import {
|
|
|
1142
1141
|
wrapWithSynchronizedOutput,
|
|
1143
1142
|
writeToStderr,
|
|
1144
1143
|
writeToStdout
|
|
1145
|
-
} from "./chunk-
|
|
1144
|
+
} from "./chunk-NGQU3QTQ.js";
|
|
1146
1145
|
import "./chunk-664ZODQF.js";
|
|
1147
1146
|
import {
|
|
1148
1147
|
SpanStatusCode,
|
|
@@ -2115,7 +2114,6 @@ export {
|
|
|
2115
2114
|
mcpServerRequiresOAuth,
|
|
2116
2115
|
moveInboxSkill,
|
|
2117
2116
|
normalizeCommand,
|
|
2118
|
-
normalizeEscapedNewlines,
|
|
2119
2117
|
normalizePath,
|
|
2120
2118
|
normalizeSecurityPath,
|
|
2121
2119
|
normalizeSpace,
|
|
@@ -18,30 +18,6 @@ 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.66.0 - 2026-10-27
|
|
22
|
-
|
|
23
|
-
- **Terminal UI Rendering & Flicker Prevention:** Implemented synchronized
|
|
24
|
-
output mode and isolated spinner rendering, eliminated buffer flickering, and
|
|
25
|
-
preserved terminal scrollback during viewport refreshes
|
|
26
|
-
([#29725](https://github.com/google-gemini/gemini-cli/pull/29725) by
|
|
27
|
-
@diegogodinezr,
|
|
28
|
-
[#29695](https://github.com/google-gemini/gemini-cli/pull/29695) by
|
|
29
|
-
@ugorla-dev).
|
|
30
|
-
- **Tool Scheduling & Process Lifecycle:** Emitted tool call groups directly
|
|
31
|
-
from the scheduler and forwarded process termination signals from bootstrap
|
|
32
|
-
parent to child processes
|
|
33
|
-
([#29736](https://github.com/google-gemini/gemini-cli/pull/29736) by
|
|
34
|
-
@jesussamuel-byte,
|
|
35
|
-
[#29790](https://github.com/google-gemini/gemini-cli/pull/29790) by
|
|
36
|
-
@villahernandez-coder).
|
|
37
|
-
- **Environment & MCP OAuth Security:** Supported opt-in private network
|
|
38
|
-
endpoints for MCP OAuth flows and preserved user-level git configuration while
|
|
39
|
-
suppressing interactive prompts
|
|
40
|
-
([#29844](https://github.com/google-gemini/gemini-cli/pull/29844) by
|
|
41
|
-
@luisfelipe-alt,
|
|
42
|
-
[#29832](https://github.com/google-gemini/gemini-cli/pull/29832) by
|
|
43
|
-
@jesussamuel-byte).
|
|
44
|
-
|
|
45
21
|
## Announcements: v0.65.0 - 2026-10-20
|
|
46
22
|
|
|
47
23
|
- **Custom Telemetry Headers:** Added support for configuring custom OTLP
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Latest stable release: v0.
|
|
1
|
+
# Latest stable release: v0.65.0
|
|
2
2
|
|
|
3
|
-
Released: October
|
|
3
|
+
Released: October 20, 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,96 +11,103 @@ npm install -g @google/gemini-cli
|
|
|
11
11
|
|
|
12
12
|
## Highlights
|
|
13
13
|
|
|
14
|
-
- **
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
- **Custom Telemetry Headers:** Added support for configuring custom OTLP
|
|
15
|
+
headers in telemetry settings, enabling authentication and header
|
|
16
|
+
customization for OpenTelemetry collectors.
|
|
17
|
+
- **File System Performance & Traversal:** Optimized ignore pattern filtering
|
|
18
|
+
with subtree pruning to accelerate directory scanning, deferred recursive file
|
|
19
|
+
reads for `@<directory>` references, and improved empty file handling across
|
|
20
|
+
multi-byte encodings.
|
|
21
|
+
- **Session Resilience & State Integrity:** Prevented session poisoning during
|
|
22
|
+
rapid Ctrl+C interruptions, preserved resumed session history on quick exits,
|
|
23
|
+
and eliminated duplicate tool response turns upon resuming sessions.
|
|
24
|
+
- **Authentication & Workspace Security:** Enforced read-only workspace settings
|
|
25
|
+
in untrusted folders, aligned OAuth callback parameter validation with RFC
|
|
26
|
+
9207 metadata, and resolved infinite authentication retry loops.
|
|
27
|
+
- **Terminal UI & Interactive Stability:** Resolved interactive mode hangs on
|
|
28
|
+
Enter keypresses, prevented unnecessary terminal clears and scroll resets when
|
|
29
|
+
expanding output with Ctrl+O, and restored debounced static UI refreshes on
|
|
30
|
+
terminal width changes.
|
|
30
31
|
|
|
31
32
|
## What's Changed
|
|
32
33
|
|
|
33
|
-
-
|
|
34
|
-
@
|
|
35
|
-
[#
|
|
36
|
-
-
|
|
37
|
-
[#29739](https://github.com/google-gemini/gemini-cli/pull/29739)
|
|
38
|
-
- chore(release): bump version to 0.66.0-nightly.20261013.g204db94ae by
|
|
39
|
-
@gemini-cli-robot in
|
|
40
|
-
[#29740](https://github.com/google-gemini/gemini-cli/pull/29740)
|
|
41
|
-
- Changelog for v0.64.0 by @gemini-cli-robot in
|
|
42
|
-
[#29741](https://github.com/google-gemini/gemini-cli/pull/29741)
|
|
43
|
-
- fix(ui): implement synchronized output and isolate spinner rendering by
|
|
34
|
+
- fix(cli): enforce read-only workspace settings in untrusted folders by
|
|
35
|
+
@jvargassanchez-dot in
|
|
36
|
+
[#29583](https://github.com/google-gemini/gemini-cli/pull/29583)
|
|
37
|
+
- fix(core): avoid duplicate tool response turns when resuming sessions by
|
|
44
38
|
@diegogodinezr in
|
|
45
|
-
[#
|
|
46
|
-
- fix(
|
|
39
|
+
[#29618](https://github.com/google-gemini/gemini-cli/pull/29618)
|
|
40
|
+
- fix(core): prevent deletion of resumed session history on quick exit (#29198)
|
|
41
|
+
by @villahernandez-coder in
|
|
42
|
+
[#29584](https://github.com/google-gemini/gemini-cli/pull/29584)
|
|
43
|
+
- Changelog for v0.64.0-preview.0 by @gemini-cli-robot in
|
|
44
|
+
[#29656](https://github.com/google-gemini/gemini-cli/pull/29656)
|
|
45
|
+
- Changelog for v0.63.0 by @gemini-cli-robot in
|
|
46
|
+
[#29659](https://github.com/google-gemini/gemini-cli/pull/29659)
|
|
47
|
+
- fix(core): align OAuth callback iss parameter validation with RFC 9207
|
|
48
|
+
metadata by @luisfelipe-alt in
|
|
49
|
+
[#29616](https://github.com/google-gemini/gemini-cli/pull/29616)
|
|
50
|
+
- fix(cli): prevent unnecessary terminal clears and scroll resets when expanding
|
|
51
|
+
with Ctrl+O by @jesussamuel-byte in
|
|
52
|
+
[#29640](https://github.com/google-gemini/gemini-cli/pull/29640)
|
|
53
|
+
- chore(release): bump version to 0.65.0-nightly.20261006.gfb972b2f8 by
|
|
54
|
+
@gemini-cli-robot in
|
|
55
|
+
[#29657](https://github.com/google-gemini/gemini-cli/pull/29657)
|
|
56
|
+
- fix(ci): add missing loop in unassign-inactive-assignees workflow by
|
|
47
57
|
@ugorla-dev in
|
|
48
|
-
[#
|
|
49
|
-
- fix(
|
|
50
|
-
@
|
|
51
|
-
[#
|
|
52
|
-
-
|
|
53
|
-
|
|
54
|
-
[#
|
|
55
|
-
- fix(
|
|
56
|
-
@jvargassanchez-dot in
|
|
57
|
-
[#29753](https://github.com/google-gemini/gemini-cli/pull/29753)
|
|
58
|
-
- fix(cli): round before selecting units in formatDuration by @diegogodinezr in
|
|
59
|
-
[#29766](https://github.com/google-gemini/gemini-cli/pull/29766)
|
|
60
|
-
- fix(core): disable interactive credential and SSH prompts in getSafeGitEnv by
|
|
58
|
+
[#29609](https://github.com/google-gemini/gemini-cli/pull/29609)
|
|
59
|
+
- fix(core): enforce terminal user turn invariant and normalize request contents
|
|
60
|
+
by @luisfelipe-alt in
|
|
61
|
+
[#29612](https://github.com/google-gemini/gemini-cli/pull/29612)
|
|
62
|
+
- `feat(telemetry): support custom OTLP headers in telemetry configuration` by
|
|
63
|
+
@jesussamuel-byte in
|
|
64
|
+
[#29641](https://github.com/google-gemini/gemini-cli/pull/29641)
|
|
65
|
+
- fix(auth): prevent infinite verification and OAuth retry loops by
|
|
61
66
|
@villahernandez-coder in
|
|
62
|
-
[#
|
|
63
|
-
- fix(cli):
|
|
64
|
-
@elberthc-byte in
|
|
65
|
-
[#29750](https://github.com/google-gemini/gemini-cli/pull/29750)
|
|
66
|
-
- fix(core): harden SKILL.md frontmatter parsing for single-line descriptions by
|
|
67
|
+
[#29655](https://github.com/google-gemini/gemini-cli/pull/29655)
|
|
68
|
+
- fix(cli): handle JSON parse and response stream errors in fetchJson by
|
|
67
69
|
@jesussamuel-byte in
|
|
68
|
-
[#
|
|
69
|
-
-
|
|
70
|
-
[#
|
|
71
|
-
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
-
|
|
70
|
+
[#29658](https://github.com/google-gemini/gemini-cli/pull/29658)
|
|
71
|
+
- fix(core): preserve line terminators in truncateString by @diegogodinezr in
|
|
72
|
+
[#29673](https://github.com/google-gemini/gemini-cli/pull/29673)
|
|
73
|
+
- fix(vscode-ide-companion): make IdeServer.stop() resolve while MCP sessions
|
|
74
|
+
are open by @elberthc-byte in
|
|
75
|
+
[#29674](https://github.com/google-gemini/gemini-cli/pull/29674)
|
|
76
|
+
- fix(core): retain ask_user question text in the tool result display by
|
|
77
|
+
@elberthc-byte in
|
|
78
|
+
[#29677](https://github.com/google-gemini/gemini-cli/pull/29677)
|
|
79
|
+
- fix(core): eliminate false positives on untrusted command flags and compound
|
|
80
|
+
loops by @DavidAPierce in
|
|
81
|
+
[#29672](https://github.com/google-gemini/gemini-cli/pull/29672)
|
|
82
|
+
- fix(cli): clear cached credentials when re-selecting Google login by
|
|
83
|
+
@urielefrenvirtusa in
|
|
84
|
+
[#29643](https://github.com/google-gemini/gemini-cli/pull/29643)
|
|
85
|
+
- fix(cli): resolve hang on Enter keypress in interactive mode (#23297) by
|
|
86
|
+
@elberthc-byte in
|
|
87
|
+
[#29476](https://github.com/google-gemini/gemini-cli/pull/29476)
|
|
88
|
+
- perf(core): optimize ignore filtering and enable subtree pruning (#29077) by
|
|
89
|
+
@amelidev in [#29582](https://github.com/google-gemini/gemini-cli/pull/29582)
|
|
90
|
+
- fix(a2a-server): isolate tool rejection to active call in sequential batches
|
|
91
|
+
by @jvargassanchez-dot in
|
|
92
|
+
[#29683](https://github.com/google-gemini/gemini-cli/pull/29683)
|
|
93
|
+
- fix(cli): skip eager recursive file reading for @<directory> references by
|
|
77
94
|
@jvargassanchez-dot in
|
|
78
|
-
[#
|
|
79
|
-
- fix(cli):
|
|
80
|
-
by @urielefrenvirtusa in
|
|
81
|
-
[#29757](https://github.com/google-gemini/gemini-cli/pull/29757)
|
|
82
|
-
- fix(cli): support 'keys' array in keybindings.json by @urielefrenvirtusa in
|
|
83
|
-
[#29773](https://github.com/google-gemini/gemini-cli/pull/29773)
|
|
84
|
-
- fix(cli): forward termination signals from bootstrap parent to child process
|
|
85
|
-
by @villahernandez-coder in
|
|
86
|
-
[#29790](https://github.com/google-gemini/gemini-cli/pull/29790)
|
|
87
|
-
- fix(ui): preserve terminal scrollback during viewport refreshes by
|
|
88
|
-
@diegogodinezr in
|
|
89
|
-
[#29792](https://github.com/google-gemini/gemini-cli/pull/29792)
|
|
90
|
-
- fix(cli): decode streamed Node HTTP activity chunks with StringDecoder by
|
|
95
|
+
[#29617](https://github.com/google-gemini/gemini-cli/pull/29617)
|
|
96
|
+
- fix(cli): keep loading other extensions when one fails the allowlist check by
|
|
91
97
|
@jesussamuel-byte in
|
|
92
|
-
[#
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
-
|
|
98
|
+
[#29720](https://github.com/google-gemini/gemini-cli/pull/29720)
|
|
99
|
+
- fix(cli): correct reverse search highlight index for expanding unicode
|
|
100
|
+
characters by @diegogodinezr in
|
|
101
|
+
[#29699](https://github.com/google-gemini/gemini-cli/pull/29699)
|
|
102
|
+
- fix(core): treat whitespace-only UTF-16 and UTF-32 files as empty by
|
|
96
103
|
@jesussamuel-byte in
|
|
97
|
-
[#
|
|
98
|
-
- fix(
|
|
99
|
-
@
|
|
100
|
-
[#
|
|
101
|
-
- fix(
|
|
102
|
-
@
|
|
103
|
-
[#
|
|
104
|
+
[#29722](https://github.com/google-gemini/gemini-cli/pull/29722)
|
|
105
|
+
- fix(cli): restore debounced static UI refresh on terminal width changes by
|
|
106
|
+
@jvargassanchez-dot in
|
|
107
|
+
[#29644](https://github.com/google-gemini/gemini-cli/pull/29644)
|
|
108
|
+
- fix(cli): prevent session poisoning on rapid Ctrl-C interruption by
|
|
109
|
+
@villahernandez-coder in
|
|
110
|
+
[#29728](https://github.com/google-gemini/gemini-cli/pull/29728)
|
|
104
111
|
|
|
105
112
|
**Full Changelog**:
|
|
106
|
-
https://github.com/google-gemini/gemini-cli/compare/v0.
|
|
113
|
+
https://github.com/google-gemini/gemini-cli/compare/v0.64.0...v0.65.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Preview release: v0.
|
|
1
|
+
# Preview release: v0.66.0-preview.0
|
|
2
2
|
|
|
3
|
-
Released: October
|
|
3
|
+
Released: October 20, 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,101 +13,99 @@ 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
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
16
|
+
- **Terminal UI & Output Synchronization**: Implemented synchronized terminal
|
|
17
|
+
output and isolated spinner rendering to prevent flickering, preserved
|
|
18
|
+
terminal scrollback during viewport refreshes, corrected debug console height
|
|
19
|
+
calculations, and eliminated right-hand border bleed in scrollable tool
|
|
20
|
+
containers.
|
|
21
|
+
- **Tool Execution & Scheduler Architecture**: Refactored the tool execution
|
|
22
|
+
flow to emit tool call groups directly from the scheduler, removing UI
|
|
23
|
+
lookahead logic and simplifying execution scheduling.
|
|
24
|
+
- **Shell & Git Environment Integrity**: Preserved user-level `~/.gitconfig`
|
|
25
|
+
settings across shell and Git environments, disabled interactive credential
|
|
26
|
+
and SSH prompts to prevent hangs in automated environments, and forwarded
|
|
27
|
+
termination signals from bootstrap parent processes.
|
|
28
|
+
- **Configuration & Keybindings Flexibility**: Added support for a `keys` array
|
|
29
|
+
in `keybindings.json`, ensured settings placeholders resolve correctly after
|
|
30
|
+
loading `.env` files, and improved CLI self-update verification against PATH
|
|
31
|
+
shadowing.
|
|
32
|
+
- **Networking & MCP Security**: Supported opt-in private network endpoints for
|
|
33
|
+
MCP OAuth flows and prevented false positive matches in authentication error
|
|
34
|
+
handling.
|
|
31
35
|
|
|
32
36
|
## What's Changed
|
|
33
37
|
|
|
34
|
-
-
|
|
35
|
-
|
|
36
|
-
|
|
38
|
+
- Update ROADMAP.md to no longer reference outdated 2025 roadmap by
|
|
39
|
+
@DavidAPierce in
|
|
40
|
+
[#29723](https://github.com/google-gemini/gemini-cli/pull/29723)
|
|
41
|
+
- Changelog for v0.65.0-preview.0 by @gemini-cli-robot in
|
|
42
|
+
[#29739](https://github.com/google-gemini/gemini-cli/pull/29739)
|
|
43
|
+
- chore(release): bump version to 0.66.0-nightly.20261013.g204db94ae by
|
|
37
44
|
@gemini-cli-robot in
|
|
38
|
-
[#
|
|
39
|
-
- Changelog for v0.
|
|
40
|
-
[#
|
|
41
|
-
-
|
|
42
|
-
by @elberthc-byte in
|
|
43
|
-
[#29858](https://github.com/google-gemini/gemini-cli/pull/29858)
|
|
44
|
-
- fix(core): prevent duplicate agent loading when workspace is home directory
|
|
45
|
-
(#27692) by @urielefrenvirtusa in
|
|
46
|
-
[#29847](https://github.com/google-gemini/gemini-cli/pull/29847)
|
|
47
|
-
- fix(ide): exclude IDE settings and GEMINI.md files from open file con text by
|
|
48
|
-
@villahernandez-coder in
|
|
49
|
-
[#29848](https://github.com/google-gemini/gemini-cli/pull/29848)
|
|
50
|
-
- fix(core): scope untrusted flag checks to external output and remember
|
|
51
|
-
approved flags by @luisfelipe-alt in
|
|
52
|
-
[#29833](https://github.com/google-gemini/gemini-cli/pull/29833)
|
|
53
|
-
- fix(a2a-server): mount express.json() before A2A SDK route registration by
|
|
54
|
-
@jesussamuel-byte in
|
|
55
|
-
[#29850](https://github.com/google-gemini/gemini-cli/pull/29850)
|
|
56
|
-
- fix(core): adhere to RFC 9110 token rules when splitting custom headers by
|
|
45
|
+
[#29740](https://github.com/google-gemini/gemini-cli/pull/29740)
|
|
46
|
+
- Changelog for v0.64.0 by @gemini-cli-robot in
|
|
47
|
+
[#29741](https://github.com/google-gemini/gemini-cli/pull/29741)
|
|
48
|
+
- fix(ui): implement synchronized output and isolate spinner rendering by
|
|
57
49
|
@diegogodinezr in
|
|
58
|
-
[#
|
|
59
|
-
- fix(
|
|
60
|
-
@
|
|
61
|
-
[#
|
|
62
|
-
- fix(
|
|
63
|
-
per-turn reporting by @jvargassanchez-dot in
|
|
64
|
-
[#29834](https://github.com/google-gemini/gemini-cli/pull/29834)
|
|
65
|
-
- fix(core): ensure all model turns with function calls receive thought
|
|
66
|
-
signatures by @amelidev in
|
|
67
|
-
[#29828](https://github.com/google-gemini/gemini-cli/pull/29828)
|
|
68
|
-
- fix(cli): handle termination signals and prevent tool execution after
|
|
69
|
-
cancellation in non-interactive mode by @urielefrenvirtusa in
|
|
70
|
-
[#29849](https://github.com/google-gemini/gemini-cli/pull/29849)
|
|
71
|
-
- fix(cli): preserve ${VAR} placeholders during deprecated settings migration by
|
|
50
|
+
[#29725](https://github.com/google-gemini/gemini-cli/pull/29725)
|
|
51
|
+
- fix(ui): fix debug console height calculation and terminalBuffer flickering by
|
|
52
|
+
@ugorla-dev in
|
|
53
|
+
[#29695](https://github.com/google-gemini/gemini-cli/pull/29695)
|
|
54
|
+
- fix(cli): prevent right-hand border bleed in scrollable tool containers by
|
|
72
55
|
@villahernandez-coder in
|
|
73
|
-
[#
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
[#
|
|
77
|
-
- fix(
|
|
78
|
-
|
|
79
|
-
-
|
|
56
|
+
[#29742](https://github.com/google-gemini/gemini-cli/pull/29742)
|
|
57
|
+
- refactor(core,cli): emit tool call groups from the scheduler and drop the UI
|
|
58
|
+
lookahead by @jesussamuel-byte in
|
|
59
|
+
[#29736](https://github.com/google-gemini/gemini-cli/pull/29736)
|
|
60
|
+
- fix(core): format and quote Windows diff command arguments in openDiff by
|
|
61
|
+
@jvargassanchez-dot in
|
|
62
|
+
[#29753](https://github.com/google-gemini/gemini-cli/pull/29753)
|
|
63
|
+
- fix(cli): round before selecting units in formatDuration by @diegogodinezr in
|
|
64
|
+
[#29766](https://github.com/google-gemini/gemini-cli/pull/29766)
|
|
65
|
+
- fix(core): disable interactive credential and SSH prompts in getSafeGitEnv by
|
|
80
66
|
@villahernandez-coder in
|
|
81
|
-
[#
|
|
82
|
-
-
|
|
83
|
-
@
|
|
84
|
-
[#
|
|
85
|
-
- fix(
|
|
86
|
-
migration by @villahernandez-coder in
|
|
87
|
-
[#29899](https://github.com/google-gemini/gemini-cli/pull/29899)
|
|
88
|
-
- fix(core): classify project spending cap errors as terminal quota errors by
|
|
67
|
+
[#29760](https://github.com/google-gemini/gemini-cli/pull/29760)
|
|
68
|
+
- fix(cli): resolve settings placeholders after loading .env files by
|
|
69
|
+
@elberthc-byte in
|
|
70
|
+
[#29750](https://github.com/google-gemini/gemini-cli/pull/29750)
|
|
71
|
+
- fix(core): harden SKILL.md frontmatter parsing for single-line descriptions by
|
|
89
72
|
@jesussamuel-byte in
|
|
90
|
-
[#
|
|
91
|
-
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
-
|
|
73
|
+
[#29769](https://github.com/google-gemini/gemini-cli/pull/29769)
|
|
74
|
+
- Add Banner about Gemini CLI not being optimized for Gemini 4 by @srithreepo in
|
|
75
|
+
[#29774](https://github.com/google-gemini/gemini-cli/pull/29774)
|
|
76
|
+
- Update README to remove obsolete content by @srithreepo in
|
|
77
|
+
[#29775](https://github.com/google-gemini/gemini-cli/pull/29775)
|
|
78
|
+
- fix(ci): remove unsupported members permission in unassign-inactive-assignees
|
|
79
|
+
workflow by @ugorla-dev in
|
|
80
|
+
[#29770](https://github.com/google-gemini/gemini-cli/pull/29770)
|
|
81
|
+
- fix(cli): reset slash-command conflict dedupe when conflicts reappear by
|
|
82
|
+
@jvargassanchez-dot in
|
|
83
|
+
[#29768](https://github.com/google-gemini/gemini-cli/pull/29768)
|
|
84
|
+
- fix(cli): verify active binary update to prevent PATH shadowing false success
|
|
85
|
+
by @urielefrenvirtusa in
|
|
86
|
+
[#29757](https://github.com/google-gemini/gemini-cli/pull/29757)
|
|
87
|
+
- fix(cli): support 'keys' array in keybindings.json by @urielefrenvirtusa in
|
|
88
|
+
[#29773](https://github.com/google-gemini/gemini-cli/pull/29773)
|
|
89
|
+
- fix(cli): forward termination signals from bootstrap parent to child process
|
|
90
|
+
by @villahernandez-coder in
|
|
91
|
+
[#29790](https://github.com/google-gemini/gemini-cli/pull/29790)
|
|
92
|
+
- fix(ui): preserve terminal scrollback during viewport refreshes by
|
|
93
|
+
@diegogodinezr in
|
|
94
|
+
[#29792](https://github.com/google-gemini/gemini-cli/pull/29792)
|
|
95
|
+
- fix(cli): decode streamed Node HTTP activity chunks with StringDecoder by
|
|
96
|
+
@jesussamuel-byte in
|
|
97
|
+
[#29827](https://github.com/google-gemini/gemini-cli/pull/29827)
|
|
98
|
+
- chore: migrate gsutil usage to gcloud storage by @gurusai-voleti in
|
|
99
|
+
[#29839](https://github.com/google-gemini/gemini-cli/pull/29839)
|
|
100
|
+
- fix(core): preserve user-level ~/.gitconfig in shell and git environments by
|
|
101
|
+
@jesussamuel-byte in
|
|
102
|
+
[#29832](https://github.com/google-gemini/gemini-cli/pull/29832)
|
|
103
|
+
- fix(core): prevent false positive matches in isAuthenticationError by
|
|
95
104
|
@urielefrenvirtusa in
|
|
96
|
-
[#
|
|
97
|
-
- fix(
|
|
98
|
-
in
|
|
99
|
-
-
|
|
100
|
-
resolution (#21836) by @amelidev in
|
|
101
|
-
[#29884](https://github.com/google-gemini/gemini-cli/pull/29884)
|
|
102
|
-
- fix(core): normalize CRLF line endings before diffing in getDiffContextSnippet
|
|
103
|
-
by @jesussamuel-byte in
|
|
104
|
-
[#29966](https://github.com/google-gemini/gemini-cli/pull/29966)
|
|
105
|
-
- fix(cli): handle terminals that render ambiguous-width characters as wide by
|
|
106
|
-
@elberthc-byte in
|
|
107
|
-
[#29905](https://github.com/google-gemini/gemini-cli/pull/29905)
|
|
108
|
-
- fix(cli): prevent duplicate history and double telemetry in confirm_action
|
|
109
|
-
flow by @duvanka-prasad in
|
|
110
|
-
[#29974](https://github.com/google-gemini/gemini-cli/pull/29974)
|
|
105
|
+
[#29835](https://github.com/google-gemini/gemini-cli/pull/29835)
|
|
106
|
+
- fix(core): support opt-in private network endpoints for MCP OAuth flows by
|
|
107
|
+
@luisfelipe-alt in
|
|
108
|
+
[#29844](https://github.com/google-gemini/gemini-cli/pull/29844)
|
|
111
109
|
|
|
112
110
|
**Full Changelog**:
|
|
113
|
-
https://github.com/google-gemini/gemini-cli/compare/v0.
|
|
111
|
+
https://github.com/google-gemini/gemini-cli/compare/v0.65.0-preview.0...v0.66.0-preview.0
|