@google/gemini-cli-core 0.36.0-preview.8 → 0.37.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 (472) hide show
  1. package/dist/docs/CONTRIBUTING.md +10 -7
  2. package/dist/docs/assets/theme-tokyonight-dark.png +0 -0
  3. package/dist/docs/changelogs/index.md +24 -0
  4. package/dist/docs/changelogs/latest.md +366 -459
  5. package/dist/docs/changelogs/preview.md +362 -356
  6. package/dist/docs/cli/acp-mode.md +126 -0
  7. package/dist/docs/cli/cli-reference.md +1 -1
  8. package/dist/docs/cli/notifications.md +5 -5
  9. package/dist/docs/cli/plan-mode.md +12 -8
  10. package/dist/docs/cli/sandbox.md +1 -1
  11. package/dist/docs/cli/settings.md +14 -13
  12. package/dist/docs/cli/themes.md +5 -0
  13. package/dist/docs/core/index.md +2 -2
  14. package/dist/docs/core/subagents.md +134 -23
  15. package/dist/docs/get-started/gemini-3.md +1 -1
  16. package/dist/docs/get-started/index.md +127 -1
  17. package/dist/docs/ide-integration/index.md +99 -24
  18. package/dist/docs/index.md +0 -2
  19. package/dist/docs/redirects.json +1 -0
  20. package/dist/docs/reference/commands.md +1 -3
  21. package/dist/docs/reference/configuration.md +182 -91
  22. package/dist/docs/reference/keyboard-shortcuts.md +14 -6
  23. package/dist/docs/reference/policy-engine.md +16 -30
  24. package/dist/docs/reference/tools.md +56 -23
  25. package/dist/docs/resources/quota-and-pricing.md +23 -9
  26. package/dist/docs/sidebar.json +11 -4
  27. package/dist/docs/tools/planning.md +6 -4
  28. package/dist/src/agents/agentLoader.d.ts +12 -12
  29. package/dist/src/agents/agentLoader.js +1 -0
  30. package/dist/src/agents/agentLoader.js.map +1 -1
  31. package/dist/src/agents/browser/automationOverlay.js +2 -10
  32. package/dist/src/agents/browser/automationOverlay.js.map +1 -1
  33. package/dist/src/agents/browser/browserAgentDefinition.js +10 -3
  34. package/dist/src/agents/browser/browserAgentDefinition.js.map +1 -1
  35. package/dist/src/agents/browser/browserAgentFactory.d.ts +4 -4
  36. package/dist/src/agents/browser/browserAgentFactory.js +15 -29
  37. package/dist/src/agents/browser/browserAgentFactory.js.map +1 -1
  38. package/dist/src/agents/browser/browserAgentFactory.test.js +41 -24
  39. package/dist/src/agents/browser/browserAgentFactory.test.js.map +1 -1
  40. package/dist/src/agents/browser/browserAgentInvocation.d.ts +1 -0
  41. package/dist/src/agents/browser/browserAgentInvocation.js +60 -27
  42. package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
  43. package/dist/src/agents/browser/browserAgentInvocation.test.js +59 -5
  44. package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
  45. package/dist/src/agents/browser/browserManager.d.ts +51 -8
  46. package/dist/src/agents/browser/browserManager.js +242 -70
  47. package/dist/src/agents/browser/browserManager.js.map +1 -1
  48. package/dist/src/agents/browser/browserManager.test.js +384 -17
  49. package/dist/src/agents/browser/browserManager.test.js.map +1 -1
  50. package/dist/src/agents/browser/inputBlocker.d.ts +4 -4
  51. package/dist/src/agents/browser/inputBlocker.js +8 -18
  52. package/dist/src/agents/browser/inputBlocker.js.map +1 -1
  53. package/dist/src/agents/browser/inputBlocker.test.js +31 -3
  54. package/dist/src/agents/browser/inputBlocker.test.js.map +1 -1
  55. package/dist/src/agents/browser/mcpToolWrapper.d.ts +1 -1
  56. package/dist/src/agents/browser/mcpToolWrapper.js +9 -6
  57. package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
  58. package/dist/src/agents/browser/mcpToolWrapper.test.js +2 -2
  59. package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
  60. package/dist/src/agents/browser/snapshotSuperseder.d.ts +31 -0
  61. package/dist/src/agents/browser/snapshotSuperseder.js +101 -0
  62. package/dist/src/agents/browser/snapshotSuperseder.js.map +1 -0
  63. package/dist/src/agents/browser/snapshotSuperseder.test.js +158 -0
  64. package/dist/src/agents/browser/snapshotSuperseder.test.js.map +1 -0
  65. package/dist/src/agents/local-executor.d.ts +4 -0
  66. package/dist/src/agents/local-executor.js +46 -19
  67. package/dist/src/agents/local-executor.js.map +1 -1
  68. package/dist/src/agents/local-executor.test.js +118 -18
  69. package/dist/src/agents/local-executor.test.js.map +1 -1
  70. package/dist/src/agents/local-invocation.d.ts +1 -0
  71. package/dist/src/agents/local-invocation.js +19 -9
  72. package/dist/src/agents/local-invocation.js.map +1 -1
  73. package/dist/src/agents/local-invocation.test.js +24 -0
  74. package/dist/src/agents/local-invocation.test.js.map +1 -1
  75. package/dist/src/agents/registry.js +16 -1
  76. package/dist/src/agents/registry.js.map +1 -1
  77. package/dist/src/agents/registry.test.js +67 -0
  78. package/dist/src/agents/registry.test.js.map +1 -1
  79. package/dist/src/agents/types.d.ts +9 -0
  80. package/dist/src/agents/types.js.map +1 -1
  81. package/dist/src/code_assist/oauth2.js +8 -3
  82. package/dist/src/code_assist/oauth2.js.map +1 -1
  83. package/dist/src/code_assist/oauth2.test.js +57 -0
  84. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  85. package/dist/src/code_assist/setup.js +5 -2
  86. package/dist/src/code_assist/setup.js.map +1 -1
  87. package/dist/src/code_assist/setup.test.js +27 -1
  88. package/dist/src/code_assist/setup.test.js.map +1 -1
  89. package/dist/src/code_assist/types.d.ts +80 -80
  90. package/dist/src/config/agent-loop-context.d.ts +2 -0
  91. package/dist/src/config/config.d.ts +81 -16
  92. package/dist/src/config/config.js +146 -50
  93. package/dist/src/config/config.js.map +1 -1
  94. package/dist/src/config/config.test.js +89 -2
  95. package/dist/src/config/config.test.js.map +1 -1
  96. package/dist/src/config/defaultModelConfigs.js +9 -0
  97. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  98. package/dist/src/config/memory.d.ts +1 -0
  99. package/dist/src/config/memory.js +6 -0
  100. package/dist/src/config/memory.js.map +1 -1
  101. package/dist/src/config/storage.d.ts +1 -0
  102. package/dist/src/config/storage.js +4 -0
  103. package/dist/src/config/storage.js.map +1 -1
  104. package/dist/src/config/storage.test.js +5 -0
  105. package/dist/src/config/storage.test.js.map +1 -1
  106. package/dist/src/config/topicState.d.ts +21 -0
  107. package/dist/src/config/topicState.js +41 -0
  108. package/dist/src/config/topicState.js.map +1 -0
  109. package/dist/src/confirmation-bus/types.d.ts +9 -2
  110. package/dist/src/confirmation-bus/types.js +1 -0
  111. package/dist/src/confirmation-bus/types.js.map +1 -1
  112. package/dist/src/context/agentHistoryProvider.d.ts +45 -0
  113. package/dist/src/context/agentHistoryProvider.js +298 -0
  114. package/dist/src/context/agentHistoryProvider.js.map +1 -0
  115. package/dist/src/context/agentHistoryProvider.test.d.ts +6 -0
  116. package/dist/src/context/agentHistoryProvider.test.js +394 -0
  117. package/dist/src/context/agentHistoryProvider.test.js.map +1 -0
  118. package/dist/src/context/chatCompressionService.js.map +1 -0
  119. package/dist/src/context/chatCompressionService.test.js.map +1 -0
  120. package/dist/src/{services → context}/contextManager.d.ts +2 -0
  121. package/dist/src/{services → context}/contextManager.js +18 -9
  122. package/dist/src/context/contextManager.js.map +1 -0
  123. package/dist/src/{services → context}/contextManager.test.js +21 -6
  124. package/dist/src/context/contextManager.test.js.map +1 -0
  125. package/dist/src/context/toolDistillationService.d.ts +38 -0
  126. package/dist/src/context/toolDistillationService.js +170 -0
  127. package/dist/src/context/toolDistillationService.js.map +1 -0
  128. package/dist/src/context/toolDistillationService.test.d.ts +6 -0
  129. package/dist/src/context/toolDistillationService.test.js +83 -0
  130. package/dist/src/context/toolDistillationService.test.js.map +1 -0
  131. package/dist/src/{services → context}/toolOutputMaskingService.d.ts +2 -2
  132. package/dist/src/{services → context}/toolOutputMaskingService.js +7 -7
  133. package/dist/src/context/toolOutputMaskingService.js.map +1 -0
  134. package/dist/src/context/toolOutputMaskingService.test.d.ts +6 -0
  135. package/dist/src/{services → context}/toolOutputMaskingService.test.js +4 -5
  136. package/dist/src/context/toolOutputMaskingService.test.js.map +1 -0
  137. package/dist/src/context/truncation.d.ts +26 -0
  138. package/dist/src/context/truncation.js +102 -0
  139. package/dist/src/context/truncation.js.map +1 -0
  140. package/dist/src/core/client.d.ts +3 -1
  141. package/dist/src/core/client.js +23 -13
  142. package/dist/src/core/client.js.map +1 -1
  143. package/dist/src/core/client.test.js +29 -34
  144. package/dist/src/core/client.test.js.map +1 -1
  145. package/dist/src/core/contentGenerator.d.ts +0 -1
  146. package/dist/src/core/contentGenerator.js +2 -28
  147. package/dist/src/core/contentGenerator.js.map +1 -1
  148. package/dist/src/core/contentGenerator.test.js +1 -101
  149. package/dist/src/core/contentGenerator.test.js.map +1 -1
  150. package/dist/src/core/geminiChat.js +4 -5
  151. package/dist/src/core/geminiChat.js.map +1 -1
  152. package/dist/src/core/geminiChat.test.js +71 -18
  153. package/dist/src/core/geminiChat.test.js.map +1 -1
  154. package/dist/src/core/prompts-substitution.test.js +5 -0
  155. package/dist/src/core/prompts-substitution.test.js.map +1 -1
  156. package/dist/src/core/prompts.test.js +3 -0
  157. package/dist/src/core/prompts.test.js.map +1 -1
  158. package/dist/src/generated/git-commit.d.ts +2 -2
  159. package/dist/src/generated/git-commit.js +2 -2
  160. package/dist/src/index.d.ts +7 -3
  161. package/dist/src/index.js +9 -5
  162. package/dist/src/index.js.map +1 -1
  163. package/dist/src/policy/config.d.ts +1 -1
  164. package/dist/src/policy/config.js +5 -2
  165. package/dist/src/policy/config.js.map +1 -1
  166. package/dist/src/policy/policies/discovered.toml +7 -0
  167. package/dist/src/policy/policies/non-interactive.toml +7 -0
  168. package/dist/src/policy/policies/plan.toml +25 -0
  169. package/dist/src/policy/policies/read-only.toml +6 -0
  170. package/dist/src/policy/policies/sandbox-default.toml +3 -2
  171. package/dist/src/policy/policies/write.toml +21 -0
  172. package/dist/src/policy/policies/yolo.toml +1 -1
  173. package/dist/src/policy/policy-engine.d.ts +2 -4
  174. package/dist/src/policy/policy-engine.js +24 -37
  175. package/dist/src/policy/policy-engine.js.map +1 -1
  176. package/dist/src/policy/policy-engine.test.js +107 -29
  177. package/dist/src/policy/policy-engine.test.js.map +1 -1
  178. package/dist/src/policy/topic-policy.test.d.ts +6 -0
  179. package/dist/src/policy/topic-policy.test.js +48 -0
  180. package/dist/src/policy/topic-policy.test.js.map +1 -0
  181. package/dist/src/policy/types.d.ts +3 -6
  182. package/dist/src/policy/types.js.map +1 -1
  183. package/dist/src/prompts/promptProvider.js +20 -4
  184. package/dist/src/prompts/promptProvider.js.map +1 -1
  185. package/dist/src/prompts/promptProvider.test.js +84 -1
  186. package/dist/src/prompts/promptProvider.test.js.map +1 -1
  187. package/dist/src/prompts/snippets-memory-manager.test.js +1 -1
  188. package/dist/src/prompts/snippets-memory-manager.test.js.map +1 -1
  189. package/dist/src/prompts/snippets.d.ts +3 -4
  190. package/dist/src/prompts/snippets.js +33 -51
  191. package/dist/src/prompts/snippets.js.map +1 -1
  192. package/dist/src/prompts/snippets.legacy.d.ts +6 -4
  193. package/dist/src/prompts/snippets.legacy.js +32 -7
  194. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  195. package/dist/src/sandbox/linux/LinuxSandboxManager.d.ts +11 -1
  196. package/dist/src/sandbox/linux/LinuxSandboxManager.js +261 -27
  197. package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
  198. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js +430 -125
  199. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js.map +1 -1
  200. package/dist/src/sandbox/macos/MacOsSandboxManager.d.ts +7 -22
  201. package/dist/src/sandbox/macos/MacOsSandboxManager.js +58 -57
  202. package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
  203. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +148 -103
  204. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -1
  205. package/dist/src/sandbox/macos/baseProfile.d.ts +1 -1
  206. package/dist/src/sandbox/macos/baseProfile.js +0 -6
  207. package/dist/src/sandbox/macos/baseProfile.js.map +1 -1
  208. package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +10 -10
  209. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +80 -92
  210. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
  211. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +135 -99
  212. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -1
  213. package/dist/src/sandbox/{macos → utils}/commandSafety.d.ts +11 -0
  214. package/dist/src/sandbox/{macos → utils}/commandSafety.js +47 -14
  215. package/dist/src/sandbox/utils/commandSafety.js.map +1 -0
  216. package/dist/src/sandbox/utils/commandUtils.d.ts +9 -0
  217. package/dist/src/sandbox/utils/commandUtils.js +57 -0
  218. package/dist/src/sandbox/utils/commandUtils.js.map +1 -0
  219. package/dist/src/sandbox/utils/fsUtils.d.ts +11 -0
  220. package/dist/src/sandbox/utils/fsUtils.js +82 -0
  221. package/dist/src/sandbox/utils/fsUtils.js.map +1 -0
  222. package/dist/src/sandbox/utils/sandboxDenialUtils.d.ts +12 -0
  223. package/dist/src/sandbox/utils/sandboxDenialUtils.js +68 -0
  224. package/dist/src/sandbox/utils/sandboxDenialUtils.js.map +1 -0
  225. package/dist/src/sandbox/utils/sandboxDenialUtils.test.d.ts +6 -0
  226. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js +37 -0
  227. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js.map +1 -0
  228. package/dist/src/sandbox/utils/sandboxReadWriteUtils.d.ts +5 -0
  229. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js +60 -0
  230. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js.map +1 -0
  231. package/dist/src/sandbox/windows/GeminiSandbox.cs +257 -216
  232. package/dist/src/sandbox/windows/WindowsSandboxManager.d.ts +12 -2
  233. package/dist/src/sandbox/windows/WindowsSandboxManager.js +250 -38
  234. package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
  235. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js +326 -9
  236. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js.map +1 -1
  237. package/dist/src/sandbox/windows/commandSafety.d.ts +19 -0
  238. package/dist/src/sandbox/windows/commandSafety.js +128 -0
  239. package/dist/src/sandbox/windows/commandSafety.js.map +1 -0
  240. package/dist/src/sandbox/windows/commandSafety.test.d.ts +6 -0
  241. package/dist/src/sandbox/windows/commandSafety.test.js +42 -0
  242. package/dist/src/sandbox/windows/commandSafety.test.js.map +1 -0
  243. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.d.ts +12 -0
  244. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js +68 -0
  245. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js.map +1 -0
  246. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.d.ts +6 -0
  247. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js +68 -0
  248. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js.map +1 -0
  249. package/dist/src/scheduler/scheduler.js +12 -2
  250. package/dist/src/scheduler/scheduler.js.map +1 -1
  251. package/dist/src/scheduler/scheduler.test.js +52 -0
  252. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  253. package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
  254. package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
  255. package/dist/src/scheduler/state-manager.js +1 -1
  256. package/dist/src/scheduler/state-manager.js.map +1 -1
  257. package/dist/src/scheduler/state-manager.test.js +10 -0
  258. package/dist/src/scheduler/state-manager.test.js.map +1 -1
  259. package/dist/src/scheduler/tool-executor.js +7 -2
  260. package/dist/src/scheduler/tool-executor.js.map +1 -1
  261. package/dist/src/scheduler/tool-executor.test.js +38 -0
  262. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  263. package/dist/src/scheduler/types.d.ts +4 -2
  264. package/dist/src/services/chatRecordingService.d.ts +1 -13
  265. package/dist/src/services/chatRecordingService.js +45 -46
  266. package/dist/src/services/chatRecordingService.js.map +1 -1
  267. package/dist/src/services/chatRecordingService.test.js +79 -10
  268. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  269. package/dist/src/services/executionLifecycleService.d.ts +43 -6
  270. package/dist/src/services/executionLifecycleService.js +49 -12
  271. package/dist/src/services/executionLifecycleService.js.map +1 -1
  272. package/dist/src/services/executionLifecycleService.test.js +157 -3
  273. package/dist/src/services/executionLifecycleService.test.js.map +1 -1
  274. package/dist/src/services/fileDiscoveryService.d.ts +17 -2
  275. package/dist/src/services/fileDiscoveryService.js +84 -20
  276. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  277. package/dist/src/services/fileDiscoveryService.test.js +67 -1
  278. package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
  279. package/dist/src/services/modelConfigService.d.ts +11 -0
  280. package/dist/src/services/modelConfigService.js +67 -0
  281. package/dist/src/services/modelConfigService.js.map +1 -1
  282. package/dist/src/services/modelConfigService.test.js +30 -0
  283. package/dist/src/services/modelConfigService.test.js.map +1 -1
  284. package/dist/src/services/sandboxManager.d.ts +90 -8
  285. package/dist/src/services/sandboxManager.integration.test.js +438 -0
  286. package/dist/src/services/sandboxManager.integration.test.js.map +1 -0
  287. package/dist/src/services/sandboxManager.js +156 -13
  288. package/dist/src/services/sandboxManager.js.map +1 -1
  289. package/dist/src/services/sandboxManager.test.js +373 -117
  290. package/dist/src/services/sandboxManager.test.js.map +1 -1
  291. package/dist/src/services/sandboxManagerFactory.d.ts +2 -3
  292. package/dist/src/services/sandboxManagerFactory.js +10 -17
  293. package/dist/src/services/sandboxManagerFactory.js.map +1 -1
  294. package/dist/src/services/sandboxedFileSystemService.d.ts +1 -0
  295. package/dist/src/services/sandboxedFileSystemService.js +32 -3
  296. package/dist/src/services/sandboxedFileSystemService.js.map +1 -1
  297. package/dist/src/services/sandboxedFileSystemService.test.js +83 -12
  298. package/dist/src/services/sandboxedFileSystemService.test.js.map +1 -1
  299. package/dist/src/services/shellExecutionService.d.ts +2 -0
  300. package/dist/src/services/shellExecutionService.js +45 -16
  301. package/dist/src/services/shellExecutionService.js.map +1 -1
  302. package/dist/src/services/shellExecutionService.test.js +5 -4
  303. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  304. package/dist/src/services/test-data/resolved-aliases-retry.golden.json +4 -0
  305. package/dist/src/services/test-data/resolved-aliases.golden.json +4 -0
  306. package/dist/src/services/types.d.ts +14 -0
  307. package/dist/src/services/types.js +7 -0
  308. package/dist/src/services/types.js.map +1 -0
  309. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +6 -0
  310. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  311. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +5 -1
  312. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  313. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +2 -1
  314. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +3 -1
  315. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  316. package/dist/src/telemetry/loggers.js +1 -1
  317. package/dist/src/telemetry/loggers.js.map +1 -1
  318. package/dist/src/telemetry/loggers.test.js +8 -3
  319. package/dist/src/telemetry/loggers.test.js.map +1 -1
  320. package/dist/src/telemetry/metrics.d.ts +10 -1
  321. package/dist/src/telemetry/metrics.js +19 -4
  322. package/dist/src/telemetry/metrics.js.map +1 -1
  323. package/dist/src/telemetry/metrics.test.js +44 -0
  324. package/dist/src/telemetry/metrics.test.js.map +1 -1
  325. package/dist/src/telemetry/types.d.ts +3 -3
  326. package/dist/src/telemetry/types.js +9 -4
  327. package/dist/src/telemetry/types.js.map +1 -1
  328. package/dist/src/test-utils/mock-message-bus.d.ts +1 -1
  329. package/dist/src/test-utils/mock-message-bus.js +1 -1
  330. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  331. package/dist/src/tools/definitions/base-declarations.d.ts +6 -0
  332. package/dist/src/tools/definitions/base-declarations.js +7 -0
  333. package/dist/src/tools/definitions/base-declarations.js.map +1 -1
  334. package/dist/src/tools/definitions/coreTools.d.ts +2 -1
  335. package/dist/src/tools/definitions/coreTools.js +9 -3
  336. package/dist/src/tools/definitions/coreTools.js.map +1 -1
  337. package/dist/src/tools/definitions/dynamic-declaration-helpers.d.ts +4 -0
  338. package/dist/src/tools/definitions/dynamic-declaration-helpers.js +29 -2
  339. package/dist/src/tools/definitions/dynamic-declaration-helpers.js.map +1 -1
  340. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +11 -6
  341. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  342. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +10 -4
  343. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  344. package/dist/src/tools/definitions/trackerTools.js +3 -3
  345. package/dist/src/tools/definitions/trackerTools.js.map +1 -1
  346. package/dist/src/tools/definitions/types.d.ts +1 -0
  347. package/dist/src/tools/enter-plan-mode.js +15 -0
  348. package/dist/src/tools/enter-plan-mode.js.map +1 -1
  349. package/dist/src/tools/enter-plan-mode.test.js +25 -0
  350. package/dist/src/tools/enter-plan-mode.test.js.map +1 -1
  351. package/dist/src/tools/grep-utils.d.ts +2 -1
  352. package/dist/src/tools/grep-utils.js +22 -3
  353. package/dist/src/tools/grep-utils.js.map +1 -1
  354. package/dist/src/tools/grep.js +16 -3
  355. package/dist/src/tools/grep.js.map +1 -1
  356. package/dist/src/tools/grep.test.js +34 -6
  357. package/dist/src/tools/grep.test.js.map +1 -1
  358. package/dist/src/tools/ls.js +6 -4
  359. package/dist/src/tools/ls.js.map +1 -1
  360. package/dist/src/tools/ls.test.js +22 -7
  361. package/dist/src/tools/ls.test.js.map +1 -1
  362. package/dist/src/tools/mcp-client-manager.js +6 -3
  363. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  364. package/dist/src/tools/mcp-client-manager.test.js +35 -0
  365. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  366. package/dist/src/tools/memoryTool.d.ts +9 -2
  367. package/dist/src/tools/memoryTool.js +39 -15
  368. package/dist/src/tools/memoryTool.js.map +1 -1
  369. package/dist/src/tools/memoryTool.test.js +61 -2
  370. package/dist/src/tools/memoryTool.test.js.map +1 -1
  371. package/dist/src/tools/read-many-files.js +12 -4
  372. package/dist/src/tools/read-many-files.js.map +1 -1
  373. package/dist/src/tools/read-many-files.test.js +17 -17
  374. package/dist/src/tools/read-many-files.test.js.map +1 -1
  375. package/dist/src/tools/ripGrep.js +14 -1
  376. package/dist/src/tools/ripGrep.js.map +1 -1
  377. package/dist/src/tools/ripGrep.test.js +9 -9
  378. package/dist/src/tools/ripGrep.test.js.map +1 -1
  379. package/dist/src/tools/shell.d.ts +10 -0
  380. package/dist/src/tools/shell.js +97 -124
  381. package/dist/src/tools/shell.js.map +1 -1
  382. package/dist/src/tools/shell.test.js +22 -3
  383. package/dist/src/tools/shell.test.js.map +1 -1
  384. package/dist/src/tools/tool-names.d.ts +4 -4
  385. package/dist/src/tools/tool-names.js +5 -3
  386. package/dist/src/tools/tool-names.js.map +1 -1
  387. package/dist/src/tools/tool-registry.js +11 -1
  388. package/dist/src/tools/tool-registry.js.map +1 -1
  389. package/dist/src/tools/tool-registry.test.js +43 -1
  390. package/dist/src/tools/tool-registry.test.js.map +1 -1
  391. package/dist/src/tools/tools.d.ts +12 -1
  392. package/dist/src/tools/tools.js +15 -0
  393. package/dist/src/tools/tools.js.map +1 -1
  394. package/dist/src/tools/tools.test.js +42 -1
  395. package/dist/src/tools/tools.test.js.map +1 -1
  396. package/dist/src/tools/topicTool.d.ts +29 -0
  397. package/dist/src/tools/topicTool.js +72 -0
  398. package/dist/src/tools/topicTool.js.map +1 -0
  399. package/dist/src/tools/topicTool.test.d.ts +6 -0
  400. package/dist/src/tools/topicTool.test.js +105 -0
  401. package/dist/src/tools/topicTool.test.js.map +1 -0
  402. package/dist/src/tools/web-fetch.js +38 -20
  403. package/dist/src/tools/web-fetch.js.map +1 -1
  404. package/dist/src/tools/web-fetch.test.js +28 -0
  405. package/dist/src/tools/web-fetch.test.js.map +1 -1
  406. package/dist/src/utils/checkpointUtils.d.ts +4 -4
  407. package/dist/src/utils/errors.d.ts +3 -0
  408. package/dist/src/utils/errors.js +28 -6
  409. package/dist/src/utils/errors.js.map +1 -1
  410. package/dist/src/utils/errors.test.js +23 -0
  411. package/dist/src/utils/errors.test.js.map +1 -1
  412. package/dist/src/utils/getFolderStructure.js +1 -1
  413. package/dist/src/utils/getFolderStructure.js.map +1 -1
  414. package/dist/src/utils/gitIgnoreParser.d.ts +2 -2
  415. package/dist/src/utils/gitIgnoreParser.js +28 -50
  416. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  417. package/dist/src/utils/gitIgnoreParser.test.js +51 -185
  418. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  419. package/dist/src/utils/ignoreFileParser.d.ts +2 -2
  420. package/dist/src/utils/ignoreFileParser.js +6 -17
  421. package/dist/src/utils/ignoreFileParser.js.map +1 -1
  422. package/dist/src/utils/ignoreFileParser.test.js +40 -132
  423. package/dist/src/utils/ignoreFileParser.test.js.map +1 -1
  424. package/dist/src/utils/ignorePathUtils.d.ts +11 -0
  425. package/dist/src/utils/ignorePathUtils.js +39 -0
  426. package/dist/src/utils/ignorePathUtils.js.map +1 -0
  427. package/dist/src/utils/ignorePathUtils.test.d.ts +6 -0
  428. package/dist/src/utils/ignorePathUtils.test.js +70 -0
  429. package/dist/src/utils/ignorePathUtils.test.js.map +1 -0
  430. package/dist/src/utils/memoryDiscovery.d.ts +6 -4
  431. package/dist/src/utils/memoryDiscovery.js +66 -41
  432. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  433. package/dist/src/utils/memoryDiscovery.test.js +40 -0
  434. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  435. package/dist/src/utils/memoryImportProcessor.d.ts +1 -1
  436. package/dist/src/utils/memoryImportProcessor.js +24 -15
  437. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  438. package/dist/src/utils/sessionOperations.d.ts +19 -0
  439. package/dist/src/utils/sessionOperations.js +101 -0
  440. package/dist/src/utils/sessionOperations.js.map +1 -0
  441. package/dist/src/utils/sessionOperations.test.d.ts +6 -0
  442. package/dist/src/utils/sessionOperations.test.js +92 -0
  443. package/dist/src/utils/sessionOperations.test.js.map +1 -0
  444. package/dist/src/utils/shell-utils.d.ts +15 -0
  445. package/dist/src/utils/shell-utils.js +43 -2
  446. package/dist/src/utils/shell-utils.js.map +1 -1
  447. package/dist/src/utils/textUtils.d.ts +8 -0
  448. package/dist/src/utils/textUtils.js +16 -0
  449. package/dist/src/utils/textUtils.js.map +1 -1
  450. package/dist/src/utils/tokenCalculation.d.ts +2 -0
  451. package/dist/src/utils/tokenCalculation.js +2 -2
  452. package/dist/src/utils/tokenCalculation.js.map +1 -1
  453. package/dist/tsconfig.tsbuildinfo +1 -1
  454. package/package.json +1 -1
  455. package/dist/docs/get-started/examples.md +0 -141
  456. package/dist/google-gemini-cli-core-0.36.0-preview.7.tgz +0 -0
  457. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js +0 -164
  458. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js.map +0 -1
  459. package/dist/src/sandbox/macos/commandSafety.js.map +0 -1
  460. package/dist/src/services/chatCompressionService.js.map +0 -1
  461. package/dist/src/services/chatCompressionService.test.js.map +0 -1
  462. package/dist/src/services/contextManager.js.map +0 -1
  463. package/dist/src/services/contextManager.test.js.map +0 -1
  464. package/dist/src/services/toolOutputMaskingService.js.map +0 -1
  465. package/dist/src/services/toolOutputMaskingService.test.js.map +0 -1
  466. /package/dist/src/{services/toolOutputMaskingService.test.d.ts → agents/browser/snapshotSuperseder.test.d.ts} +0 -0
  467. /package/dist/src/{services → context}/chatCompressionService.d.ts +0 -0
  468. /package/dist/src/{services → context}/chatCompressionService.js +0 -0
  469. /package/dist/src/{services → context}/chatCompressionService.test.d.ts +0 -0
  470. /package/dist/src/{services → context}/chatCompressionService.test.js +0 -0
  471. /package/dist/src/{services → context}/contextManager.test.d.ts +0 -0
  472. /package/dist/src/{sandbox/macos/MacOsSandboxManager.integration.test.d.ts → services/sandboxManager.integration.test.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
- # Preview release: v0.35.0-preview.5
1
+ # Preview release: v0.36.0-preview.7
2
2
 
3
- Released: March 23, 2026
3
+ Released: March 31, 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,375 +13,381 @@ npm install -g @google/gemini-cli@preview
13
13
 
14
14
  ## Highlights
15
15
 
16
- - **Subagents & Architecture Enhancements**: Enabled subagents and laid the
17
- foundation for subagent tool isolation. Added proxy routing support for remote
18
- A2A subagents and integrated `SandboxManager` to sandbox all process-spawning
19
- tools.
20
- - **CLI & UI Improvements**: Introduced customizable keyboard shortcuts and
21
- support for literal character keybindings. Added missing vim mode motions and
22
- CJK input support. Enabled code splitting and deferred UI loading for improved
23
- performance.
24
- - **Context & Tools Optimization**: JIT context loading is now enabled by
25
- default with deduplication for project memory. Introduced a model-driven
26
- parallel tool scheduler and allowed safe tools to execute concurrently.
27
- - **Security & Extensions**: Implemented cryptographic integrity verification
28
- for extension updates and added a `disableAlwaysAllow` setting to prevent
29
- auto-approvals for enhanced security.
30
- - **Plan Mode & Web Fetch Updates**: Added an 'All the above' option for
31
- multi-select AskUser questions in Plan Mode. Rolled out Stage 1 and Stage 2
32
- security and consistency improvements for the `web_fetch` tool.
16
+ - **Subagent Architecture Enhancements:** Significant updates to subagents,
17
+ including local execution, tool isolation, multi-registry discovery, dynamic
18
+ tool filtering, and JIT context injection.
19
+ - **Enhanced Security & Sandboxing:** Implemented strict macOS sandboxing using
20
+ Seatbelt allowlist, native Windows sandboxing, and support for
21
+ "Write-Protected" governance files.
22
+ - **Agent Context & State Management:** Introduced task tracker protocol
23
+ integration, 'blocked' statuses for tasks/todos, and `AgentSession` for
24
+ improved state management and replay semantics.
25
+ - **Browser & ACP Capabilities:** Added privacy consent for the browser agent,
26
+ sensitive action controls, improved API token usage metadata, and gateway auth
27
+ support via ACP.
28
+ - **CLI & UX Improvements:** Implemented a refreshed Composer layout, expanded
29
+ terminal fallback warnings, dynamic model resolution, and Git worktree support
30
+ for isolated parallel sessions.
33
31
 
34
32
  ## What's Changed
35
33
 
36
- - fix(patch): cherry-pick b2d6dc4 to release/v0.35.0-preview.4-pr-23546
37
- [CONFLICTS] by @gemini-cli-robot in
38
- [#23585](https://github.com/google-gemini/gemini-cli/pull/23585)
39
- - fix(patch): cherry-pick daf3691 to release/v0.35.0-preview.2-pr-23558 to patch
40
- version v0.35.0-preview.2 and create version 0.35.0-preview.3 by
34
+ - fix(patch): cherry-pick 765fb67 to release/v0.36.0-preview.5-pr-24055 to patch
35
+ version v0.36.0-preview.5 and create version 0.36.0-preview.6 by
41
36
  @gemini-cli-robot in
42
- [#23565](https://github.com/google-gemini/gemini-cli/pull/23565)
43
- - fix(patch): cherry-pick 4e5dfd0 to release/v0.35.0-preview.1-pr-23074 to patch
44
- version v0.35.0-preview.1 and create version 0.35.0-preview.2 by
37
+ [#24061](https://github.com/google-gemini/gemini-cli/pull/24061)
38
+ - fix(a2a-server): A2A server should execute ask policies in interactive mode by
39
+ @kschaab in [#23831](https://github.com/google-gemini/gemini-cli/pull/23831)
40
+ - docs(core): document agent_card_json string literal options for remote agents
41
+ by @adamfweidman in
42
+ [#23797](https://github.com/google-gemini/gemini-cli/pull/23797)
43
+ - feat(core): support inline agentCardJson for remote agents by @adamfweidman in
44
+ [#23743](https://github.com/google-gemini/gemini-cli/pull/23743)
45
+ - fix(patch): cherry-pick 055ff92 to release/v0.36.0-preview.0-pr-23672 to patch
46
+ version v0.36.0-preview.0 and create version 0.36.0-preview.1 by
45
47
  @gemini-cli-robot in
46
- [#23134](https://github.com/google-gemini/gemini-cli/pull/23134)
47
- - feat(cli): customizable keyboard shortcuts by @scidomino in
48
- [#21945](https://github.com/google-gemini/gemini-cli/pull/21945)
49
- - feat(core): Thread `AgentLoopContext` through core. by @joshualitt in
50
- [#21944](https://github.com/google-gemini/gemini-cli/pull/21944)
51
- - chore(release): bump version to 0.35.0-nightly.20260311.657f19c1f by
48
+ [#23723](https://github.com/google-gemini/gemini-cli/pull/23723)
49
+ - Changelog for v0.33.2 by @gemini-cli-robot in
50
+ [#22730](https://github.com/google-gemini/gemini-cli/pull/22730)
51
+ - feat(core): multi-registry architecture and tool filtering for subagents by
52
+ @akh64bit in [#22712](https://github.com/google-gemini/gemini-cli/pull/22712)
53
+ - Changelog for v0.34.0-preview.4 by @gemini-cli-robot in
54
+ [#22752](https://github.com/google-gemini/gemini-cli/pull/22752)
55
+ - fix(devtools): use theme-aware text colors for console warnings and errors by
56
+ @SandyTao520 in
57
+ [#22181](https://github.com/google-gemini/gemini-cli/pull/22181)
58
+ - Add support for dynamic model Resolution to ModelConfigService by @kevinjwang1
59
+ in [#22578](https://github.com/google-gemini/gemini-cli/pull/22578)
60
+ - chore(release): bump version to 0.36.0-nightly.20260317.2f90b4653 by
52
61
  @gemini-cli-robot in
53
- [#21966](https://github.com/google-gemini/gemini-cli/pull/21966)
54
- - refactor(a2a): remove legacy CoreToolScheduler by @adamfweidman in
55
- [#21955](https://github.com/google-gemini/gemini-cli/pull/21955)
56
- - feat(ui): add missing vim mode motions (X, ~, r, f/F/t/T, df/dt and friends)
57
- by @aanari in [#21932](https://github.com/google-gemini/gemini-cli/pull/21932)
58
- - Feat/retry fetch notifications by @aishaneeshah in
59
- [#21813](https://github.com/google-gemini/gemini-cli/pull/21813)
60
- - fix(core): remove OAuth check from handleFallback and clean up stray file by
61
- @sehoon38 in [#21962](https://github.com/google-gemini/gemini-cli/pull/21962)
62
- - feat(cli): support literal character keybindings and extended Kitty protocol
63
- keys by @scidomino in
64
- [#21972](https://github.com/google-gemini/gemini-cli/pull/21972)
65
- - fix(ui): clamp cursor to last char after all NORMAL mode deletes by @aanari in
66
- [#21973](https://github.com/google-gemini/gemini-cli/pull/21973)
67
- - test(core): add missing tests for prompts/utils.ts by @krrishverma1805-web in
68
- [#19941](https://github.com/google-gemini/gemini-cli/pull/19941)
69
- - fix(cli): allow scrolling keys in copy mode (Ctrl+S selection mode) by
70
- @nsalerni in [#19933](https://github.com/google-gemini/gemini-cli/pull/19933)
71
- - docs(cli): add custom keybinding documentation by @scidomino in
72
- [#21980](https://github.com/google-gemini/gemini-cli/pull/21980)
73
- - docs: fix misleading YOLO mode description in defaultApprovalMode by
74
- @Gyanranjan-Priyam in
75
- [#21878](https://github.com/google-gemini/gemini-cli/pull/21878)
76
- - fix: clean up /clear and /resume by @jackwotherspoon in
77
- [#22007](https://github.com/google-gemini/gemini-cli/pull/22007)
78
- - fix(core)#20941: reap orphaned descendant processes on PTY abort by @manavmax
79
- in [#21124](https://github.com/google-gemini/gemini-cli/pull/21124)
80
- - fix(core): update language detection to use LSP 3.18 identifiers by @yunaseoul
81
- in [#21931](https://github.com/google-gemini/gemini-cli/pull/21931)
82
- - feat(cli): support removing keybindings via '-' prefix by @scidomino in
83
- [#22042](https://github.com/google-gemini/gemini-cli/pull/22042)
84
- - feat(policy): add --admin-policy flag for supplemental admin policies by
85
- @galz10 in [#20360](https://github.com/google-gemini/gemini-cli/pull/20360)
86
- - merge duplicate imports packages/cli/src subtask1 by @Nixxx19 in
87
- [#22040](https://github.com/google-gemini/gemini-cli/pull/22040)
88
- - perf(core): parallelize user quota and experiments fetching in refreshAuth by
89
- @sehoon38 in [#21648](https://github.com/google-gemini/gemini-cli/pull/21648)
90
- - Changelog for v0.34.0-preview.0 by @gemini-cli-robot in
91
- [#21965](https://github.com/google-gemini/gemini-cli/pull/21965)
92
- - Changelog for v0.33.0 by @gemini-cli-robot in
93
- [#21967](https://github.com/google-gemini/gemini-cli/pull/21967)
94
- - fix(core): handle EISDIR in robustRealpath on Windows by @sehoon38 in
95
- [#21984](https://github.com/google-gemini/gemini-cli/pull/21984)
96
- - feat(core): include initiationMethod in conversation interaction telemetry by
97
- @yunaseoul in [#22054](https://github.com/google-gemini/gemini-cli/pull/22054)
98
- - feat(ui): add vim yank/paste (y/p/P) with unnamed register by @aanari in
99
- [#22026](https://github.com/google-gemini/gemini-cli/pull/22026)
100
- - fix(core): enable numerical routing for api key users by @sehoon38 in
101
- [#21977](https://github.com/google-gemini/gemini-cli/pull/21977)
102
- - feat(telemetry): implement retry attempt telemetry for network related retries
103
- by @aishaneeshah in
104
- [#22027](https://github.com/google-gemini/gemini-cli/pull/22027)
105
- - fix(policy): remove unnecessary escapeRegex from pattern builders by
106
- @spencer426 in
107
- [#21921](https://github.com/google-gemini/gemini-cli/pull/21921)
108
- - fix(core): preserve dynamic tool descriptions on session resume by @sehoon38
109
- in [#18835](https://github.com/google-gemini/gemini-cli/pull/18835)
110
- - chore: allow 'gemini-3.1' in sensitive keyword linter by @scidomino in
111
- [#22065](https://github.com/google-gemini/gemini-cli/pull/22065)
112
- - feat(core): support custom base URL via env vars by @junaiddshaukat in
113
- [#21561](https://github.com/google-gemini/gemini-cli/pull/21561)
114
- - merge duplicate imports packages/cli/src subtask2 by @Nixxx19 in
115
- [#22051](https://github.com/google-gemini/gemini-cli/pull/22051)
116
- - fix(core): silently retry API errors up to 3 times before halting session by
117
- @spencer426 in
118
- [#21989](https://github.com/google-gemini/gemini-cli/pull/21989)
119
- - feat(core): simplify subagent success UI and improve early termination display
120
- by @abhipatel12 in
121
- [#21917](https://github.com/google-gemini/gemini-cli/pull/21917)
122
- - merge duplicate imports packages/cli/src subtask3 by @Nixxx19 in
123
- [#22056](https://github.com/google-gemini/gemini-cli/pull/22056)
124
- - fix(hooks): fix BeforeAgent/AfterAgent inconsistencies (#18514) by @krishdef7
125
- in [#21383](https://github.com/google-gemini/gemini-cli/pull/21383)
126
- - feat(core): implement SandboxManager interface and config schema by @galz10 in
127
- [#21774](https://github.com/google-gemini/gemini-cli/pull/21774)
128
- - docs: document npm deprecation warnings as safe to ignore by @h30s in
129
- [#20692](https://github.com/google-gemini/gemini-cli/pull/20692)
130
- - fix: remove status/need-triage from maintainer-only issues by @SandyTao520 in
131
- [#22044](https://github.com/google-gemini/gemini-cli/pull/22044)
132
- - fix(core): propagate subagent context to policy engine by @NTaylorMullen in
133
- [#22086](https://github.com/google-gemini/gemini-cli/pull/22086)
134
- - fix(cli): resolve skill uninstall failure when skill name is updated by
135
- @NTaylorMullen in
136
- [#22085](https://github.com/google-gemini/gemini-cli/pull/22085)
137
- - docs(plan): clarify interactive plan editing with Ctrl+X by @Adib234 in
138
- [#22076](https://github.com/google-gemini/gemini-cli/pull/22076)
139
- - fix(policy): ensure user policies are loaded when policyPaths is empty by
140
- @NTaylorMullen in
141
- [#22090](https://github.com/google-gemini/gemini-cli/pull/22090)
142
- - Docs: Add documentation for model steering (experimental). by @jkcinouye in
143
- [#21154](https://github.com/google-gemini/gemini-cli/pull/21154)
144
- - Add issue for automated changelogs by @g-samroberts in
145
- [#21912](https://github.com/google-gemini/gemini-cli/pull/21912)
146
- - fix(core): secure argsPattern and revert WEB_FETCH_TOOL_NAME escalation by
62
+ [#22858](https://github.com/google-gemini/gemini-cli/pull/22858)
63
+ - fix(cli): use active sessionId in useLogger and improve resume robustness by
64
+ @mattKorwel in
65
+ [#22606](https://github.com/google-gemini/gemini-cli/pull/22606)
66
+ - fix(cli): expand tilde in policy paths from settings.json by @abhipatel12 in
67
+ [#22772](https://github.com/google-gemini/gemini-cli/pull/22772)
68
+ - fix(core): add actionable warnings for terminal fallbacks (#14426) by
147
69
  @spencer426 in
148
- [#22104](https://github.com/google-gemini/gemini-cli/pull/22104)
149
- - feat(core): differentiate User-Agent for a2a-server and ACP clients by
150
- @bdmorgan in [#22059](https://github.com/google-gemini/gemini-cli/pull/22059)
151
- - refactor(core): extract ExecutionLifecycleService for tool backgrounding by
152
- @adamfweidman in
153
- [#21717](https://github.com/google-gemini/gemini-cli/pull/21717)
154
- - feat: Display pending and confirming tool calls by @sripasg in
155
- [#22106](https://github.com/google-gemini/gemini-cli/pull/22106)
156
- - feat(browser): implement input blocker overlay during automation by
157
- @kunal-10-cloud in
158
- [#21132](https://github.com/google-gemini/gemini-cli/pull/21132)
159
- - fix: register themes on extension load not start by @jackwotherspoon in
160
- [#22148](https://github.com/google-gemini/gemini-cli/pull/22148)
161
- - feat(ui): Do not show Ultra users /upgrade hint (#22154) by @sehoon38 in
162
- [#22156](https://github.com/google-gemini/gemini-cli/pull/22156)
163
- - chore: remove unnecessary log for themes by @jackwotherspoon in
164
- [#22165](https://github.com/google-gemini/gemini-cli/pull/22165)
165
- - fix(core): resolve MCP tool FQN validation, schema export, and wildcards in
166
- subagents by @abhipatel12 in
167
- [#22069](https://github.com/google-gemini/gemini-cli/pull/22069)
168
- - fix(cli): validate --model argument at startup by @JaisalJain in
169
- [#21393](https://github.com/google-gemini/gemini-cli/pull/21393)
170
- - fix(core): handle policy ALLOW for exit_plan_mode by @backnotprop in
171
- [#21802](https://github.com/google-gemini/gemini-cli/pull/21802)
172
- - feat(telemetry): add Clearcut instrumentation for AI credits billing events by
173
- @gsquared94 in
174
- [#22153](https://github.com/google-gemini/gemini-cli/pull/22153)
175
- - feat(core): add google credentials provider for remote agents by @adamfweidman
176
- in [#21024](https://github.com/google-gemini/gemini-cli/pull/21024)
177
- - test(cli): add integration test for node deprecation warnings by @Nixxx19 in
178
- [#20215](https://github.com/google-gemini/gemini-cli/pull/20215)
179
- - feat(cli): allow safe tools to execute concurrently while agent is busy by
180
- @spencer426 in
181
- [#21988](https://github.com/google-gemini/gemini-cli/pull/21988)
182
- - feat(core): implement model-driven parallel tool scheduler by @abhipatel12 in
183
- [#21933](https://github.com/google-gemini/gemini-cli/pull/21933)
184
- - update vulnerable deps by @scidomino in
185
- [#22180](https://github.com/google-gemini/gemini-cli/pull/22180)
186
- - fix(core): fix startup stats to use int values for timestamps and durations by
187
- @yunaseoul in [#22201](https://github.com/google-gemini/gemini-cli/pull/22201)
188
- - fix(core): prevent duplicate tool schemas for instantiated tools by
70
+ [#22211](https://github.com/google-gemini/gemini-cli/pull/22211)
71
+ - feat(tracker): integrate task tracker protocol into core system prompt by
72
+ @anj-s in [#22442](https://github.com/google-gemini/gemini-cli/pull/22442)
73
+ - chore: add posttest build hooks and fix missing dependencies by @NTaylorMullen
74
+ in [#22865](https://github.com/google-gemini/gemini-cli/pull/22865)
75
+ - feat(a2a): add agent acknowledgment command and enhance registry discovery by
76
+ @alisa-alisa in
77
+ [#22389](https://github.com/google-gemini/gemini-cli/pull/22389)
78
+ - fix(cli): automatically add all VSCode workspace folders to Gemini context by
79
+ @sakshisemalti in
80
+ [#21380](https://github.com/google-gemini/gemini-cli/pull/21380)
81
+ - feat: add 'blocked' status to tasks and todos by @anj-s in
82
+ [#22735](https://github.com/google-gemini/gemini-cli/pull/22735)
83
+ - refactor(cli): remove extra newlines in ShellToolMessage.tsx by @NTaylorMullen
84
+ in [#22868](https://github.com/google-gemini/gemini-cli/pull/22868)
85
+ - fix(cli): lazily load settings in onModelChange to prevent stale closure data
86
+ loss by @KumarADITHYA123 in
87
+ [#20403](https://github.com/google-gemini/gemini-cli/pull/20403)
88
+ - feat(core): subagent local execution and tool isolation by @akh64bit in
89
+ [#22718](https://github.com/google-gemini/gemini-cli/pull/22718)
90
+ - fix(cli): resolve subagent grouping and UI state persistence by @abhipatel12
91
+ in [#22252](https://github.com/google-gemini/gemini-cli/pull/22252)
92
+ - refactor(ui): extract SessionBrowser search and navigation components by
189
93
  @abhipatel12 in
190
- [#22204](https://github.com/google-gemini/gemini-cli/pull/22204)
191
- - fix(core): add proxy routing support for remote A2A subagents by @adamfweidman
192
- in [#22199](https://github.com/google-gemini/gemini-cli/pull/22199)
193
- - fix(core/ide): add Antigravity CLI fallbacks by @apfine in
194
- [#22030](https://github.com/google-gemini/gemini-cli/pull/22030)
195
- - fix(browser): fix duplicate function declaration error in browser agent by
196
- @gsquared94 in
197
- [#22207](https://github.com/google-gemini/gemini-cli/pull/22207)
198
- - feat(core): implement Stage 1 improvements for webfetch tool by @aishaneeshah
199
- in [#21313](https://github.com/google-gemini/gemini-cli/pull/21313)
200
- - Changelog for v0.34.0-preview.1 by @gemini-cli-robot in
201
- [#22194](https://github.com/google-gemini/gemini-cli/pull/22194)
202
- - perf(cli): enable code splitting and deferred UI loading by @sehoon38 in
203
- [#22117](https://github.com/google-gemini/gemini-cli/pull/22117)
204
- - fix: remove unused img.png from project root by @SandyTao520 in
205
- [#22222](https://github.com/google-gemini/gemini-cli/pull/22222)
206
- - docs(local model routing): add docs on how to use Gemma for local model
207
- routing by @douglas-reid in
208
- [#21365](https://github.com/google-gemini/gemini-cli/pull/21365)
209
- - feat(a2a): enable native gRPC support and protocol routing by @alisa-alisa in
210
- [#21403](https://github.com/google-gemini/gemini-cli/pull/21403)
211
- - fix(cli): escape @ symbols on paste to prevent unintended file expansion by
212
- @krishdef7 in [#21239](https://github.com/google-gemini/gemini-cli/pull/21239)
213
- - feat(core): add trajectoryId to ConversationOffered telemetry by @yunaseoul in
214
- [#22214](https://github.com/google-gemini/gemini-cli/pull/22214)
215
- - docs: clarify that tools.core is an allowlist for ALL built-in tools by
216
- @hobostay in [#18813](https://github.com/google-gemini/gemini-cli/pull/18813)
217
- - docs(plan): document hooks with plan mode by @ruomengz in
218
- [#22197](https://github.com/google-gemini/gemini-cli/pull/22197)
219
- - Changelog for v0.33.1 by @gemini-cli-robot in
220
- [#22235](https://github.com/google-gemini/gemini-cli/pull/22235)
221
- - build(ci): fix false positive evals trigger on merge commits by @gundermanc in
222
- [#22237](https://github.com/google-gemini/gemini-cli/pull/22237)
223
- - fix(core): explicitly pass messageBus to policy engine for MCP tool saves by
94
+ [#22377](https://github.com/google-gemini/gemini-cli/pull/22377)
95
+ - fix: updates Docker image reference for GitHub MCP server by @jhhornn in
96
+ [#22938](https://github.com/google-gemini/gemini-cli/pull/22938)
97
+ - refactor(cli): group subagent trajectory deletion and use native filesystem
98
+ testing by @abhipatel12 in
99
+ [#22890](https://github.com/google-gemini/gemini-cli/pull/22890)
100
+ - refactor(cli): simplify keypress and mouse providers and update tests by
101
+ @scidomino in [#22853](https://github.com/google-gemini/gemini-cli/pull/22853)
102
+ - Changelog for v0.34.0 by @gemini-cli-robot in
103
+ [#22860](https://github.com/google-gemini/gemini-cli/pull/22860)
104
+ - test(cli): simplify createMockSettings calls by @scidomino in
105
+ [#22952](https://github.com/google-gemini/gemini-cli/pull/22952)
106
+ - feat(ui): format multi-line banner warnings with a bold title by @keithguerin
107
+ in [#22955](https://github.com/google-gemini/gemini-cli/pull/22955)
108
+ - Docs: Remove references to stale Gemini CLI file structure info by
109
+ @g-samroberts in
110
+ [#22976](https://github.com/google-gemini/gemini-cli/pull/22976)
111
+ - feat(ui): remove write todo list tool from UI tips by @aniruddhaadak80 in
112
+ [#22281](https://github.com/google-gemini/gemini-cli/pull/22281)
113
+ - Fix issue where subagent thoughts are appended. by @gundermanc in
114
+ [#22975](https://github.com/google-gemini/gemini-cli/pull/22975)
115
+ - Feat/browser privacy consent by @kunal-10-cloud in
116
+ [#21119](https://github.com/google-gemini/gemini-cli/pull/21119)
117
+ - fix(core): explicitly map execution context in LocalAgentExecutor by @akh64bit
118
+ in [#22949](https://github.com/google-gemini/gemini-cli/pull/22949)
119
+ - feat(plan): support plan mode in non-interactive mode by @ruomengz in
120
+ [#22670](https://github.com/google-gemini/gemini-cli/pull/22670)
121
+ - feat(core): implement strict macOS sandboxing using Seatbelt allowlist by
122
+ @ehedlund in [#22832](https://github.com/google-gemini/gemini-cli/pull/22832)
123
+ - docs: add additional notes by @abhipatel12 in
124
+ [#23008](https://github.com/google-gemini/gemini-cli/pull/23008)
125
+ - fix(cli): resolve duplicate footer on tool cancel via ESC (#21743) by
126
+ @ruomengz in [#21781](https://github.com/google-gemini/gemini-cli/pull/21781)
127
+ - Changelog for v0.35.0-preview.1 by @gemini-cli-robot in
128
+ [#23012](https://github.com/google-gemini/gemini-cli/pull/23012)
129
+ - fix(ui): fix flickering on small terminal heights by @devr0306 in
130
+ [#21416](https://github.com/google-gemini/gemini-cli/pull/21416)
131
+ - fix(acp): provide more meta in tool_call_update by @Mervap in
132
+ [#22663](https://github.com/google-gemini/gemini-cli/pull/22663)
133
+ - docs: add FAQ entry for checking Gemini CLI version by @surajsahani in
134
+ [#21271](https://github.com/google-gemini/gemini-cli/pull/21271)
135
+ - feat(core): resilient subagent tool rejection with contextual feedback by
224
136
  @abhipatel12 in
225
- [#22255](https://github.com/google-gemini/gemini-cli/pull/22255)
226
- - feat(core): Fully migrate packages/core to AgentLoopContext. by @joshualitt in
227
- [#22115](https://github.com/google-gemini/gemini-cli/pull/22115)
228
- - feat(core): increase sub-agent turn and time limits by @bdmorgan in
229
- [#22196](https://github.com/google-gemini/gemini-cli/pull/22196)
230
- - feat(core): instrument file system tools for JIT context discovery by
137
+ [#22951](https://github.com/google-gemini/gemini-cli/pull/22951)
138
+ - fix(cli): correctly handle auto-update for standalone binaries by @bdmorgan in
139
+ [#23038](https://github.com/google-gemini/gemini-cli/pull/23038)
140
+ - feat(core): add content-utils by @adamfweidman in
141
+ [#22984](https://github.com/google-gemini/gemini-cli/pull/22984)
142
+ - fix: circumvent genai sdk requirement for api key when using gateway auth via
143
+ ACP by @sripasg in
144
+ [#23042](https://github.com/google-gemini/gemini-cli/pull/23042)
145
+ - fix(core): don't persist browser consent sentinel in non-interactive mode by
146
+ @jasonmatthewsuhari in
147
+ [#23073](https://github.com/google-gemini/gemini-cli/pull/23073)
148
+ - fix(core): narrow browser agent description to prevent stealing URL tasks from
149
+ web_fetch by @gsquared94 in
150
+ [#23086](https://github.com/google-gemini/gemini-cli/pull/23086)
151
+ - feat(cli): Partial threading of AgentLoopContext. by @joshualitt in
152
+ [#22978](https://github.com/google-gemini/gemini-cli/pull/22978)
153
+ - fix(browser-agent): enable "Allow all server tools" session policy by
154
+ @cynthialong0-0 in
155
+ [#22343](https://github.com/google-gemini/gemini-cli/pull/22343)
156
+ - refactor(cli): integrate real config loading into async test utils by
157
+ @scidomino in [#23040](https://github.com/google-gemini/gemini-cli/pull/23040)
158
+ - feat(core): inject memory and JIT context into subagents by @abhipatel12 in
159
+ [#23032](https://github.com/google-gemini/gemini-cli/pull/23032)
160
+ - Fix logging and virtual list. by @jacob314 in
161
+ [#23080](https://github.com/google-gemini/gemini-cli/pull/23080)
162
+ - feat(core): cap JIT context upward traversal at git root by @SandyTao520 in
163
+ [#23074](https://github.com/google-gemini/gemini-cli/pull/23074)
164
+ - Docs: Minor style updates from initial docs audit. by @g-samroberts in
165
+ [#22872](https://github.com/google-gemini/gemini-cli/pull/22872)
166
+ - feat(core): add experimental memory manager agent to replace save_memory tool
167
+ by @SandyTao520 in
168
+ [#22726](https://github.com/google-gemini/gemini-cli/pull/22726)
169
+ - Changelog for v0.35.0-preview.2 by @gemini-cli-robot in
170
+ [#23142](https://github.com/google-gemini/gemini-cli/pull/23142)
171
+ - Update website issue template for label and title by @g-samroberts in
172
+ [#23036](https://github.com/google-gemini/gemini-cli/pull/23036)
173
+ - fix: upgrade ACP SDK from 0.12 to 0.16.1 by @sripasg in
174
+ [#23132](https://github.com/google-gemini/gemini-cli/pull/23132)
175
+ - Update callouts to work on github. by @g-samroberts in
176
+ [#22245](https://github.com/google-gemini/gemini-cli/pull/22245)
177
+ - feat: ACP: Add token usage metadata to the `send` method's return value by
178
+ @sripasg in [#23148](https://github.com/google-gemini/gemini-cli/pull/23148)
179
+ - fix(plan): clarify that plan mode policies are combined with normal mode by
180
+ @ruomengz in [#23158](https://github.com/google-gemini/gemini-cli/pull/23158)
181
+ - Add ModelChain support to ModelConfigService and make ModelDialog dynamic by
182
+ @kevinjwang1 in
183
+ [#22914](https://github.com/google-gemini/gemini-cli/pull/22914)
184
+ - Ensure that copied extensions are writable in the user's local directory by
185
+ @kevinjwang1 in
186
+ [#23016](https://github.com/google-gemini/gemini-cli/pull/23016)
187
+ - feat(core): implement native Windows sandboxing by @mattKorwel in
188
+ [#21807](https://github.com/google-gemini/gemini-cli/pull/21807)
189
+ - feat(core): add support for admin-forced MCP server installations by
190
+ @gsquared94 in
191
+ [#23163](https://github.com/google-gemini/gemini-cli/pull/23163)
192
+ - chore(lint): ignore .gemini directory and recursive node_modules by
193
+ @mattKorwel in
194
+ [#23211](https://github.com/google-gemini/gemini-cli/pull/23211)
195
+ - feat(cli): conditionally exclude ask_user tool in ACP mode by @nmcnamara-eng
196
+ in [#23045](https://github.com/google-gemini/gemini-cli/pull/23045)
197
+ - feat(core): introduce AgentSession and rename stream events to agent events by
198
+ @mbleigh in [#23159](https://github.com/google-gemini/gemini-cli/pull/23159)
199
+ - feat(worktree): add Git worktree support for isolated parallel sessions by
200
+ @jerop in [#22973](https://github.com/google-gemini/gemini-cli/pull/22973)
201
+ - Add support for linking in the extension registry by @kevinjwang1 in
202
+ [#23153](https://github.com/google-gemini/gemini-cli/pull/23153)
203
+ - feat(extensions): add --skip-settings flag to install command by @Ratish1 in
204
+ [#17212](https://github.com/google-gemini/gemini-cli/pull/17212)
205
+ - feat(telemetry): track if session is running in a Git worktree by @jerop in
206
+ [#23265](https://github.com/google-gemini/gemini-cli/pull/23265)
207
+ - refactor(core): use absolute paths in GEMINI.md context markers by
231
208
  @SandyTao520 in
232
- [#22082](https://github.com/google-gemini/gemini-cli/pull/22082)
233
- - refactor(ui): extract pure session browser utilities by @abhipatel12 in
234
- [#22256](https://github.com/google-gemini/gemini-cli/pull/22256)
235
- - fix(plan): Fix AskUser evals by @Adib234 in
236
- [#22074](https://github.com/google-gemini/gemini-cli/pull/22074)
237
- - fix(settings): prevent j/k navigation keys from intercepting edit buffer input
238
- by @student-ankitpandit in
239
- [#21865](https://github.com/google-gemini/gemini-cli/pull/21865)
240
- - feat(skills): improve async-pr-review workflow and logging by @mattKorwel in
241
- [#21790](https://github.com/google-gemini/gemini-cli/pull/21790)
242
- - refactor(cli): consolidate getErrorMessage utility to core by @scidomino in
243
- [#22190](https://github.com/google-gemini/gemini-cli/pull/22190)
244
- - fix(core): show descriptive error messages when saving settings fails by
245
- @afarber in [#18095](https://github.com/google-gemini/gemini-cli/pull/18095)
246
- - docs(core): add authentication guide for remote subagents by @adamfweidman in
247
- [#22178](https://github.com/google-gemini/gemini-cli/pull/22178)
248
- - docs: overhaul subagents documentation and add /agents command by @abhipatel12
249
- in [#22345](https://github.com/google-gemini/gemini-cli/pull/22345)
250
- - refactor(ui): extract SessionBrowser static ui components by @abhipatel12 in
251
- [#22348](https://github.com/google-gemini/gemini-cli/pull/22348)
252
- - test: add Object.create context regression test and tool confirmation
253
- integration test by @gsquared94 in
254
- [#22356](https://github.com/google-gemini/gemini-cli/pull/22356)
255
- - feat(tracker): return TodoList display for tracker tools by @anj-s in
256
- [#22060](https://github.com/google-gemini/gemini-cli/pull/22060)
257
- - feat(agent): add allowed domain restrictions for browser agent by
209
+ [#23135](https://github.com/google-gemini/gemini-cli/pull/23135)
210
+ - fix(core): add sanitization to sub agent thoughts and centralize utilities by
211
+ @devr0306 in [#22828](https://github.com/google-gemini/gemini-cli/pull/22828)
212
+ - feat(core): refine User-Agent for VS Code traffic (unified format) by
213
+ @sehoon38 in [#23256](https://github.com/google-gemini/gemini-cli/pull/23256)
214
+ - Fix schema for ModelChains by @kevinjwang1 in
215
+ [#23284](https://github.com/google-gemini/gemini-cli/pull/23284)
216
+ - test(cli): refactor tests for async render utilities by @scidomino in
217
+ [#23252](https://github.com/google-gemini/gemini-cli/pull/23252)
218
+ - feat(core): add security prompt for browser agent by @cynthialong0-0 in
219
+ [#23241](https://github.com/google-gemini/gemini-cli/pull/23241)
220
+ - refactor(ide): replace dynamic undici import with static fetch import by
221
+ @cocosheng-g in
222
+ [#23268](https://github.com/google-gemini/gemini-cli/pull/23268)
223
+ - test(cli): address unresolved feedback from PR #23252 by @scidomino in
224
+ [#23303](https://github.com/google-gemini/gemini-cli/pull/23303)
225
+ - feat(browser): add sensitive action controls and read-only noise reduction by
258
226
  @cynthialong0-0 in
259
- [#21775](https://github.com/google-gemini/gemini-cli/pull/21775)
260
- - chore/release: bump version to 0.35.0-nightly.20260313.bb060d7a9 by
261
- @gemini-cli-robot in
262
- [#22251](https://github.com/google-gemini/gemini-cli/pull/22251)
263
- - Move keychain fallback to keychain service by @chrstnb in
264
- [#22332](https://github.com/google-gemini/gemini-cli/pull/22332)
265
- - feat(core): integrate SandboxManager to sandbox all process-spawning tools by
266
- @galz10 in [#22231](https://github.com/google-gemini/gemini-cli/pull/22231)
267
- - fix(cli): support CJK input and full Unicode scalar values in terminal
268
- protocols by @scidomino in
269
- [#22353](https://github.com/google-gemini/gemini-cli/pull/22353)
270
- - Promote stable tests. by @gundermanc in
271
- [#22253](https://github.com/google-gemini/gemini-cli/pull/22253)
272
- - feat(tracker): add tracker policy by @anj-s in
273
- [#22379](https://github.com/google-gemini/gemini-cli/pull/22379)
274
- - feat(security): add disableAlwaysAllow setting to disable auto-approvals by
275
- @galz10 in [#21941](https://github.com/google-gemini/gemini-cli/pull/21941)
276
- - Revert "fix(cli): validate --model argument at startup" by @sehoon38 in
277
- [#22378](https://github.com/google-gemini/gemini-cli/pull/22378)
278
- - fix(mcp): handle equivalent root resource URLs in OAuth validation by @galz10
279
- in [#20231](https://github.com/google-gemini/gemini-cli/pull/20231)
280
- - fix(core): use session-specific temp directory for task tracker by @anj-s in
281
- [#22382](https://github.com/google-gemini/gemini-cli/pull/22382)
282
- - Fix issue where config was undefined. by @gundermanc in
283
- [#22397](https://github.com/google-gemini/gemini-cli/pull/22397)
284
- - fix(core): deduplicate project memory when JIT context is enabled by
227
+ [#22867](https://github.com/google-gemini/gemini-cli/pull/22867)
228
+ - Disabling failing test while investigating by @alisa-alisa in
229
+ [#23311](https://github.com/google-gemini/gemini-cli/pull/23311)
230
+ - fix broken extension link in hooks guide by @Indrapal-70 in
231
+ [#21728](https://github.com/google-gemini/gemini-cli/pull/21728)
232
+ - fix(core): fix agent description indentation by @abhipatel12 in
233
+ [#23315](https://github.com/google-gemini/gemini-cli/pull/23315)
234
+ - Wrap the text under TOML rule for easier readability in policy-engine.md… by
235
+ @CogitationOps in
236
+ [#23076](https://github.com/google-gemini/gemini-cli/pull/23076)
237
+ - fix(extensions): revert broken extension removal behavior by @ehedlund in
238
+ [#23317](https://github.com/google-gemini/gemini-cli/pull/23317)
239
+ - feat(core): set up onboarding telemetry by @yunaseoul in
240
+ [#23118](https://github.com/google-gemini/gemini-cli/pull/23118)
241
+ - Retry evals on API error. by @gundermanc in
242
+ [#23322](https://github.com/google-gemini/gemini-cli/pull/23322)
243
+ - fix(evals): remove tool restrictions and add compile-time guards by
285
244
  @SandyTao520 in
286
- [#22234](https://github.com/google-gemini/gemini-cli/pull/22234)
287
- - feat(prompts): implement Topic-Action-Summary model for verbosity reduction by
288
- @Abhijit-2592 in
289
- [#21503](https://github.com/google-gemini/gemini-cli/pull/21503)
290
- - fix(core): fix manual deletion of subagent histories by @abhipatel12 in
291
- [#22407](https://github.com/google-gemini/gemini-cli/pull/22407)
292
- - Add registry var by @kevinjwang1 in
293
- [#22224](https://github.com/google-gemini/gemini-cli/pull/22224)
294
- - Add ModelDefinitions to ModelConfigService by @kevinjwang1 in
295
- [#22302](https://github.com/google-gemini/gemini-cli/pull/22302)
296
- - fix(cli): improve command conflict handling for skills by @NTaylorMullen in
297
- [#21942](https://github.com/google-gemini/gemini-cli/pull/21942)
298
- - fix(core): merge user settings with extension-provided MCP servers by
245
+ [#23312](https://github.com/google-gemini/gemini-cli/pull/23312)
246
+ - fix(hooks): support 'ask' decision for BeforeTool hooks by @gundermanc in
247
+ [#21146](https://github.com/google-gemini/gemini-cli/pull/21146)
248
+ - feat(browser): add warning message for session mode 'existing' by
249
+ @cynthialong0-0 in
250
+ [#23288](https://github.com/google-gemini/gemini-cli/pull/23288)
251
+ - chore(lint): enforce zero warnings and cleanup syntax restrictions by
252
+ @alisa-alisa in
253
+ [#22902](https://github.com/google-gemini/gemini-cli/pull/22902)
254
+ - fix(cli): add Esc instruction to HooksDialog footer by @abhipatel12 in
255
+ [#23258](https://github.com/google-gemini/gemini-cli/pull/23258)
256
+ - Disallow and suppress misused spread operator. by @gundermanc in
257
+ [#23294](https://github.com/google-gemini/gemini-cli/pull/23294)
258
+ - fix(core): refine CliHelpAgent description for better delegation by
299
259
  @abhipatel12 in
300
- [#22484](https://github.com/google-gemini/gemini-cli/pull/22484)
301
- - fix(core): skip discovery for incomplete MCP configs and resolve merge race
302
- condition by @abhipatel12 in
303
- [#22494](https://github.com/google-gemini/gemini-cli/pull/22494)
304
- - fix(automation): harden stale PR closer permissions and maintainer detection
305
- by @bdmorgan in
306
- [#22558](https://github.com/google-gemini/gemini-cli/pull/22558)
307
- - fix(automation): evaluate staleness before checking protected labels by
308
- @bdmorgan in [#22561](https://github.com/google-gemini/gemini-cli/pull/22561)
309
- - feat(agent): replace the runtime npx for browser agent chrome devtool mcp with
310
- pre-built bundle by @cynthialong0-0 in
311
- [#22213](https://github.com/google-gemini/gemini-cli/pull/22213)
312
- - perf: optimize TrackerService dependency checks by @anj-s in
313
- [#22384](https://github.com/google-gemini/gemini-cli/pull/22384)
314
- - docs(policy): remove trailing space from commandPrefix examples by @kawasin73
315
- in [#22264](https://github.com/google-gemini/gemini-cli/pull/22264)
316
- - fix(a2a-server): resolve unsafe assignment lint errors by @ehedlund in
317
- [#22661](https://github.com/google-gemini/gemini-cli/pull/22661)
318
- - fix: Adjust ToolGroupMessage filtering to hide Confirming and show Canceled
319
- tool calls. by @sripasg in
320
- [#22230](https://github.com/google-gemini/gemini-cli/pull/22230)
321
- - Disallow Object.create() and reflect. by @gundermanc in
322
- [#22408](https://github.com/google-gemini/gemini-cli/pull/22408)
323
- - Guard pro model usage by @sehoon38 in
324
- [#22665](https://github.com/google-gemini/gemini-cli/pull/22665)
325
- - refactor(core): Creates AgentSession abstraction for consolidated agent
326
- interface. by @mbleigh in
327
- [#22270](https://github.com/google-gemini/gemini-cli/pull/22270)
328
- - docs(changelog): remove internal commands from release notes by
260
+ [#23310](https://github.com/google-gemini/gemini-cli/pull/23310)
261
+ - fix(core): enable global session and persistent approval for web_fetch by
262
+ @NTaylorMullen in
263
+ [#23295](https://github.com/google-gemini/gemini-cli/pull/23295)
264
+ - fix(plan): add state transition override to prevent plan mode freeze by
265
+ @Adib234 in [#23020](https://github.com/google-gemini/gemini-cli/pull/23020)
266
+ - fix(cli): record skill activation tool calls in chat history by @NTaylorMullen
267
+ in [#23203](https://github.com/google-gemini/gemini-cli/pull/23203)
268
+ - fix(core): ensure subagent tool updates apply configuration overrides
269
+ immediately by @abhipatel12 in
270
+ [#23161](https://github.com/google-gemini/gemini-cli/pull/23161)
271
+ - fix(cli): resolve flicker at boundaries of list in BaseSelectionList by
329
272
  @jackwotherspoon in
330
- [#22529](https://github.com/google-gemini/gemini-cli/pull/22529)
331
- - feat: enable subagents by @abhipatel12 in
332
- [#22386](https://github.com/google-gemini/gemini-cli/pull/22386)
333
- - feat(extensions): implement cryptographic integrity verification for extension
334
- updates by @ehedlund in
335
- [#21772](https://github.com/google-gemini/gemini-cli/pull/21772)
336
- - feat(tracker): polish UI sorting and formatting by @anj-s in
337
- [#22437](https://github.com/google-gemini/gemini-cli/pull/22437)
338
- - Changelog for v0.34.0-preview.2 by @gemini-cli-robot in
339
- [#22220](https://github.com/google-gemini/gemini-cli/pull/22220)
340
- - fix(core): fix three JIT context bugs in read_file, read_many_files, and
341
- memoryDiscovery by @SandyTao520 in
342
- [#22679](https://github.com/google-gemini/gemini-cli/pull/22679)
343
- - refactor(core): introduce InjectionService with source-aware injection and
344
- backend-native background completions by @adamfweidman in
345
- [#22544](https://github.com/google-gemini/gemini-cli/pull/22544)
346
- - Linux sandbox bubblewrap by @DavidAPierce in
347
- [#22680](https://github.com/google-gemini/gemini-cli/pull/22680)
348
- - feat(core): increase thought signature retry resilience by @bdmorgan in
349
- [#22202](https://github.com/google-gemini/gemini-cli/pull/22202)
350
- - feat(core): implement Stage 2 security and consistency improvements for
351
- web_fetch by @aishaneeshah in
352
- [#22217](https://github.com/google-gemini/gemini-cli/pull/22217)
353
- - refactor(core): replace positional execute params with ExecuteOptions bag by
273
+ [#23298](https://github.com/google-gemini/gemini-cli/pull/23298)
274
+ - test(cli): force generic terminal in tests to fix snapshot failures by
275
+ @abhipatel12 in
276
+ [#23499](https://github.com/google-gemini/gemini-cli/pull/23499)
277
+ - Evals: PR Guidance adding workflow by @alisa-alisa in
278
+ [#23164](https://github.com/google-gemini/gemini-cli/pull/23164)
279
+ - feat(core): refactor SandboxManager to a stateless architecture and introduce
280
+ explicit Deny interface by @ehedlund in
281
+ [#23141](https://github.com/google-gemini/gemini-cli/pull/23141)
282
+ - feat(core): add event-translator and update agent types by @adamfweidman in
283
+ [#22985](https://github.com/google-gemini/gemini-cli/pull/22985)
284
+ - perf(cli): parallelize and background startup cleanup tasks by @sehoon38 in
285
+ [#23545](https://github.com/google-gemini/gemini-cli/pull/23545)
286
+ - fix: "allow always" for commands with paths by @scidomino in
287
+ [#23558](https://github.com/google-gemini/gemini-cli/pull/23558)
288
+ - fix(cli): prevent terminal escape sequences from leaking on exit by
289
+ @mattKorwel in
290
+ [#22682](https://github.com/google-gemini/gemini-cli/pull/22682)
291
+ - feat(cli): implement full "GEMINI CLI" logo for logged-out state by
292
+ @keithguerin in
293
+ [#22412](https://github.com/google-gemini/gemini-cli/pull/22412)
294
+ - fix(plan): reserve minimum height for selection list in AskUserDialog by
295
+ @ruomengz in [#23280](https://github.com/google-gemini/gemini-cli/pull/23280)
296
+ - fix(core): harden AgentSession replay semantics by @adamfweidman in
297
+ [#23548](https://github.com/google-gemini/gemini-cli/pull/23548)
298
+ - test(core): migrate hook tests to scheduler by @abhipatel12 in
299
+ [#23496](https://github.com/google-gemini/gemini-cli/pull/23496)
300
+ - chore(config): disable agents by default by @abhipatel12 in
301
+ [#23546](https://github.com/google-gemini/gemini-cli/pull/23546)
302
+ - fix(ui): make tool confirmations take up entire terminal height by @devr0306
303
+ in [#22366](https://github.com/google-gemini/gemini-cli/pull/22366)
304
+ - fix(core): prevent redundant remote agent loading on model switch by
354
305
  @adamfweidman in
355
- [#22674](https://github.com/google-gemini/gemini-cli/pull/22674)
356
- - feat(config): enable JIT context loading by default by @SandyTao520 in
357
- [#22736](https://github.com/google-gemini/gemini-cli/pull/22736)
358
- - fix(config): ensure discoveryMaxDirs is passed to global config during
359
- initialization by @kevin-ramdass in
360
- [#22744](https://github.com/google-gemini/gemini-cli/pull/22744)
361
- - fix(plan): allowlist get_internal_docs in Plan Mode by @Adib234 in
362
- [#22668](https://github.com/google-gemini/gemini-cli/pull/22668)
363
- - Changelog for v0.34.0-preview.3 by @gemini-cli-robot in
364
- [#22393](https://github.com/google-gemini/gemini-cli/pull/22393)
365
- - feat(core): add foundation for subagent tool isolation by @akh64bit in
366
- [#22708](https://github.com/google-gemini/gemini-cli/pull/22708)
367
- - fix(core): handle surrogate pairs in truncateString by @sehoon38 in
368
- [#22754](https://github.com/google-gemini/gemini-cli/pull/22754)
369
- - fix(cli): override j/k navigation in settings dialog to fix search input
370
- conflict by @sehoon38 in
371
- [#22800](https://github.com/google-gemini/gemini-cli/pull/22800)
372
- - feat(plan): add 'All the above' option to multi-select AskUser questions by
373
- @Adib234 in [#22365](https://github.com/google-gemini/gemini-cli/pull/22365)
374
- - docs: distribute package-specific GEMINI.md context to each package by
375
- @SandyTao520 in
376
- [#22734](https://github.com/google-gemini/gemini-cli/pull/22734)
377
- - fix(cli): clean up stale pasted placeholder metadata after word/line deletions
378
- by @Jomak-x in
379
- [#20375](https://github.com/google-gemini/gemini-cli/pull/20375)
380
- - refactor(core): align JIT memory placement with tiered context model by
306
+ [#23576](https://github.com/google-gemini/gemini-cli/pull/23576)
307
+ - refactor(core): update production type imports from coreToolScheduler by
308
+ @abhipatel12 in
309
+ [#23498](https://github.com/google-gemini/gemini-cli/pull/23498)
310
+ - feat(cli): always prefix extension skills with colon separator by
311
+ @NTaylorMullen in
312
+ [#23566](https://github.com/google-gemini/gemini-cli/pull/23566)
313
+ - fix(core): properly support allowRedirect in policy engine by @scidomino in
314
+ [#23579](https://github.com/google-gemini/gemini-cli/pull/23579)
315
+ - fix(cli): prevent subcommand shadowing and skip auth for commands by
316
+ @mattKorwel in
317
+ [#23177](https://github.com/google-gemini/gemini-cli/pull/23177)
318
+ - fix(test): move flaky tests to non-blocking suite by @mattKorwel in
319
+ [#23259](https://github.com/google-gemini/gemini-cli/pull/23259)
320
+ - Changelog for v0.35.0-preview.3 by @gemini-cli-robot in
321
+ [#23574](https://github.com/google-gemini/gemini-cli/pull/23574)
322
+ - feat(skills): add behavioral-evals skill with fixing and promoting guides by
323
+ @abhipatel12 in
324
+ [#23349](https://github.com/google-gemini/gemini-cli/pull/23349)
325
+ - refactor(core): delete obsolete coreToolScheduler by @abhipatel12 in
326
+ [#23502](https://github.com/google-gemini/gemini-cli/pull/23502)
327
+ - Changelog for v0.35.0-preview.4 by @gemini-cli-robot in
328
+ [#23581](https://github.com/google-gemini/gemini-cli/pull/23581)
329
+ - feat(core): add LegacyAgentSession by @adamfweidman in
330
+ [#22986](https://github.com/google-gemini/gemini-cli/pull/22986)
331
+ - feat(test-utils): add TestMcpServerBuilder and support in TestRig by
332
+ @abhipatel12 in
333
+ [#23491](https://github.com/google-gemini/gemini-cli/pull/23491)
334
+ - fix(core)!: Force policy config to specify toolName by @kschaab in
335
+ [#23330](https://github.com/google-gemini/gemini-cli/pull/23330)
336
+ - eval(save_memory): add multi-turn interactive evals for memoryManager by
381
337
  @SandyTao520 in
382
- [#22766](https://github.com/google-gemini/gemini-cli/pull/22766)
383
- - Linux sandbox seccomp by @DavidAPierce in
384
- [#22815](https://github.com/google-gemini/gemini-cli/pull/22815)
338
+ [#23572](https://github.com/google-gemini/gemini-cli/pull/23572)
339
+ - fix(telemetry): patch memory leak and enforce logPrompts privacy by
340
+ @spencer426 in
341
+ [#23281](https://github.com/google-gemini/gemini-cli/pull/23281)
342
+ - perf(cli): background IDE client to speed up initialization by @sehoon38 in
343
+ [#23603](https://github.com/google-gemini/gemini-cli/pull/23603)
344
+ - fix(cli): prevent Ctrl+D exit when input buffer is not empty by @wtanaka in
345
+ [#23306](https://github.com/google-gemini/gemini-cli/pull/23306)
346
+ - fix: ACP: separate conversational text from execute tool command title by
347
+ @sripasg in [#23179](https://github.com/google-gemini/gemini-cli/pull/23179)
348
+ - feat(evals): add behavioral evaluations for subagent routing by @Samee24 in
349
+ [#23272](https://github.com/google-gemini/gemini-cli/pull/23272)
350
+ - refactor(cli,core): foundational layout, identity management, and type safety
351
+ by @jwhelangoog in
352
+ [#23286](https://github.com/google-gemini/gemini-cli/pull/23286)
353
+ - fix(core): accurately reflect subagent tool failure in UI by @abhipatel12 in
354
+ [#23187](https://github.com/google-gemini/gemini-cli/pull/23187)
355
+ - Changelog for v0.35.0-preview.5 by @gemini-cli-robot in
356
+ [#23606](https://github.com/google-gemini/gemini-cli/pull/23606)
357
+ - feat(ui): implement refreshed UX for Composer layout by @jwhelangoog in
358
+ [#21212](https://github.com/google-gemini/gemini-cli/pull/21212)
359
+ - fix: API key input dialog user interaction when selected Gemini API Key by
360
+ @kartikangiras in
361
+ [#21057](https://github.com/google-gemini/gemini-cli/pull/21057)
362
+ - docs: update `/mcp refresh` to `/mcp reload` by @adamfweidman in
363
+ [#23631](https://github.com/google-gemini/gemini-cli/pull/23631)
364
+ - Implementation of sandbox "Write-Protected" Governance Files by @DavidAPierce
365
+ in [#23139](https://github.com/google-gemini/gemini-cli/pull/23139)
366
+ - feat(sandbox): dynamic macOS sandbox expansion and worktree support by @galz10
367
+ in [#23301](https://github.com/google-gemini/gemini-cli/pull/23301)
368
+ - fix(acp): Pass the cwd to `AcpFileSystemService` to avoid looping failures in
369
+ asking for perms to write plan md file by @sripasg in
370
+ [#23612](https://github.com/google-gemini/gemini-cli/pull/23612)
371
+ - fix(plan): sandbox path resolution in Plan Mode to prevent hallucinations by
372
+ @Adib234 in [#22737](https://github.com/google-gemini/gemini-cli/pull/22737)
373
+ - feat(ui): allow immediate user input during startup by @sehoon38 in
374
+ [#23661](https://github.com/google-gemini/gemini-cli/pull/23661)
375
+ - refactor(sandbox): reorganize Windows sandbox files by @galz10 in
376
+ [#23645](https://github.com/google-gemini/gemini-cli/pull/23645)
377
+ - fix(core): improve remote agent streaming UI and UX by @adamfweidman in
378
+ [#23633](https://github.com/google-gemini/gemini-cli/pull/23633)
379
+ - perf(cli): optimize --version startup time by @sehoon38 in
380
+ [#23671](https://github.com/google-gemini/gemini-cli/pull/23671)
381
+ - refactor(core): stop gemini CLI from producing unsafe casts by @gundermanc in
382
+ [#23611](https://github.com/google-gemini/gemini-cli/pull/23611)
383
+ - use enableAutoUpdate in test rig by @scidomino in
384
+ [#23681](https://github.com/google-gemini/gemini-cli/pull/23681)
385
+ - feat(core): change user-facing auth type from oauth2 to oauth by @adamfweidman
386
+ in [#23639](https://github.com/google-gemini/gemini-cli/pull/23639)
387
+ - chore(deps): fix npm audit vulnerabilities by @scidomino in
388
+ [#23679](https://github.com/google-gemini/gemini-cli/pull/23679)
389
+ - test(evals): fix overlapping act() deadlock in app-test-helper by @Adib234 in
390
+ [#23666](https://github.com/google-gemini/gemini-cli/pull/23666)
385
391
 
386
392
  **Full Changelog**:
387
- https://github.com/google-gemini/gemini-cli/compare/v0.34.0-preview.4...v0.35.0-preview.5
393
+ https://github.com/google-gemini/gemini-cli/compare/v0.35.0-preview.5...v0.36.0-preview.7