@google/gemini-cli-core 0.39.0-preview.2 → 0.40.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.
Files changed (259) hide show
  1. package/dist/docs/changelogs/index.md +21 -0
  2. package/dist/docs/changelogs/latest.md +253 -407
  3. package/dist/docs/changelogs/preview.md +236 -247
  4. package/dist/docs/cli/auto-memory.md +143 -0
  5. package/dist/docs/cli/enterprise.md +1 -1
  6. package/dist/docs/cli/plan-mode.md +3 -1
  7. package/dist/docs/cli/settings.md +29 -25
  8. package/dist/docs/cli/system-prompt.md +6 -6
  9. package/dist/docs/cli/telemetry.md +18 -11
  10. package/dist/docs/cli/tutorials/memory-management.md +2 -0
  11. package/dist/docs/get-started/{authentication.md → authentication.mdx} +139 -93
  12. package/dist/docs/get-started/index.md +3 -2
  13. package/dist/docs/get-started/installation.mdx +201 -0
  14. package/dist/docs/index.md +2 -2
  15. package/dist/docs/reference/configuration.md +88 -12
  16. package/dist/docs/reference/policy-engine.md +18 -12
  17. package/dist/docs/reference/tools.md +22 -0
  18. package/dist/docs/sidebar.json +13 -1
  19. package/dist/docs/tools/mcp-resources.md +44 -0
  20. package/dist/docs/tools/mcp-server.md +2 -1
  21. package/dist/docs/tools/tracker.md +61 -0
  22. package/dist/src/agents/agent-tool.js +1 -0
  23. package/dist/src/agents/agent-tool.js.map +1 -1
  24. package/dist/src/agents/agentLoader.d.ts +4 -4
  25. package/dist/src/agents/generalist-agent.js +3 -2
  26. package/dist/src/agents/generalist-agent.js.map +1 -1
  27. package/dist/src/agents/local-executor.js +4 -1
  28. package/dist/src/agents/local-executor.js.map +1 -1
  29. package/dist/src/agents/registry.js +0 -8
  30. package/dist/src/agents/registry.js.map +1 -1
  31. package/dist/src/agents/skill-extraction-agent.d.ts +3 -2
  32. package/dist/src/agents/skill-extraction-agent.js +72 -67
  33. package/dist/src/agents/skill-extraction-agent.js.map +1 -1
  34. package/dist/src/agents/skill-extraction-agent.test.js +54 -0
  35. package/dist/src/agents/skill-extraction-agent.test.js.map +1 -0
  36. package/dist/src/config/config.d.ts +21 -6
  37. package/dist/src/config/config.js +103 -19
  38. package/dist/src/config/config.js.map +1 -1
  39. package/dist/src/config/config.test.js +262 -6
  40. package/dist/src/config/config.test.js.map +1 -1
  41. package/dist/src/config/constants.d.ts +1 -0
  42. package/dist/src/config/constants.js +2 -0
  43. package/dist/src/config/constants.js.map +1 -1
  44. package/dist/src/config/memory.js +1 -1
  45. package/dist/src/config/memory.js.map +1 -1
  46. package/dist/src/config/path-validation.test.js +15 -6
  47. package/dist/src/config/path-validation.test.js.map +1 -1
  48. package/dist/src/config/projectRegistry.js +113 -32
  49. package/dist/src/config/projectRegistry.js.map +1 -1
  50. package/dist/src/config/projectRegistry.test.js +51 -0
  51. package/dist/src/config/projectRegistry.test.js.map +1 -1
  52. package/dist/src/config/storage.d.ts +3 -1
  53. package/dist/src/config/storage.js +6 -0
  54. package/dist/src/config/storage.js.map +1 -1
  55. package/dist/src/config/storage.test.js +12 -0
  56. package/dist/src/config/storage.test.js.map +1 -1
  57. package/dist/src/core/contentGenerator.d.ts +8 -1
  58. package/dist/src/core/contentGenerator.js +46 -4
  59. package/dist/src/core/contentGenerator.js.map +1 -1
  60. package/dist/src/core/contentGenerator.test.js +174 -8
  61. package/dist/src/core/contentGenerator.test.js.map +1 -1
  62. package/dist/src/core/geminiChat.test.js +1 -0
  63. package/dist/src/core/geminiChat.test.js.map +1 -1
  64. package/dist/src/core/geminiChat_network_retry.test.js +42 -0
  65. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
  66. package/dist/src/core/localLiteRtLmClient.js +2 -0
  67. package/dist/src/core/localLiteRtLmClient.js.map +1 -1
  68. package/dist/src/core/localLiteRtLmClient.test.js +7 -0
  69. package/dist/src/core/localLiteRtLmClient.test.js.map +1 -1
  70. package/dist/src/core/loggingContentGenerator.js +3 -0
  71. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  72. package/dist/src/core/loggingContentGenerator.test.js +1 -0
  73. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  74. package/dist/src/core/prompts.d.ts +1 -1
  75. package/dist/src/core/prompts.js +2 -2
  76. package/dist/src/core/prompts.js.map +1 -1
  77. package/dist/src/core/prompts.test.js +2 -2
  78. package/dist/src/core/prompts.test.js.map +1 -1
  79. package/dist/src/generated/git-commit.d.ts +2 -2
  80. package/dist/src/generated/git-commit.js +2 -2
  81. package/dist/src/ide/ide-client.js +3 -4
  82. package/dist/src/ide/ide-client.js.map +1 -1
  83. package/dist/src/policy/policies/read-only.toml +4 -1
  84. package/dist/src/policy/policy-engine.js +4 -0
  85. package/dist/src/policy/policy-engine.js.map +1 -1
  86. package/dist/src/policy/policy-engine.test.js +25 -0
  87. package/dist/src/policy/policy-engine.test.js.map +1 -1
  88. package/dist/src/policy/toml-loader.test.js +5 -0
  89. package/dist/src/policy/toml-loader.test.js.map +1 -1
  90. package/dist/src/prompts/promptProvider.d.ts +1 -1
  91. package/dist/src/prompts/promptProvider.js +15 -7
  92. package/dist/src/prompts/promptProvider.js.map +1 -1
  93. package/dist/src/prompts/promptProvider.test.js +31 -1
  94. package/dist/src/prompts/promptProvider.test.js.map +1 -1
  95. package/dist/src/prompts/snippets-memory-v2.test.js +94 -0
  96. package/dist/src/prompts/snippets-memory-v2.test.js.map +1 -0
  97. package/dist/src/prompts/snippets.d.ts +19 -1
  98. package/dist/src/prompts/snippets.js +24 -3
  99. package/dist/src/prompts/snippets.js.map +1 -1
  100. package/dist/src/prompts/snippets.legacy.d.ts +6 -1
  101. package/dist/src/prompts/snippets.legacy.js +10 -3
  102. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  103. package/dist/src/sandbox/linux/LinuxSandboxManager.js +16 -2
  104. package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
  105. package/dist/src/sandbox/linux/bwrapArgsBuilder.js +64 -36
  106. package/dist/src/sandbox/linux/bwrapArgsBuilder.js.map +1 -1
  107. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js +3 -3
  108. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js.map +1 -1
  109. package/dist/src/sandbox/macos/MacOsSandboxManager.js +13 -1
  110. package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
  111. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +61 -42
  112. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
  113. package/dist/src/sandbox/windows/WindowsSandboxManager.js +12 -1
  114. package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
  115. package/dist/src/scheduler/policy.js +1 -2
  116. package/dist/src/scheduler/policy.js.map +1 -1
  117. package/dist/src/scheduler/policy.test.js +35 -2
  118. package/dist/src/scheduler/policy.test.js.map +1 -1
  119. package/dist/src/scheduler/scheduler.js +1 -0
  120. package/dist/src/scheduler/scheduler.js.map +1 -1
  121. package/dist/src/scheduler/scheduler.test.js +2 -0
  122. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  123. package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
  124. package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
  125. package/dist/src/scheduler/scheduler_parallel.test.js +1 -0
  126. package/dist/src/scheduler/scheduler_parallel.test.js.map +1 -1
  127. package/dist/src/scheduler/tool-executor.js +1 -0
  128. package/dist/src/scheduler/tool-executor.js.map +1 -1
  129. package/dist/src/services/chatRecordingService.d.ts +1 -0
  130. package/dist/src/services/chatRecordingService.js +48 -19
  131. package/dist/src/services/chatRecordingService.js.map +1 -1
  132. package/dist/src/services/memoryService.d.ts +15 -1
  133. package/dist/src/services/memoryService.js +276 -57
  134. package/dist/src/services/memoryService.js.map +1 -1
  135. package/dist/src/services/memoryService.test.js +296 -2
  136. package/dist/src/services/memoryService.test.js.map +1 -1
  137. package/dist/src/services/sandboxManager.integration.test.js +204 -0
  138. package/dist/src/services/sandboxManager.integration.test.js.map +1 -1
  139. package/dist/src/services/sandboxManager.js +16 -0
  140. package/dist/src/services/sandboxManager.js.map +1 -1
  141. package/dist/src/services/sessionSummaryUtils.d.ts +1 -1
  142. package/dist/src/services/sessionSummaryUtils.js +111 -38
  143. package/dist/src/services/sessionSummaryUtils.js.map +1 -1
  144. package/dist/src/services/sessionSummaryUtils.test.js +204 -51
  145. package/dist/src/services/sessionSummaryUtils.test.js.map +1 -1
  146. package/dist/src/services/shellExecutionService.js +7 -1
  147. package/dist/src/services/shellExecutionService.js.map +1 -1
  148. package/dist/src/telemetry/config.js +3 -0
  149. package/dist/src/telemetry/config.js.map +1 -1
  150. package/dist/src/telemetry/conseca-logger.test.js +1 -0
  151. package/dist/src/telemetry/conseca-logger.test.js.map +1 -1
  152. package/dist/src/telemetry/loggers.test.js +72 -4
  153. package/dist/src/telemetry/loggers.test.js.map +1 -1
  154. package/dist/src/telemetry/memory-monitor.d.ts +1 -0
  155. package/dist/src/telemetry/memory-monitor.js +8 -1
  156. package/dist/src/telemetry/memory-monitor.js.map +1 -1
  157. package/dist/src/telemetry/memory-monitor.test.js +6 -1
  158. package/dist/src/telemetry/memory-monitor.test.js.map +1 -1
  159. package/dist/src/telemetry/trace.d.ts +1 -0
  160. package/dist/src/telemetry/trace.js +33 -13
  161. package/dist/src/telemetry/trace.js.map +1 -1
  162. package/dist/src/telemetry/trace.test.js +50 -10
  163. package/dist/src/telemetry/trace.test.js.map +1 -1
  164. package/dist/src/telemetry/types.js +11 -4
  165. package/dist/src/telemetry/types.js.map +1 -1
  166. package/dist/src/tools/definitions/base-declarations.d.ts +2 -0
  167. package/dist/src/tools/definitions/base-declarations.js +3 -0
  168. package/dist/src/tools/definitions/base-declarations.js.map +1 -1
  169. package/dist/src/tools/definitions/coreTools.d.ts +3 -1
  170. package/dist/src/tools/definitions/coreTools.js +13 -1
  171. package/dist/src/tools/definitions/coreTools.js.map +1 -1
  172. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +29 -1
  173. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  174. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +29 -1
  175. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  176. package/dist/src/tools/definitions/types.d.ts +2 -0
  177. package/dist/src/tools/get-internal-docs.js +5 -2
  178. package/dist/src/tools/get-internal-docs.js.map +1 -1
  179. package/dist/src/tools/list-mcp-resources.d.ts +24 -0
  180. package/dist/src/tools/list-mcp-resources.js +74 -0
  181. package/dist/src/tools/list-mcp-resources.js.map +1 -0
  182. package/dist/src/tools/list-mcp-resources.test.d.ts +6 -0
  183. package/dist/src/tools/list-mcp-resources.test.js +79 -0
  184. package/dist/src/tools/list-mcp-resources.test.js.map +1 -0
  185. package/dist/src/tools/mcp-client-manager.d.ts +3 -1
  186. package/dist/src/tools/mcp-client-manager.js +24 -1
  187. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  188. package/dist/src/tools/mcp-client-manager.test.js +43 -0
  189. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  190. package/dist/src/tools/memoryTool.d.ts +2 -1
  191. package/dist/src/tools/memoryTool.js +42 -13
  192. package/dist/src/tools/memoryTool.js.map +1 -1
  193. package/dist/src/tools/memoryTool.test.js +23 -3
  194. package/dist/src/tools/memoryTool.test.js.map +1 -1
  195. package/dist/src/tools/read-mcp-resource.d.ts +25 -0
  196. package/dist/src/tools/read-mcp-resource.js +120 -0
  197. package/dist/src/tools/read-mcp-resource.js.map +1 -0
  198. package/dist/src/tools/read-mcp-resource.test.d.ts +6 -0
  199. package/dist/src/tools/read-mcp-resource.test.js +110 -0
  200. package/dist/src/tools/read-mcp-resource.test.js.map +1 -0
  201. package/dist/src/tools/ripGrep.d.ts +3 -2
  202. package/dist/src/tools/ripGrep.js +25 -54
  203. package/dist/src/tools/ripGrep.js.map +1 -1
  204. package/dist/src/tools/ripGrep.test.js +73 -131
  205. package/dist/src/tools/ripGrep.test.js.map +1 -1
  206. package/dist/src/tools/shell.js +38 -12
  207. package/dist/src/tools/shell.js.map +1 -1
  208. package/dist/src/tools/shell.test.js +410 -25
  209. package/dist/src/tools/shell.test.js.map +1 -1
  210. package/dist/src/tools/tool-error.d.ts +1 -0
  211. package/dist/src/tools/tool-error.js +1 -0
  212. package/dist/src/tools/tool-error.js.map +1 -1
  213. package/dist/src/tools/tool-names.d.ts +4 -4
  214. package/dist/src/tools/tool-names.js +6 -2
  215. package/dist/src/tools/tool-names.js.map +1 -1
  216. package/dist/src/tools/tool-registry.js +8 -1
  217. package/dist/src/tools/tool-registry.js.map +1 -1
  218. package/dist/src/utils/filesearch/fileSearch.d.ts +2 -0
  219. package/dist/src/utils/filesearch/fileSearch.js +97 -6
  220. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  221. package/dist/src/utils/filesearch/fileSearch.test.js +54 -0
  222. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  223. package/dist/src/utils/filesearch/fileWatcher.d.ts +25 -0
  224. package/dist/src/utils/filesearch/fileWatcher.js +86 -0
  225. package/dist/src/utils/filesearch/fileWatcher.js.map +1 -0
  226. package/dist/src/utils/filesearch/fileWatcher.test.d.ts +6 -0
  227. package/dist/src/utils/filesearch/fileWatcher.test.js +142 -0
  228. package/dist/src/utils/filesearch/fileWatcher.test.js.map +1 -0
  229. package/dist/src/utils/gitIgnoreParser.js +1 -1
  230. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  231. package/dist/src/utils/ignoreFileParser.js +1 -1
  232. package/dist/src/utils/ignoreFileParser.js.map +1 -1
  233. package/dist/src/utils/memoryDiscovery.js +15 -5
  234. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  235. package/dist/src/utils/retry.js +18 -6
  236. package/dist/src/utils/retry.js.map +1 -1
  237. package/dist/src/utils/retry.test.js +30 -0
  238. package/dist/src/utils/retry.test.js.map +1 -1
  239. package/dist/src/utils/shell-utils.d.ts +1 -0
  240. package/dist/src/utils/shell-utils.js +106 -0
  241. package/dist/src/utils/shell-utils.js.map +1 -1
  242. package/dist/tsconfig.tsbuildinfo +1 -1
  243. package/package.json +5 -3
  244. package/vendor/ripgrep/rg-darwin-arm64 +0 -0
  245. package/vendor/ripgrep/rg-darwin-x64 +0 -0
  246. package/vendor/ripgrep/rg-linux-arm64 +0 -0
  247. package/vendor/ripgrep/rg-linux-x64 +0 -0
  248. package/vendor/ripgrep/rg-win32-x64.exe +0 -0
  249. package/dist/docs/get-started/installation.md +0 -181
  250. package/dist/google-gemini-cli-core-0.39.0-preview.1.tgz +0 -0
  251. package/dist/src/agents/memory-manager-agent.d.ts +0 -25
  252. package/dist/src/agents/memory-manager-agent.js +0 -138
  253. package/dist/src/agents/memory-manager-agent.js.map +0 -1
  254. package/dist/src/agents/memory-manager-agent.test.js +0 -123
  255. package/dist/src/agents/memory-manager-agent.test.js.map +0 -1
  256. package/dist/src/prompts/snippets-memory-manager.test.js +0 -31
  257. package/dist/src/prompts/snippets-memory-manager.test.js.map +0 -1
  258. /package/dist/src/agents/{memory-manager-agent.test.d.ts → skill-extraction-agent.test.d.ts} +0 -0
  259. /package/dist/src/prompts/{snippets-memory-manager.test.d.ts → snippets-memory-v2.test.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
- # Preview release: v0.38.0-preview.0
1
+ # Preview release: v0.39.0-preview.0
2
2
 
3
- Released: April 08, 2026
3
+ Released: April 14, 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,256 +13,245 @@ npm install -g @google/gemini-cli@preview
13
13
 
14
14
  ## Highlights
15
15
 
16
- - **Context Management:** Introduced a Context Compression Service to optimize
17
- context window usage and landed a background memory service for skill
18
- extraction.
19
- - **Enhanced Security:** Implemented context-aware persistent policy approvals
20
- for smarter tool permissions and enabled `web_fetch` in plan mode with user
21
- confirmation.
22
- - **Workflow Monitoring:** Added background process monitoring and inspection
23
- tools for better visibility into long-running tasks.
24
- - **UI/UX Refinements:** Enhanced the tool confirmation UI, selection layout,
25
- and added support for selective topic expansion and click-to-expand.
26
- - **Core Stability:** Improved sandbox reliability on Linux and Windows,
27
- resolved shebang compatibility issues, and fixed various crashes in the CLI
28
- and core services.
16
+ - **Refactored Subagents and Unified Tooling:** Consolidate subagent tools into
17
+ a single `invoke_subagent` tool, removed legacy wrapping tools, and improved
18
+ turn limits for codebase investigator.
19
+ - **Advanced Memory and Skill Management:** Introduced `/memory` inbox for
20
+ reviewing extracted skills and added skill patching support, enhancing agent
21
+ learning and persistence.
22
+ - **Expanded Test and Evaluation Infrastructure:** Added memory and CPU
23
+ performance integration test harnesses and generalized evaluation
24
+ infrastructure for better suite organization.
25
+ - **Sandbox and Security Hardening:** Centralized sandbox paths for Linux and
26
+ macOS, enforced read-only security for async git worktree resolution, and
27
+ optimized Windows sandbox initialization.
28
+ - **Enhanced CLI UX and UI Stability:** Improved scroll momentum, added a
29
+ `debugRainbow` setting, and resolved various memory leaks and PTY exhaustion
30
+ issues for a smoother terminal experience.
29
31
 
30
32
  ## What's Changed
31
33
 
32
- - fix(cli): refresh slash command list after /skills reload by @NTaylorMullen in
33
- [#24454](https://github.com/google-gemini/gemini-cli/pull/24454)
34
- - Update README.md for links. by @g-samroberts in
35
- [#22759](https://github.com/google-gemini/gemini-cli/pull/22759)
36
- - fix(core): ensure complete_task tool calls are recorded in chat history by
37
- @abhipatel12 in
38
- [#24437](https://github.com/google-gemini/gemini-cli/pull/24437)
39
- - feat(policy): explicitly allow web_fetch in plan mode with ask_user by
40
- @Adib234 in [#24456](https://github.com/google-gemini/gemini-cli/pull/24456)
41
- - fix(core): refactor linux sandbox to fix ARG_MAX crashes by @ehedlund in
42
- [#24286](https://github.com/google-gemini/gemini-cli/pull/24286)
43
- - feat(config): add experimental.adk.agentSessionNoninteractiveEnabled setting
44
- by @adamfweidman in
45
- [#24439](https://github.com/google-gemini/gemini-cli/pull/24439)
46
- - Changelog for v0.36.0-preview.8 by @gemini-cli-robot in
47
- [#24453](https://github.com/google-gemini/gemini-cli/pull/24453)
48
- - feat(cli): change default loadingPhrases to 'off' to hide tips by @keithguerin
49
- in [#24342](https://github.com/google-gemini/gemini-cli/pull/24342)
50
- - fix(cli): ensure agent stops when all declinable tools are cancelled by
51
- @NTaylorMullen in
52
- [#24479](https://github.com/google-gemini/gemini-cli/pull/24479)
53
- - fix(core): enhance sandbox usability and fix build error by @galz10 in
54
- [#24460](https://github.com/google-gemini/gemini-cli/pull/24460)
55
- - Terminal Serializer Optimization by @jacob314 in
56
- [#24485](https://github.com/google-gemini/gemini-cli/pull/24485)
57
- - Auto configure memory. by @jacob314 in
58
- [#24474](https://github.com/google-gemini/gemini-cli/pull/24474)
59
- - Unused error variables in catch block are not allowed by @alisa-alisa in
60
- [#24487](https://github.com/google-gemini/gemini-cli/pull/24487)
61
- - feat(core): add background memory service for skill extraction by @SandyTao520
62
- in [#24274](https://github.com/google-gemini/gemini-cli/pull/24274)
63
- - feat: implement high-signal PR regression check for evaluations by
64
- @alisa-alisa in
65
- [#23937](https://github.com/google-gemini/gemini-cli/pull/23937)
66
- - Fix shell output display by @jacob314 in
67
- [#24490](https://github.com/google-gemini/gemini-cli/pull/24490)
68
- - fix(ui): resolve unwanted vertical spacing around various tool output
69
- treatments by @jwhelangoog in
70
- [#24449](https://github.com/google-gemini/gemini-cli/pull/24449)
71
- - revert(cli): bring back input box and footer visibility in copy mode by
72
- @sehoon38 in [#24504](https://github.com/google-gemini/gemini-cli/pull/24504)
73
- - fix(cli): prevent crash in AnsiOutputText when handling non-array data by
74
- @sehoon38 in [#24498](https://github.com/google-gemini/gemini-cli/pull/24498)
75
- - feat(cli): support default values for environment variables by @ruomengz in
76
- [#24469](https://github.com/google-gemini/gemini-cli/pull/24469)
77
- - Implement background process monitoring and inspection tools by @cocosheng-g
78
- in [#23799](https://github.com/google-gemini/gemini-cli/pull/23799)
79
- - docs(browser-agent): update stale browser agent documentation by @gsquared94
80
- in [#24463](https://github.com/google-gemini/gemini-cli/pull/24463)
81
- - fix: enable browser_agent in integration tests and add localhost fixture tests
82
- by @gsquared94 in
83
- [#24523](https://github.com/google-gemini/gemini-cli/pull/24523)
84
- - fix(browser): handle computer-use model detection for analyze_screenshot by
85
- @gsquared94 in
86
- [#24502](https://github.com/google-gemini/gemini-cli/pull/24502)
87
- - feat(core): Land ContextCompressionService by @joshualitt in
88
- [#24483](https://github.com/google-gemini/gemini-cli/pull/24483)
89
- - feat(core): scope subagent workspace directories via AsyncLocalStorage by
34
+ - refactor(plan): simplify policy priorities and consolidate read-only rules by
35
+ @ruomengz in [#24849](https://github.com/google-gemini/gemini-cli/pull/24849)
36
+ - feat(test-utils): add memory usage integration test harness by @sripasg in
37
+ [#24876](https://github.com/google-gemini/gemini-cli/pull/24876)
38
+ - feat(memory): add /memory inbox command for reviewing extracted skills by
90
39
  @SandyTao520 in
91
- [#24445](https://github.com/google-gemini/gemini-cli/pull/24445)
92
- - Update ink version to 6.6.7 by @jacob314 in
93
- [#24514](https://github.com/google-gemini/gemini-cli/pull/24514)
94
- - fix(acp): handle all InvalidStreamError types gracefully in prompt by @sripasg
95
- in [#24540](https://github.com/google-gemini/gemini-cli/pull/24540)
96
- - Fix crash when vim editor is not found in PATH on Windows by
97
- @Nagajyothi-tammisetti in
98
- [#22423](https://github.com/google-gemini/gemini-cli/pull/22423)
99
- - fix(core): move project memory dir under tmp directory by @SandyTao520 in
100
- [#24542](https://github.com/google-gemini/gemini-cli/pull/24542)
101
- - Enable 'Other' option for yesno question type by @ruomengz in
102
- [#24545](https://github.com/google-gemini/gemini-cli/pull/24545)
103
- - fix(cli): clear stale retry/loading state after cancellation (#21096) by
104
- @Aaxhirrr in [#21960](https://github.com/google-gemini/gemini-cli/pull/21960)
105
- - Changelog for v0.37.0-preview.0 by @gemini-cli-robot in
106
- [#24464](https://github.com/google-gemini/gemini-cli/pull/24464)
107
- - feat(core): implement context-aware persistent policy approvals by @jerop in
108
- [#23257](https://github.com/google-gemini/gemini-cli/pull/23257)
109
- - docs: move agent disabling instructions and update remote agent status by
110
- @jackwotherspoon in
111
- [#24559](https://github.com/google-gemini/gemini-cli/pull/24559)
112
- - feat(cli): migrate nonInteractiveCli to LegacyAgentSession by @adamfweidman in
113
- [#22987](https://github.com/google-gemini/gemini-cli/pull/22987)
114
- - fix(core): unsafe type assertions in Core File System #19712 by
115
- @aniketsaurav18 in
116
- [#19739](https://github.com/google-gemini/gemini-cli/pull/19739)
117
- - fix(ui): hide model quota in /stats and refactor quota display by @danzaharia1
118
- in [#24206](https://github.com/google-gemini/gemini-cli/pull/24206)
119
- - Changelog for v0.36.0 by @gemini-cli-robot in
120
- [#24558](https://github.com/google-gemini/gemini-cli/pull/24558)
121
- - Changelog for v0.37.0-preview.1 by @gemini-cli-robot in
122
- [#24568](https://github.com/google-gemini/gemini-cli/pull/24568)
123
- - docs: add missing .md extensions to internal doc links by @ishaan-arora-1 in
124
- [#24145](https://github.com/google-gemini/gemini-cli/pull/24145)
125
- - fix(ui): fixed table styling by @devr0306 in
126
- [#24565](https://github.com/google-gemini/gemini-cli/pull/24565)
127
- - fix(core): pass includeDirectories to sandbox configuration by @galz10 in
128
- [#24573](https://github.com/google-gemini/gemini-cli/pull/24573)
129
- - feat(ui): enable "TerminalBuffer" mode to solve flicker by @jacob314 in
130
- [#24512](https://github.com/google-gemini/gemini-cli/pull/24512)
131
- - docs: clarify release coordination by @scidomino in
132
- [#24575](https://github.com/google-gemini/gemini-cli/pull/24575)
133
- - fix(core): remove broken PowerShell translation and fix native \_\_write in
134
- Windows sandbox by @scidomino in
135
- [#24571](https://github.com/google-gemini/gemini-cli/pull/24571)
136
- - Add instructions for how to start react in prod and force react to prod mode
137
- by @jacob314 in
138
- [#24590](https://github.com/google-gemini/gemini-cli/pull/24590)
139
- - feat(cli): minimalist sandbox status labels by @galz10 in
140
- [#24582](https://github.com/google-gemini/gemini-cli/pull/24582)
141
- - Feat/browser agent metrics by @kunal-10-cloud in
142
- [#24210](https://github.com/google-gemini/gemini-cli/pull/24210)
143
- - test: fix Windows CI execution and resolve exposed platform failures by
144
- @ehedlund in [#24476](https://github.com/google-gemini/gemini-cli/pull/24476)
145
- - feat(core,cli): prioritize summary for topics (#24608) by @Abhijit-2592 in
146
- [#24609](https://github.com/google-gemini/gemini-cli/pull/24609)
147
- - show color by @jacob314 in
148
- [#24613](https://github.com/google-gemini/gemini-cli/pull/24613)
149
- - feat(cli): enable compact tool output by default (#24509) by @jwhelangoog in
150
- [#24510](https://github.com/google-gemini/gemini-cli/pull/24510)
151
- - fix(core): inject skill system instructions into subagent prompts if activated
152
- by @abhipatel12 in
153
- [#24620](https://github.com/google-gemini/gemini-cli/pull/24620)
154
- - fix(core): improve windows sandbox reliability and fix integration tests by
155
- @ehedlund in [#24480](https://github.com/google-gemini/gemini-cli/pull/24480)
156
- - fix(core): ensure sandbox approvals are correctly persisted and matched for
157
- proactive expansions by @galz10 in
158
- [#24577](https://github.com/google-gemini/gemini-cli/pull/24577)
159
- - feat(cli) Scrollbar for input prompt by @jacob314 in
160
- [#21992](https://github.com/google-gemini/gemini-cli/pull/21992)
161
- - Do not run pr-eval workflow when no steering changes detected by @alisa-alisa
162
- in [#24621](https://github.com/google-gemini/gemini-cli/pull/24621)
163
- - Fix restoration of topic headers. by @gundermanc in
164
- [#24650](https://github.com/google-gemini/gemini-cli/pull/24650)
165
- - feat(core): discourage update topic tool for simple tasks by @Samee24 in
166
- [#24640](https://github.com/google-gemini/gemini-cli/pull/24640)
167
- - fix(core): ensure global temp directory is always in sandbox allowed paths by
168
- @galz10 in [#24638](https://github.com/google-gemini/gemini-cli/pull/24638)
169
- - fix(core): detect uninitialized lines by @jacob314 in
170
- [#24646](https://github.com/google-gemini/gemini-cli/pull/24646)
171
- - docs: update sandboxing documentation and toolSandboxing settings by @galz10
172
- in [#24655](https://github.com/google-gemini/gemini-cli/pull/24655)
173
- - feat(cli): enhance tool confirmation UI and selection layout by @galz10 in
174
- [#24376](https://github.com/google-gemini/gemini-cli/pull/24376)
175
- - feat(acp): add support for `/about` command by @sripasg in
176
- [#24649](https://github.com/google-gemini/gemini-cli/pull/24649)
177
- - feat(cli): add role specific metrics to /stats by @cynthialong0-0 in
178
- [#24659](https://github.com/google-gemini/gemini-cli/pull/24659)
179
- - split context by @jacob314 in
180
- [#24623](https://github.com/google-gemini/gemini-cli/pull/24623)
181
- - fix(cli): remove -S from shebang to fix Windows and BSD execution by
182
- @scidomino in [#24756](https://github.com/google-gemini/gemini-cli/pull/24756)
183
- - Fix issue where topic headers can be posted back to back by @gundermanc in
184
- [#24759](https://github.com/google-gemini/gemini-cli/pull/24759)
185
- - fix(core): handle partial llm_request in BeforeModel hook override by
186
- @krishdef7 in [#22326](https://github.com/google-gemini/gemini-cli/pull/22326)
187
- - fix(ui): improve narration suppression and reduce flicker by @gundermanc in
188
- [#24635](https://github.com/google-gemini/gemini-cli/pull/24635)
189
- - fix(ui): fixed auth race condition causing logo to flicker by @devr0306 in
190
- [#24652](https://github.com/google-gemini/gemini-cli/pull/24652)
191
- - fix(browser): remove premature browser cleanup after subagent invocation by
192
- @gsquared94 in
193
- [#24753](https://github.com/google-gemini/gemini-cli/pull/24753)
194
- - Revert "feat(core,cli): prioritize summary for topics (#24608)" by
195
- @Abhijit-2592 in
196
- [#24777](https://github.com/google-gemini/gemini-cli/pull/24777)
197
- - relax tool sandboxing overrides for plan mode to match defaults. by
198
- @DavidAPierce in
199
- [#24762](https://github.com/google-gemini/gemini-cli/pull/24762)
200
- - fix(cli): respect global environment variable allowlist by @scidomino in
201
- [#24767](https://github.com/google-gemini/gemini-cli/pull/24767)
202
- - fix(cli): ensure skills list outputs to stdout in non-interactive environments
40
+ [#24544](https://github.com/google-gemini/gemini-cli/pull/24544)
41
+ - chore(release): bump version to 0.39.0-nightly.20260408.e77b22e63 by
42
+ @gemini-cli-robot in
43
+ [#24939](https://github.com/google-gemini/gemini-cli/pull/24939)
44
+ - fix(core): ensure robust sandbox cleanup in all process execution paths by
45
+ @ehedlund in [#24763](https://github.com/google-gemini/gemini-cli/pull/24763)
46
+ - chore: update ink version to 6.6.8 by @jacob314 in
47
+ [#24934](https://github.com/google-gemini/gemini-cli/pull/24934)
48
+ - Changelog for v0.38.0-preview.0 by @gemini-cli-robot in
49
+ [#24938](https://github.com/google-gemini/gemini-cli/pull/24938)
50
+ - chore: ignore conductor directory by @JayadityaGit in
51
+ [#22128](https://github.com/google-gemini/gemini-cli/pull/22128)
52
+ - Changelog for v0.37.0 by @gemini-cli-robot in
53
+ [#24940](https://github.com/google-gemini/gemini-cli/pull/24940)
54
+ - feat(plan): require user confirmation for activate_skill in Plan Mode by
55
+ @ruomengz in [#24946](https://github.com/google-gemini/gemini-cli/pull/24946)
56
+ - feat(test-utils): add CPU performance integration test harness by @sripasg in
57
+ [#24951](https://github.com/google-gemini/gemini-cli/pull/24951)
58
+ - fix(cli-ui): enable Ctrl+Backspace for word deletion in Windows Terminal by
59
+ @dogukanozen in
60
+ [#21447](https://github.com/google-gemini/gemini-cli/pull/21447)
61
+ - test(sdk): add unit tests for GeminiCliSession by @AdamyaSingh7 in
62
+ [#21897](https://github.com/google-gemini/gemini-cli/pull/21897)
63
+ - fix(core): resolve windows symlink bypass and stabilize sandbox integration
64
+ tests by @ehedlund in
65
+ [#24834](https://github.com/google-gemini/gemini-cli/pull/24834)
66
+ - fix(cli): restore file path display in edit and write tool confirmations by
67
+ @jwhelangoog in
68
+ [#24974](https://github.com/google-gemini/gemini-cli/pull/24974)
69
+ - feat(core): refine shell tool description display logic by @jwhelangoog in
70
+ [#24903](https://github.com/google-gemini/gemini-cli/pull/24903)
71
+ - fix(core): dynamic session ID injection to resolve resume bugs by @scidomino
72
+ in [#24972](https://github.com/google-gemini/gemini-cli/pull/24972)
73
+ - Update ink version to 6.6.9 by @jacob314 in
74
+ [#24980](https://github.com/google-gemini/gemini-cli/pull/24980)
75
+ - Generalize evals infra to support more types of evals, organization and
76
+ queuing of named suites by @gundermanc in
77
+ [#24941](https://github.com/google-gemini/gemini-cli/pull/24941)
78
+ - fix(cli): optimize startup with lightweight parent process by @sehoon38 in
79
+ [#24667](https://github.com/google-gemini/gemini-cli/pull/24667)
80
+ - refactor(sandbox): use centralized sandbox paths in macOS Seatbelt
81
+ implementation by @ehedlund in
82
+ [#24984](https://github.com/google-gemini/gemini-cli/pull/24984)
83
+ - feat(cli): refine tool output formatting for compact mode by @jwhelangoog in
84
+ [#24677](https://github.com/google-gemini/gemini-cli/pull/24677)
85
+ - fix(sdk): skip broken sendStream tests to unblock nightly by @SandyTao520 in
86
+ [#25000](https://github.com/google-gemini/gemini-cli/pull/25000)
87
+ - refactor(core): use centralized path resolution for Linux sandbox by @ehedlund
88
+ in [#24985](https://github.com/google-gemini/gemini-cli/pull/24985)
89
+ - Support ctrl+shift+g by @jacob314 in
90
+ [#25035](https://github.com/google-gemini/gemini-cli/pull/25035)
91
+ - feat(core): refactor subagent tool to unified invoke_subagent tool by
92
+ @abhipatel12 in
93
+ [#24489](https://github.com/google-gemini/gemini-cli/pull/24489)
94
+ - fix(core): add explicit git identity env vars to prevent sandbox checkpointing
95
+ error by @mrpmohiburrahman in
96
+ [#19775](https://github.com/google-gemini/gemini-cli/pull/19775)
97
+ - fix: respect hideContextPercentage when FooterConfigDialog is closed without
98
+ changes by @chernistry in
99
+ [#24773](https://github.com/google-gemini/gemini-cli/pull/24773)
100
+ - fix(cli): suppress unhandled AbortError logs during request cancellation by
101
+ @euxaristia in
102
+ [#22621](https://github.com/google-gemini/gemini-cli/pull/22621)
103
+ - Automated documentation audit by @g-samroberts in
104
+ [#24567](https://github.com/google-gemini/gemini-cli/pull/24567)
105
+ - feat(cli): implement useAgentStream hook by @mbleigh in
106
+ [#24292](https://github.com/google-gemini/gemini-cli/pull/24292)
107
+ - refactor(plan) Clean default plan toml by @ruomengz in
108
+ [#25037](https://github.com/google-gemini/gemini-cli/pull/25037)
109
+ - refactor(core): remove legacy subagent wrapping tools by @abhipatel12 in
110
+ [#25053](https://github.com/google-gemini/gemini-cli/pull/25053)
111
+ - fix(core): honor retryDelay in RetryInfo for 503 errors by @yunaseoul in
112
+ [#25057](https://github.com/google-gemini/gemini-cli/pull/25057)
113
+ - fix(core): remediate subagent memory leaks using AbortSignal in MessageBus by
114
+ @abhipatel12 in
115
+ [#25048](https://github.com/google-gemini/gemini-cli/pull/25048)
116
+ - feat(cli): wire up useAgentStream in AppContainer by @mbleigh in
117
+ [#24297](https://github.com/google-gemini/gemini-cli/pull/24297)
118
+ - feat(core): migrate chat recording to JSONL streaming by @spencer426 in
119
+ [#23749](https://github.com/google-gemini/gemini-cli/pull/23749)
120
+ - fix(core): clear 5-minute timeouts in oauth flow to prevent memory leaks by
121
+ @spencer426 in
122
+ [#24968](https://github.com/google-gemini/gemini-cli/pull/24968)
123
+ - fix(sandbox): centralize async git worktree resolution and enforce read-only
124
+ security by @ehedlund in
125
+ [#25040](https://github.com/google-gemini/gemini-cli/pull/25040)
126
+ - feat(test): add high-volume shell test and refine perf harness by @sripasg in
127
+ [#24983](https://github.com/google-gemini/gemini-cli/pull/24983)
128
+ - fix(core): silently handle EPERM when listing dir structure by @scidomino in
129
+ [#25066](https://github.com/google-gemini/gemini-cli/pull/25066)
130
+ - Changelog for v0.37.1 by @gemini-cli-robot in
131
+ [#25055](https://github.com/google-gemini/gemini-cli/pull/25055)
132
+ - fix: decode Uint8Array and multi-byte UTF-8 in API error messages by
133
+ @kimjune01 in [#23341](https://github.com/google-gemini/gemini-cli/pull/23341)
134
+ - Automated documentation audit results by @g-samroberts in
135
+ [#22755](https://github.com/google-gemini/gemini-cli/pull/22755)
136
+ - debugging(ui): add optional debugRainbow setting by @jacob314 in
137
+ [#25088](https://github.com/google-gemini/gemini-cli/pull/25088)
138
+ - fix: resolve lifecycle memory leaks by cleaning up listeners and root closures
203
139
  by @spencer426 in
204
- [#24566](https://github.com/google-gemini/gemini-cli/pull/24566)
205
- - Add an eval for and fix unsafe cloning behavior. by @gundermanc in
206
- [#24457](https://github.com/google-gemini/gemini-cli/pull/24457)
207
- - fix(policy): allow complete_task in plan mode by @abhipatel12 in
208
- [#24771](https://github.com/google-gemini/gemini-cli/pull/24771)
209
- - feat(telemetry): add browser agent clearcut metrics by @gsquared94 in
210
- [#24688](https://github.com/google-gemini/gemini-cli/pull/24688)
211
- - feat(cli): support selective topic expansion and click-to-expand by
212
- @Abhijit-2592 in
213
- [#24793](https://github.com/google-gemini/gemini-cli/pull/24793)
214
- - temporarily disable sandbox integration test on windows by @ehedlund in
215
- [#24786](https://github.com/google-gemini/gemini-cli/pull/24786)
216
- - Remove flakey test by @scidomino in
217
- [#24837](https://github.com/google-gemini/gemini-cli/pull/24837)
218
- - Alisa/approve button by @alisa-alisa in
219
- [#24645](https://github.com/google-gemini/gemini-cli/pull/24645)
220
- - feat(hooks): display hook system messages in UI by @mbleigh in
221
- [#24616](https://github.com/google-gemini/gemini-cli/pull/24616)
222
- - fix(core): propagate BeforeModel hook model override end-to-end by @krishdef7
223
- in [#24784](https://github.com/google-gemini/gemini-cli/pull/24784)
224
- - chore: fix formatting for behavioral eval skill reference file by @abhipatel12
225
- in [#24846](https://github.com/google-gemini/gemini-cli/pull/24846)
226
- - fix: use directory junctions on Windows for skill linking by @enjoykumawat in
227
- [#24823](https://github.com/google-gemini/gemini-cli/pull/24823)
228
- - fix(cli): prevent multiple banner increments on remount by @sehoon38 in
229
- [#24843](https://github.com/google-gemini/gemini-cli/pull/24843)
230
- - feat(acp): add /help command by @sripasg in
231
- [#24839](https://github.com/google-gemini/gemini-cli/pull/24839)
232
- - fix(core): remove tmux alternate buffer warning by @jackwotherspoon in
233
- [#24852](https://github.com/google-gemini/gemini-cli/pull/24852)
234
- - Improve sandbox error matching and caching by @DavidAPierce in
235
- [#24550](https://github.com/google-gemini/gemini-cli/pull/24550)
236
- - feat(core): add agent protocol UI types and experimental flag by @mbleigh in
237
- [#24275](https://github.com/google-gemini/gemini-cli/pull/24275)
238
- - feat(core): use experiment flags for default fetch timeouts by @yunaseoul in
239
- [#24261](https://github.com/google-gemini/gemini-cli/pull/24261)
240
- - Revert "fix(ui): improve narration suppression and reduce flicker (#2… by
140
+ [#25049](https://github.com/google-gemini/gemini-cli/pull/25049)
141
+ - docs(cli): updates f12 description to be more precise by @JayadityaGit in
142
+ [#15816](https://github.com/google-gemini/gemini-cli/pull/15816)
143
+ - fix(cli): mark /settings as unsafe to run concurrently by @jacob314 in
144
+ [#25061](https://github.com/google-gemini/gemini-cli/pull/25061)
145
+ - fix(core): remove buffer slice to prevent OOM on large output streams by
146
+ @spencer426 in
147
+ [#25094](https://github.com/google-gemini/gemini-cli/pull/25094)
148
+ - feat(core): persist subagent agentId in tool call records by @abhipatel12 in
149
+ [#25092](https://github.com/google-gemini/gemini-cli/pull/25092)
150
+ - chore(core): increase codebase investigator turn limits to 50 by @abhipatel12
151
+ in [#25125](https://github.com/google-gemini/gemini-cli/pull/25125)
152
+ - refactor(core): consolidate execute() arguments into ExecuteOptions by
153
+ @mbleigh in [#25101](https://github.com/google-gemini/gemini-cli/pull/25101)
154
+ - feat(core): add Strategic Re-evaluation guidance to system prompt by
155
+ @aishaneeshah in
156
+ [#25062](https://github.com/google-gemini/gemini-cli/pull/25062)
157
+ - fix(core): preserve shell execution config fields on update by
158
+ @jasonmatthewsuhari in
159
+ [#25113](https://github.com/google-gemini/gemini-cli/pull/25113)
160
+ - docs: add vi shortcuts and clarify MCP sandbox setup by @chrisjcthomas in
161
+ [#21679](https://github.com/google-gemini/gemini-cli/pull/21679)
162
+ - fix(cli): pass session id to interactive shell executions by
163
+ @jasonmatthewsuhari in
164
+ [#25114](https://github.com/google-gemini/gemini-cli/pull/25114)
165
+ - fix(cli): resolve text sanitization data loss due to C1 control characters by
166
+ @euxaristia in
167
+ [#22624](https://github.com/google-gemini/gemini-cli/pull/22624)
168
+ - feat(core): add large memory regression test by @cynthialong0-0 in
169
+ [#25059](https://github.com/google-gemini/gemini-cli/pull/25059)
170
+ - fix(core): resolve PTY exhaustion and orphan MCP subprocess leaks by
171
+ @spencer426 in
172
+ [#25079](https://github.com/google-gemini/gemini-cli/pull/25079)
173
+ - chore(deps): update vulnerable dependencies via npm audit fix by @scidomino in
174
+ [#25140](https://github.com/google-gemini/gemini-cli/pull/25140)
175
+ - perf(sandbox): optimize Windows sandbox initialization via native ACL
176
+ application by @ehedlund in
177
+ [#25077](https://github.com/google-gemini/gemini-cli/pull/25077)
178
+ - chore: switch from keytar to @github/keytar by @cocosheng-g in
179
+ [#25143](https://github.com/google-gemini/gemini-cli/pull/25143)
180
+ - fix: improve audio MIME normalization and validation in file reads by
181
+ @junaiddshaukat in
182
+ [#21636](https://github.com/google-gemini/gemini-cli/pull/21636)
183
+ - docs: Update docs-audit to include changes in PR body by @g-samroberts in
184
+ [#25153](https://github.com/google-gemini/gemini-cli/pull/25153)
185
+ - docs: correct documentation for enforced authentication type by @cocosheng-g
186
+ in [#25142](https://github.com/google-gemini/gemini-cli/pull/25142)
187
+ - fix(cli): exclude update_topic from confirmation queue count by @Abhijit-2592
188
+ in [#24945](https://github.com/google-gemini/gemini-cli/pull/24945)
189
+ - Memory fix for trace's streamWrapper. by @anthraxmilkshake in
190
+ [#25089](https://github.com/google-gemini/gemini-cli/pull/25089)
191
+ - fix(core): fix quota footer for non-auto models and improve display by
192
+ @jackwotherspoon in
193
+ [#25121](https://github.com/google-gemini/gemini-cli/pull/25121)
194
+ - docs(contributing): clarify self-assignment policy for issues by @jmr in
195
+ [#23087](https://github.com/google-gemini/gemini-cli/pull/23087)
196
+ - feat(core): add skill patching support with /memory inbox integration by
197
+ @SandyTao520 in
198
+ [#25148](https://github.com/google-gemini/gemini-cli/pull/25148)
199
+ - Stop suppressing thoughts and text in model response by @gundermanc in
200
+ [#25073](https://github.com/google-gemini/gemini-cli/pull/25073)
201
+ - fix(release): prefix git hash in nightly versions to prevent semver
202
+ normalization by @SandyTao520 in
203
+ [#25304](https://github.com/google-gemini/gemini-cli/pull/25304)
204
+ - feat(cli): extract QuotaContext and resolve infinite render loop by @Adib234
205
+ in [#24959](https://github.com/google-gemini/gemini-cli/pull/24959)
206
+ - refactor(core): extract and centralize sandbox path utilities by @ehedlund in
207
+ [#25305](https://github.com/google-gemini/gemini-cli/pull/25305)
208
+ - feat(ui): added enhancements to scroll momentum by @devr0306 in
209
+ [#24447](https://github.com/google-gemini/gemini-cli/pull/24447)
210
+ - fix(core): replace custom binary detection with isbinaryfile to correctly
211
+ handle UTF-8 (U+FFFD) by @Anjaligarhwal in
212
+ [#25297](https://github.com/google-gemini/gemini-cli/pull/25297)
213
+ - feat(agent): implement tool-controlled display protocol (Steps 2-3) by
214
+ @mbleigh in [#25134](https://github.com/google-gemini/gemini-cli/pull/25134)
215
+ - Stop showing scrollbar unless we are in terminalBuffer mode by @jacob314 in
216
+ [#25320](https://github.com/google-gemini/gemini-cli/pull/25320)
217
+ - feat: support auth block in MCP servers config in agents by @TanmayVartak in
218
+ [#24770](https://github.com/google-gemini/gemini-cli/pull/24770)
219
+ - fix(core): expose GEMINI_PLANS_DIR to hook environment by @Adib234 in
220
+ [#25296](https://github.com/google-gemini/gemini-cli/pull/25296)
221
+ - feat(core): implement silent fallback for Plan Mode model routing by @jerop in
222
+ [#25317](https://github.com/google-gemini/gemini-cli/pull/25317)
223
+ - fix: correct redirect count increment in fetchJson by @KevinZhao in
224
+ [#24896](https://github.com/google-gemini/gemini-cli/pull/24896)
225
+ - fix(core): prevent secondary crash in ModelRouterService finally block by
241
226
  @gundermanc in
242
- [#24857](https://github.com/google-gemini/gemini-cli/pull/24857)
243
- - refactor(cli): remove duplication in interactive shell awaiting input hint by
244
- @JayadityaGit in
245
- [#24801](https://github.com/google-gemini/gemini-cli/pull/24801)
246
- - refactor(core): make LegacyAgentSession dependencies optional by @mbleigh in
247
- [#24287](https://github.com/google-gemini/gemini-cli/pull/24287)
248
- - Changelog for v0.37.0-preview.2 by @gemini-cli-robot in
249
- [#24848](https://github.com/google-gemini/gemini-cli/pull/24848)
250
- - fix(cli): always show shell command description or actual command by @jacob314
251
- in [#24774](https://github.com/google-gemini/gemini-cli/pull/24774)
252
- - Added flag for ept size and increased default size by @devr0306 in
253
- [#24859](https://github.com/google-gemini/gemini-cli/pull/24859)
254
- - fix(core): dispose Scheduler to prevent McpProgress listener leak by
255
- @Anjaligarhwal in
256
- [#24870](https://github.com/google-gemini/gemini-cli/pull/24870)
257
- - fix(cli): switch default back to terminalBuffer=false and fix regressions
258
- introduced for that mode by @jacob314 in
259
- [#24873](https://github.com/google-gemini/gemini-cli/pull/24873)
260
- - feat(cli): switch to ctrl+g from ctrl-x by @jacob314 in
261
- [#24861](https://github.com/google-gemini/gemini-cli/pull/24861)
262
- - fix: isolate concurrent browser agent instances by @gsquared94 in
263
- [#24794](https://github.com/google-gemini/gemini-cli/pull/24794)
264
- - docs: update MCP server OAuth redirect port documentation by @adamfweidman in
265
- [#24844](https://github.com/google-gemini/gemini-cli/pull/24844)
227
+ [#25333](https://github.com/google-gemini/gemini-cli/pull/25333)
228
+ - feat(core): introduce decoupled ContextManager and Sidecar architecture by
229
+ @joshualitt in
230
+ [#24752](https://github.com/google-gemini/gemini-cli/pull/24752)
231
+ - docs(core): update generalist agent documentation by @abhipatel12 in
232
+ [#25325](https://github.com/google-gemini/gemini-cli/pull/25325)
233
+ - chore(mcp): check MCP error code over brittle string match by @jackwotherspoon
234
+ in [#25381](https://github.com/google-gemini/gemini-cli/pull/25381)
235
+ - feat(plan): update plan mode prompt to allow showing plan content by @ruomengz
236
+ in [#25058](https://github.com/google-gemini/gemini-cli/pull/25058)
237
+ - test(core): improve sandbox integration test coverage and fix OS-specific
238
+ failures by @ehedlund in
239
+ [#25307](https://github.com/google-gemini/gemini-cli/pull/25307)
240
+ - fix(core): use debug level for keychain fallback logging by @ehedlund in
241
+ [#25398](https://github.com/google-gemini/gemini-cli/pull/25398)
242
+ - feat(test): add a performance test in asian language by @cynthialong0-0 in
243
+ [#25392](https://github.com/google-gemini/gemini-cli/pull/25392)
244
+ - feat(cli): enable mouse clicking for cursor positioning in AskUser multi-line
245
+ answers by @Adib234 in
246
+ [#24630](https://github.com/google-gemini/gemini-cli/pull/24630)
247
+ - fix(core): detect kmscon terminal as supporting true color by @claygeo in
248
+ [#25282](https://github.com/google-gemini/gemini-cli/pull/25282)
249
+ - ci: add agent session drift check workflow by @adamfweidman in
250
+ [#25389](https://github.com/google-gemini/gemini-cli/pull/25389)
251
+ - use macos-latest-large runner where applicable. by @scidomino in
252
+ [#25413](https://github.com/google-gemini/gemini-cli/pull/25413)
253
+ - Changelog for v0.37.2 by @gemini-cli-robot in
254
+ [#25336](https://github.com/google-gemini/gemini-cli/pull/25336)
266
255
 
267
256
  **Full Changelog**:
268
- https://github.com/google-gemini/gemini-cli/compare/v0.37.0-preview.2...v0.38.0-preview.0
257
+ https://github.com/google-gemini/gemini-cli/compare/v0.38.0-preview.0...v0.39.0-preview.0