@machina.ai/cell-cli-core 1.22.5-rc1 → 1.25.0-rc1

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 (732) hide show
  1. package/dist/docs/AFTER_MERGE_PROMPT.md +26 -0
  2. package/dist/docs/CHANGES.md +124 -0
  3. package/dist/docs/api-proxy.md +27 -0
  4. package/dist/docs/architecture.md +80 -0
  5. package/dist/docs/assets/connected_devtools.png +0 -0
  6. package/dist/docs/assets/gemini-screenshot.png +0 -0
  7. package/dist/docs/assets/monitoring-dashboard-logs.png +0 -0
  8. package/dist/docs/assets/monitoring-dashboard-metrics.png +0 -0
  9. package/dist/docs/assets/monitoring-dashboard-overview.png +0 -0
  10. package/dist/docs/assets/release_patch.png +0 -0
  11. package/dist/docs/assets/theme-ansi-light.png +0 -0
  12. package/dist/docs/assets/theme-ansi.png +0 -0
  13. package/dist/docs/assets/theme-atom-one.png +0 -0
  14. package/dist/docs/assets/theme-ayu-light.png +0 -0
  15. package/dist/docs/assets/theme-ayu.png +0 -0
  16. package/dist/docs/assets/theme-custom.png +0 -0
  17. package/dist/docs/assets/theme-default-light.png +0 -0
  18. package/dist/docs/assets/theme-default.png +0 -0
  19. package/dist/docs/assets/theme-dracula.png +0 -0
  20. package/dist/docs/assets/theme-github-light.png +0 -0
  21. package/dist/docs/assets/theme-github.png +0 -0
  22. package/dist/docs/assets/theme-google-light.png +0 -0
  23. package/dist/docs/assets/theme-xcode-light.png +0 -0
  24. package/dist/docs/changelogs/index.md +612 -0
  25. package/dist/docs/changelogs/latest.md +153 -0
  26. package/dist/docs/changelogs/preview.md +131 -0
  27. package/dist/docs/changelogs/releases.md +1162 -0
  28. package/dist/docs/cli/authentication.md +3 -0
  29. package/dist/docs/cli/checkpointing.md +94 -0
  30. package/dist/docs/cli/commands.md +357 -0
  31. package/dist/docs/cli/custom-commands.md +315 -0
  32. package/dist/docs/cli/enterprise.md +564 -0
  33. package/dist/docs/cli/gemini-ignore.md +71 -0
  34. package/dist/docs/cli/gemini-md.md +109 -0
  35. package/dist/docs/cli/generation-settings.md +210 -0
  36. package/dist/docs/cli/headless.md +388 -0
  37. package/dist/docs/cli/index.md +63 -0
  38. package/dist/docs/cli/keyboard-shortcuts.md +136 -0
  39. package/dist/docs/cli/model-routing.md +37 -0
  40. package/dist/docs/cli/model.md +62 -0
  41. package/dist/docs/cli/sandbox.md +171 -0
  42. package/dist/docs/cli/session-management.md +158 -0
  43. package/dist/docs/cli/settings.md +148 -0
  44. package/dist/docs/cli/skills.md +188 -0
  45. package/dist/docs/cli/system-prompt.md +94 -0
  46. package/dist/docs/cli/telemetry.md +813 -0
  47. package/dist/docs/cli/themes.md +237 -0
  48. package/dist/docs/cli/token-caching.md +20 -0
  49. package/dist/docs/cli/trusted-folders.md +95 -0
  50. package/dist/docs/cli/tutorials/skills-getting-started.md +124 -0
  51. package/dist/docs/cli/tutorials.md +87 -0
  52. package/dist/docs/cli/uninstall.md +47 -0
  53. package/dist/docs/core/index.md +101 -0
  54. package/dist/docs/core/memport.md +246 -0
  55. package/dist/docs/core/policy-engine.md +268 -0
  56. package/dist/docs/core/tools-api.md +131 -0
  57. package/dist/docs/examples/proxy-script.md +83 -0
  58. package/dist/docs/extensions/extension-releasing.md +183 -0
  59. package/dist/docs/extensions/getting-started-extensions.md +244 -0
  60. package/dist/docs/extensions/index.md +343 -0
  61. package/dist/docs/faq.md +153 -0
  62. package/dist/docs/get-started/authentication.md +321 -0
  63. package/dist/docs/get-started/configuration-v1.md +890 -0
  64. package/dist/docs/get-started/configuration.md +1643 -0
  65. package/dist/docs/get-started/examples.md +218 -0
  66. package/dist/docs/get-started/gemini-3.md +101 -0
  67. package/dist/docs/get-started/index.md +71 -0
  68. package/dist/docs/get-started/installation.md +141 -0
  69. package/dist/docs/hooks/best-practices.md +856 -0
  70. package/dist/docs/hooks/index.md +723 -0
  71. package/dist/docs/hooks/reference.md +178 -0
  72. package/dist/docs/hooks/writing-hooks.md +1044 -0
  73. package/dist/docs/ide-integration/ide-companion-spec.md +267 -0
  74. package/dist/docs/ide-integration/index.md +201 -0
  75. package/dist/docs/index.md +147 -0
  76. package/dist/docs/integration-tests.md +211 -0
  77. package/dist/docs/issue-and-pr-automation.md +134 -0
  78. package/dist/docs/local-development.md +128 -0
  79. package/dist/docs/mcp_integration.md +160 -0
  80. package/dist/docs/mermaid/context.mmd +103 -0
  81. package/dist/docs/mermaid/render-path.mmd +64 -0
  82. package/dist/docs/npm.md +62 -0
  83. package/dist/docs/quota-and-pricing.md +158 -0
  84. package/dist/docs/release-confidence.md +164 -0
  85. package/dist/docs/releases.md +540 -0
  86. package/dist/docs/sidebar.json +301 -0
  87. package/dist/docs/tools/file-system.md +217 -0
  88. package/dist/docs/tools/index.md +95 -0
  89. package/dist/docs/tools/mcp-server.md +1045 -0
  90. package/dist/docs/tools/memory.md +54 -0
  91. package/dist/docs/tools/shell.md +260 -0
  92. package/dist/docs/tools/todos.md +56 -0
  93. package/dist/docs/tools/web-fetch.md +59 -0
  94. package/dist/docs/tools/web-search.md +42 -0
  95. package/dist/docs/tos-privacy.md +96 -0
  96. package/dist/docs/troubleshooting.md +162 -0
  97. package/dist/package.json +7 -4
  98. package/dist/src/agents/a2a-client-manager.d.ts +82 -0
  99. package/dist/src/agents/a2a-client-manager.js +295 -0
  100. package/dist/src/agents/a2a-client-manager.js.map +1 -0
  101. package/dist/src/agents/a2a-client-manager.test.js +281 -0
  102. package/dist/src/agents/a2a-client-manager.test.js.map +1 -0
  103. package/dist/src/agents/a2aUtils.d.ts +29 -0
  104. package/dist/src/agents/a2aUtils.js +113 -0
  105. package/dist/src/agents/a2aUtils.js.map +1 -0
  106. package/dist/src/agents/a2aUtils.test.js +147 -0
  107. package/dist/src/agents/a2aUtils.test.js.map +1 -0
  108. package/dist/src/agents/agentLoader.d.ts +68 -0
  109. package/dist/src/agents/agentLoader.js +255 -0
  110. package/dist/src/agents/agentLoader.js.map +1 -0
  111. package/dist/src/agents/agentLoader.test.js +307 -0
  112. package/dist/src/agents/agentLoader.test.js.map +1 -0
  113. package/dist/src/agents/cli-help-agent.d.ts +24 -0
  114. package/dist/src/agents/cli-help-agent.js +85 -0
  115. package/dist/src/agents/cli-help-agent.js.map +1 -0
  116. package/dist/src/agents/cli-help-agent.test.js +65 -0
  117. package/dist/src/agents/cli-help-agent.test.js.map +1 -0
  118. package/dist/src/agents/codebase-investigator.d.ts +2 -2
  119. package/dist/src/agents/codebase-investigator.js +14 -8
  120. package/dist/src/agents/codebase-investigator.js.map +1 -1
  121. package/dist/src/agents/delegate-to-agent-tool.d.ts +2 -2
  122. package/dist/src/agents/delegate-to-agent-tool.js +25 -14
  123. package/dist/src/agents/delegate-to-agent-tool.js.map +1 -1
  124. package/dist/src/agents/delegate-to-agent-tool.test.js +101 -21
  125. package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -1
  126. package/dist/src/agents/{executor.d.ts → local-executor.d.ts} +5 -11
  127. package/dist/src/agents/{executor.js → local-executor.js} +123 -62
  128. package/dist/src/agents/local-executor.js.map +1 -0
  129. package/dist/src/agents/local-executor.test.d.ts +6 -0
  130. package/dist/src/agents/{executor.test.js → local-executor.test.js} +136 -58
  131. package/dist/src/agents/local-executor.test.js.map +1 -0
  132. package/dist/src/agents/{invocation.d.ts → local-invocation.d.ts} +6 -7
  133. package/dist/src/agents/{invocation.js → local-invocation.js} +9 -10
  134. package/dist/src/agents/local-invocation.js.map +1 -0
  135. package/dist/src/agents/local-invocation.test.d.ts +6 -0
  136. package/dist/src/agents/{invocation.test.js → local-invocation.test.js} +29 -20
  137. package/dist/src/agents/local-invocation.test.js.map +1 -0
  138. package/dist/src/agents/registry.d.ts +22 -1
  139. package/dist/src/agents/registry.js +192 -35
  140. package/dist/src/agents/registry.js.map +1 -1
  141. package/dist/src/agents/registry.test.js +407 -33
  142. package/dist/src/agents/registry.test.js.map +1 -1
  143. package/dist/src/agents/remote-invocation.d.ts +35 -0
  144. package/dist/src/agents/remote-invocation.js +126 -0
  145. package/dist/src/agents/remote-invocation.js.map +1 -0
  146. package/dist/src/agents/remote-invocation.test.d.ts +6 -0
  147. package/dist/src/agents/remote-invocation.test.js +201 -0
  148. package/dist/src/agents/remote-invocation.test.js.map +1 -0
  149. package/dist/src/agents/subagent-tool-wrapper.d.ts +2 -2
  150. package/dist/src/agents/subagent-tool-wrapper.js +11 -6
  151. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
  152. package/dist/src/agents/subagent-tool-wrapper.test.js +33 -19
  153. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
  154. package/dist/src/agents/types.d.ts +21 -15
  155. package/dist/src/agents/types.js.map +1 -1
  156. package/dist/src/availability/fallbackIntegration.test.d.ts +6 -0
  157. package/dist/src/availability/fallbackIntegration.test.js +58 -0
  158. package/dist/src/availability/fallbackIntegration.test.js.map +1 -0
  159. package/dist/src/availability/modelAvailabilityService.d.ts +2 -1
  160. package/dist/src/availability/policyHelpers.d.ts +4 -3
  161. package/dist/src/availability/policyHelpers.js +13 -22
  162. package/dist/src/availability/policyHelpers.js.map +1 -1
  163. package/dist/src/availability/policyHelpers.test.js +28 -18
  164. package/dist/src/availability/policyHelpers.test.js.map +1 -1
  165. package/dist/src/code_assist/experiments/experiments.d.ts +1 -1
  166. package/dist/src/code_assist/experiments/experiments.js +21 -0
  167. package/dist/src/code_assist/experiments/experiments.js.map +1 -1
  168. package/dist/src/code_assist/experiments/experiments_local.test.d.ts +6 -0
  169. package/dist/src/code_assist/experiments/experiments_local.test.js +110 -0
  170. package/dist/src/code_assist/experiments/experiments_local.test.js.map +1 -0
  171. package/dist/src/code_assist/oauth-credential-storage.js +3 -4
  172. package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
  173. package/dist/src/code_assist/oauth2.js +32 -2
  174. package/dist/src/code_assist/oauth2.js.map +1 -1
  175. package/dist/src/code_assist/oauth2.test.js +111 -16
  176. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  177. package/dist/src/code_assist/server.d.ts +9 -1
  178. package/dist/src/code_assist/server.js +74 -11
  179. package/dist/src/code_assist/server.js.map +1 -1
  180. package/dist/src/code_assist/server.test.js +199 -27
  181. package/dist/src/code_assist/server.test.js.map +1 -1
  182. package/dist/src/code_assist/setup.js +6 -4
  183. package/dist/src/code_assist/setup.js.map +1 -1
  184. package/dist/src/code_assist/setup.test.js +63 -0
  185. package/dist/src/code_assist/setup.test.js.map +1 -1
  186. package/dist/src/code_assist/telemetry.d.ts +14 -0
  187. package/dist/src/code_assist/telemetry.js +157 -0
  188. package/dist/src/code_assist/telemetry.js.map +1 -0
  189. package/dist/src/code_assist/telemetry.test.d.ts +6 -0
  190. package/dist/src/code_assist/telemetry.test.js +301 -0
  191. package/dist/src/code_assist/telemetry.test.js.map +1 -0
  192. package/dist/src/code_assist/types.d.ts +77 -1
  193. package/dist/src/code_assist/types.js +28 -0
  194. package/dist/src/code_assist/types.js.map +1 -1
  195. package/dist/src/commands/memory.d.ts +11 -0
  196. package/dist/src/commands/memory.js +80 -0
  197. package/dist/src/commands/memory.js.map +1 -0
  198. package/dist/src/commands/memory.test.d.ts +6 -0
  199. package/dist/src/commands/memory.test.js +155 -0
  200. package/dist/src/commands/memory.test.js.map +1 -0
  201. package/dist/src/config/config.d.ts +120 -26
  202. package/dist/src/config/config.js +241 -120
  203. package/dist/src/config/config.js.map +1 -1
  204. package/dist/src/config/config.test.js +215 -43
  205. package/dist/src/config/config.test.js.map +1 -1
  206. package/dist/src/config/flashFallback.test.js +11 -35
  207. package/dist/src/config/flashFallback.test.js.map +1 -1
  208. package/dist/src/config/models.d.ts +8 -9
  209. package/dist/src/config/models.js +18 -15
  210. package/dist/src/config/models.js.map +1 -1
  211. package/dist/src/config/models.test.js +52 -16
  212. package/dist/src/config/models.test.js.map +1 -1
  213. package/dist/src/config/storage.d.ts +5 -0
  214. package/dist/src/config/storage.js +17 -2
  215. package/dist/src/config/storage.js.map +1 -1
  216. package/dist/src/config/storage.test.js +16 -0
  217. package/dist/src/config/storage.test.js.map +1 -1
  218. package/dist/src/confirmation-bus/message-bus.js +2 -1
  219. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  220. package/dist/src/core/baseLlmClient.js +44 -43
  221. package/dist/src/core/baseLlmClient.js.map +1 -1
  222. package/dist/src/core/baseLlmClient.test.js +12 -19
  223. package/dist/src/core/baseLlmClient.test.js.map +1 -1
  224. package/dist/src/core/client.d.ts +7 -1
  225. package/dist/src/core/client.js +245 -114
  226. package/dist/src/core/client.js.map +1 -1
  227. package/dist/src/core/client.test.js +277 -74
  228. package/dist/src/core/client.test.js.map +1 -1
  229. package/dist/src/core/clientHookTriggers.js +2 -2
  230. package/dist/src/core/clientHookTriggers.js.map +1 -1
  231. package/dist/src/core/contentGenerator.js +3 -3
  232. package/dist/src/core/contentGenerator.js.map +1 -1
  233. package/dist/src/core/contentGenerator.test.js +1 -7
  234. package/dist/src/core/contentGenerator.test.js.map +1 -1
  235. package/dist/src/core/coreToolHookTriggers.d.ts +9 -5
  236. package/dist/src/core/coreToolHookTriggers.js +119 -21
  237. package/dist/src/core/coreToolHookTriggers.js.map +1 -1
  238. package/dist/src/core/coreToolHookTriggers.test.d.ts +6 -0
  239. package/dist/src/core/coreToolHookTriggers.test.js +191 -0
  240. package/dist/src/core/coreToolHookTriggers.test.js.map +1 -0
  241. package/dist/src/core/coreToolScheduler.d.ts +7 -93
  242. package/dist/src/core/coreToolScheduler.js +133 -369
  243. package/dist/src/core/coreToolScheduler.js.map +1 -1
  244. package/dist/src/core/coreToolScheduler.test.js +252 -394
  245. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  246. package/dist/src/core/geminiChat.d.ts +26 -1
  247. package/dist/src/core/geminiChat.js +112 -79
  248. package/dist/src/core/geminiChat.js.map +1 -1
  249. package/dist/src/core/geminiChat.test.js +125 -92
  250. package/dist/src/core/geminiChat.test.js.map +1 -1
  251. package/dist/src/core/geminiChatHookTriggers.d.ts +8 -4
  252. package/dist/src/core/geminiChatHookTriggers.js +34 -12
  253. package/dist/src/core/geminiChatHookTriggers.js.map +1 -1
  254. package/dist/src/core/geminiChatHookTriggers.test.d.ts +6 -0
  255. package/dist/src/core/geminiChatHookTriggers.test.js +153 -0
  256. package/dist/src/core/geminiChatHookTriggers.test.js.map +1 -0
  257. package/dist/src/core/geminiChat_network_retry.test.js +4 -6
  258. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
  259. package/dist/src/core/loggingContentGenerator.js +19 -2
  260. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  261. package/dist/src/core/loggingContentGenerator.test.js +30 -0
  262. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  263. package/dist/src/core/nonInteractiveToolExecutor.test.js +4 -4
  264. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  265. package/dist/src/core/prompts.js +37 -13
  266. package/dist/src/core/prompts.js.map +1 -1
  267. package/dist/src/core/prompts.test.js +47 -3
  268. package/dist/src/core/prompts.test.js.map +1 -1
  269. package/dist/src/core/tokenLimits.js +6 -12
  270. package/dist/src/core/tokenLimits.js.map +1 -1
  271. package/dist/src/core/tokenLimits.test.js +8 -4
  272. package/dist/src/core/tokenLimits.test.js.map +1 -1
  273. package/dist/src/core/turn.d.ts +21 -22
  274. package/dist/src/core/turn.js +31 -21
  275. package/dist/src/core/turn.js.map +1 -1
  276. package/dist/src/core/turn.test.js +79 -5
  277. package/dist/src/core/turn.test.js.map +1 -1
  278. package/dist/src/fallback/handler.js +1 -7
  279. package/dist/src/fallback/handler.js.map +1 -1
  280. package/dist/src/fallback/handler.test.js +10 -29
  281. package/dist/src/fallback/handler.test.js.map +1 -1
  282. package/dist/src/generated/git-commit.d.ts +3 -3
  283. package/dist/src/generated/git-commit.js +3 -3
  284. package/dist/src/hooks/hookAggregator.js +7 -0
  285. package/dist/src/hooks/hookAggregator.js.map +1 -1
  286. package/dist/src/hooks/hookEventHandler.d.ts +9 -5
  287. package/dist/src/hooks/hookEventHandler.js +61 -15
  288. package/dist/src/hooks/hookEventHandler.js.map +1 -1
  289. package/dist/src/hooks/hookEventHandler.test.js +223 -8
  290. package/dist/src/hooks/hookEventHandler.test.js.map +1 -1
  291. package/dist/src/hooks/hookPlanner.d.ts +1 -5
  292. package/dist/src/hooks/hookPlanner.js +2 -7
  293. package/dist/src/hooks/hookPlanner.js.map +1 -1
  294. package/dist/src/hooks/hookPlanner.test.js +62 -2
  295. package/dist/src/hooks/hookPlanner.test.js.map +1 -1
  296. package/dist/src/hooks/hookRegistry.d.ts +6 -11
  297. package/dist/src/hooks/hookRegistry.js +41 -14
  298. package/dist/src/hooks/hookRegistry.js.map +1 -1
  299. package/dist/src/hooks/hookRegistry.test.js +166 -2
  300. package/dist/src/hooks/hookRegistry.test.js.map +1 -1
  301. package/dist/src/hooks/hookRunner.d.ts +5 -3
  302. package/dist/src/hooks/hookRunner.js +57 -17
  303. package/dist/src/hooks/hookRunner.js.map +1 -1
  304. package/dist/src/hooks/hookRunner.test.js +172 -35
  305. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  306. package/dist/src/hooks/hookSystem.d.ts +12 -0
  307. package/dist/src/hooks/hookSystem.js +39 -1
  308. package/dist/src/hooks/hookSystem.js.map +1 -1
  309. package/dist/src/hooks/hookTranslator.js +2 -1
  310. package/dist/src/hooks/hookTranslator.js.map +1 -1
  311. package/dist/src/hooks/index.d.ts +1 -2
  312. package/dist/src/hooks/index.js +1 -3
  313. package/dist/src/hooks/index.js.map +1 -1
  314. package/dist/src/hooks/trustedHooks.d.ts +28 -0
  315. package/dist/src/hooks/trustedHooks.js +90 -0
  316. package/dist/src/hooks/trustedHooks.js.map +1 -0
  317. package/dist/src/hooks/trustedHooks.test.d.ts +6 -0
  318. package/dist/src/hooks/trustedHooks.test.js +154 -0
  319. package/dist/src/hooks/trustedHooks.test.js.map +1 -0
  320. package/dist/src/hooks/types.d.ts +41 -9
  321. package/dist/src/hooks/types.js +31 -41
  322. package/dist/src/hooks/types.js.map +1 -1
  323. package/dist/src/hooks/types.test.js +9 -52
  324. package/dist/src/hooks/types.test.js.map +1 -1
  325. package/dist/src/ide/detect-ide.d.ts +4 -0
  326. package/dist/src/ide/detect-ide.js +7 -2
  327. package/dist/src/ide/detect-ide.js.map +1 -1
  328. package/dist/src/ide/detect-ide.test.js +10 -0
  329. package/dist/src/ide/detect-ide.test.js.map +1 -1
  330. package/dist/src/ide/ide-client.js +4 -1
  331. package/dist/src/ide/ide-client.js.map +1 -1
  332. package/dist/src/ide/ide-installer.js +2 -2
  333. package/dist/src/ide/ide-installer.js.map +1 -1
  334. package/dist/src/ide/ide-installer.test.js +11 -2
  335. package/dist/src/ide/ide-installer.test.js.map +1 -1
  336. package/dist/src/index.d.ts +16 -2
  337. package/dist/src/index.js +18 -3
  338. package/dist/src/index.js.map +1 -1
  339. package/dist/src/mcp/oauth-provider.js +7 -3
  340. package/dist/src/mcp/oauth-provider.js.map +1 -1
  341. package/dist/src/mcp/oauth-provider.test.js +4 -1
  342. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  343. package/dist/src/mcp/oauth-utils.d.ts +8 -1
  344. package/dist/src/mcp/oauth-utils.js +31 -2
  345. package/dist/src/mcp/oauth-utils.js.map +1 -1
  346. package/dist/src/mcp/oauth-utils.test.js +42 -0
  347. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  348. package/dist/src/mcp/token-storage/file-token-storage.js +2 -2
  349. package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
  350. package/dist/src/mcp/token-storage/keychain-token-storage.js +1 -1
  351. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  352. package/dist/src/policy/config.js +62 -23
  353. package/dist/src/policy/config.js.map +1 -1
  354. package/dist/src/policy/config.test.js +24 -2
  355. package/dist/src/policy/config.test.js.map +1 -1
  356. package/dist/src/policy/persistence.test.js +1 -1
  357. package/dist/src/policy/persistence.test.js.map +1 -1
  358. package/dist/src/policy/policies/agent.toml +1 -1
  359. package/dist/src/policy/policies/write.toml +5 -0
  360. package/dist/src/policy/policies/yolo.toml +1 -0
  361. package/dist/src/policy/policy-engine.d.ts +4 -0
  362. package/dist/src/policy/policy-engine.js +137 -53
  363. package/dist/src/policy/policy-engine.js.map +1 -1
  364. package/dist/src/policy/policy-engine.test.js +289 -1
  365. package/dist/src/policy/policy-engine.test.js.map +1 -1
  366. package/dist/src/policy/policy-updater.test.js +5 -5
  367. package/dist/src/policy/policy-updater.test.js.map +1 -1
  368. package/dist/src/policy/shell-safety.test.js +371 -8
  369. package/dist/src/policy/shell-safety.test.js.map +1 -1
  370. package/dist/src/policy/toml-loader.d.ts +0 -8
  371. package/dist/src/policy/toml-loader.js +13 -45
  372. package/dist/src/policy/toml-loader.js.map +1 -1
  373. package/dist/src/policy/toml-loader.test.js +13 -0
  374. package/dist/src/policy/toml-loader.test.js.map +1 -1
  375. package/dist/src/policy/types.d.ts +10 -0
  376. package/dist/src/policy/utils.d.ts +21 -0
  377. package/dist/src/policy/utils.js +45 -0
  378. package/dist/src/policy/utils.js.map +1 -0
  379. package/dist/src/policy/utils.test.d.ts +6 -0
  380. package/dist/src/policy/utils.test.js +92 -0
  381. package/dist/src/policy/utils.test.js.map +1 -0
  382. package/dist/src/routing/routingStrategy.d.ts +2 -0
  383. package/dist/src/routing/strategies/classifierStrategy.js +1 -1
  384. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  385. package/dist/src/routing/strategies/classifierStrategy.test.js +16 -0
  386. package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
  387. package/dist/src/routing/strategies/compositeStrategy.js +4 -2
  388. package/dist/src/routing/strategies/compositeStrategy.js.map +1 -1
  389. package/dist/src/routing/strategies/compositeStrategy.test.js +11 -10
  390. package/dist/src/routing/strategies/compositeStrategy.test.js.map +1 -1
  391. package/dist/src/routing/strategies/fallbackStrategy.d.ts +1 -1
  392. package/dist/src/routing/strategies/fallbackStrategy.js +2 -5
  393. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  394. package/dist/src/routing/strategies/fallbackStrategy.test.js +13 -6
  395. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
  396. package/dist/src/routing/strategies/overrideStrategy.d.ts +1 -1
  397. package/dist/src/routing/strategies/overrideStrategy.js +6 -6
  398. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  399. package/dist/src/routing/strategies/overrideStrategy.test.js +14 -0
  400. package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
  401. package/dist/src/scheduler/tool-executor.d.ts +22 -0
  402. package/dist/src/scheduler/tool-executor.js +198 -0
  403. package/dist/src/scheduler/tool-executor.js.map +1 -0
  404. package/dist/src/scheduler/tool-executor.test.d.ts +6 -0
  405. package/dist/src/scheduler/tool-executor.test.js +231 -0
  406. package/dist/src/scheduler/tool-executor.test.js.map +1 -0
  407. package/dist/src/scheduler/tool-modifier.d.ts +23 -0
  408. package/dist/src/scheduler/tool-modifier.js +50 -0
  409. package/dist/src/scheduler/tool-modifier.js.map +1 -0
  410. package/dist/src/scheduler/tool-modifier.test.d.ts +6 -0
  411. package/dist/src/scheduler/tool-modifier.test.js +159 -0
  412. package/dist/src/scheduler/tool-modifier.test.js.map +1 -0
  413. package/dist/src/scheduler/types.d.ts +95 -0
  414. package/dist/src/scheduler/types.js +7 -0
  415. package/dist/src/scheduler/types.js.map +1 -0
  416. package/dist/src/services/chatCompressionService.js +3 -10
  417. package/dist/src/services/chatCompressionService.js.map +1 -1
  418. package/dist/src/services/chatCompressionService.test.js +1 -0
  419. package/dist/src/services/chatCompressionService.test.js.map +1 -1
  420. package/dist/src/services/chatRecordingService.d.ts +7 -1
  421. package/dist/src/services/chatRecordingService.js +20 -2
  422. package/dist/src/services/chatRecordingService.js.map +1 -1
  423. package/dist/src/services/chatRecordingService.test.js +43 -0
  424. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  425. package/dist/src/services/contextManager.d.ts +5 -11
  426. package/dist/src/services/contextManager.js +20 -17
  427. package/dist/src/services/contextManager.js.map +1 -1
  428. package/dist/src/services/contextManager.test.js +40 -41
  429. package/dist/src/services/contextManager.test.js.map +1 -1
  430. package/dist/src/services/environmentSanitization.d.ts +15 -0
  431. package/dist/src/services/environmentSanitization.js +142 -0
  432. package/dist/src/services/environmentSanitization.js.map +1 -0
  433. package/dist/src/services/environmentSanitization.test.d.ts +6 -0
  434. package/dist/src/services/environmentSanitization.test.js +284 -0
  435. package/dist/src/services/environmentSanitization.test.js.map +1 -0
  436. package/dist/src/services/gitService.js +10 -1
  437. package/dist/src/services/gitService.js.map +1 -1
  438. package/dist/src/services/gitService.test.js +28 -2
  439. package/dist/src/services/gitService.test.js.map +1 -1
  440. package/dist/src/services/loopDetectionService.js +2 -1
  441. package/dist/src/services/loopDetectionService.js.map +1 -1
  442. package/dist/src/services/loopDetectionService.test.js +14 -8
  443. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  444. package/dist/src/services/modelConfig.integration.test.js +3 -3
  445. package/dist/src/services/modelConfig.integration.test.js.map +1 -1
  446. package/dist/src/services/modelConfigService.d.ts +38 -4
  447. package/dist/src/services/modelConfigService.js +135 -76
  448. package/dist/src/services/modelConfigService.js.map +1 -1
  449. package/dist/src/services/modelConfigService.test.js +116 -0
  450. package/dist/src/services/modelConfigService.test.js.map +1 -1
  451. package/dist/src/services/shellExecutionService.d.ts +2 -0
  452. package/dist/src/services/shellExecutionService.js +6 -50
  453. package/dist/src/services/shellExecutionService.js.map +1 -1
  454. package/dist/src/services/shellExecutionService.test.js +68 -4
  455. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  456. package/dist/src/skills/skillLoader.d.ts +31 -0
  457. package/dist/src/skills/skillLoader.js +77 -0
  458. package/dist/src/skills/skillLoader.js.map +1 -0
  459. package/dist/src/skills/skillLoader.test.d.ts +6 -0
  460. package/dist/src/skills/skillLoader.test.js +75 -0
  461. package/dist/src/skills/skillLoader.test.js.map +1 -0
  462. package/dist/src/skills/skillManager.d.ts +69 -0
  463. package/dist/src/skills/skillManager.js +127 -0
  464. package/dist/src/skills/skillManager.js.map +1 -0
  465. package/dist/src/skills/skillManager.test.d.ts +6 -0
  466. package/dist/src/skills/skillManager.test.js +210 -0
  467. package/dist/src/skills/skillManager.test.js.map +1 -0
  468. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +18 -9
  469. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +234 -160
  470. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  471. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +162 -32
  472. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  473. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +11 -3
  474. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +24 -5
  475. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  476. package/dist/src/telemetry/loggers.d.ts +3 -3
  477. package/dist/src/telemetry/loggers.js +6 -5
  478. package/dist/src/telemetry/loggers.js.map +1 -1
  479. package/dist/src/telemetry/loggers.test.circular.js +1 -0
  480. package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
  481. package/dist/src/telemetry/loggers.test.js +51 -10
  482. package/dist/src/telemetry/loggers.test.js.map +1 -1
  483. package/dist/src/telemetry/sdk.js +5 -6
  484. package/dist/src/telemetry/sdk.js.map +1 -1
  485. package/dist/src/telemetry/types.d.ts +7 -7
  486. package/dist/src/telemetry/types.js +14 -12
  487. package/dist/src/telemetry/types.js.map +1 -1
  488. package/dist/src/test-utils/mock-message-bus.d.ts +1 -0
  489. package/dist/src/test-utils/mock-message-bus.js +29 -0
  490. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  491. package/dist/src/test-utils/mock-tool.d.ts +5 -3
  492. package/dist/src/test-utils/mock-tool.js +11 -10
  493. package/dist/src/test-utils/mock-tool.js.map +1 -1
  494. package/dist/src/tools/activate-skill.d.ts +27 -0
  495. package/dist/src/tools/activate-skill.js +133 -0
  496. package/dist/src/tools/activate-skill.js.map +1 -0
  497. package/dist/src/tools/activate-skill.test.d.ts +6 -0
  498. package/dist/src/tools/activate-skill.test.js +113 -0
  499. package/dist/src/tools/activate-skill.test.js.map +1 -0
  500. package/dist/src/tools/confirmation-policy.test.js +3 -12
  501. package/dist/src/tools/confirmation-policy.test.js.map +1 -1
  502. package/dist/src/tools/edit.d.ts +27 -5
  503. package/dist/src/tools/edit.js +455 -136
  504. package/dist/src/tools/edit.js.map +1 -1
  505. package/dist/src/tools/edit.test.js +292 -526
  506. package/dist/src/tools/edit.test.js.map +1 -1
  507. package/dist/src/tools/get-internal-docs.d.ts +27 -0
  508. package/dist/src/tools/get-internal-docs.js +122 -0
  509. package/dist/src/tools/get-internal-docs.js.map +1 -0
  510. package/dist/src/tools/get-internal-docs.test.d.ts +6 -0
  511. package/dist/src/tools/get-internal-docs.test.js +57 -0
  512. package/dist/src/tools/get-internal-docs.test.js.map +1 -0
  513. package/dist/src/tools/glob.d.ts +2 -2
  514. package/dist/src/tools/glob.js +1 -1
  515. package/dist/src/tools/glob.js.map +1 -1
  516. package/dist/src/tools/glob.test.js +2 -1
  517. package/dist/src/tools/glob.test.js.map +1 -1
  518. package/dist/src/tools/grep.d.ts +2 -2
  519. package/dist/src/tools/grep.js +1 -1
  520. package/dist/src/tools/grep.js.map +1 -1
  521. package/dist/src/tools/grep.test.js +5 -4
  522. package/dist/src/tools/grep.test.js.map +1 -1
  523. package/dist/src/tools/ls.d.ts +2 -2
  524. package/dist/src/tools/ls.js +2 -2
  525. package/dist/src/tools/ls.js.map +1 -1
  526. package/dist/src/tools/ls.test.js +2 -1
  527. package/dist/src/tools/ls.test.js.map +1 -1
  528. package/dist/src/tools/mcp-client-manager.js +14 -7
  529. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  530. package/dist/src/tools/mcp-client-manager.test.js +28 -0
  531. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  532. package/dist/src/tools/mcp-client.d.ts +5 -4
  533. package/dist/src/tools/mcp-client.js +10 -8
  534. package/dist/src/tools/mcp-client.js.map +1 -1
  535. package/dist/src/tools/mcp-client.test.js +47 -42
  536. package/dist/src/tools/mcp-client.test.js.map +1 -1
  537. package/dist/src/tools/mcp-tool.d.ts +20 -5
  538. package/dist/src/tools/mcp-tool.js +8 -8
  539. package/dist/src/tools/mcp-tool.js.map +1 -1
  540. package/dist/src/tools/mcp-tool.test.js +11 -6
  541. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  542. package/dist/src/tools/memoryTool.d.ts +3 -3
  543. package/dist/src/tools/memoryTool.js +2 -4
  544. package/dist/src/tools/memoryTool.js.map +1 -1
  545. package/dist/src/tools/memoryTool.test.js +5 -2
  546. package/dist/src/tools/memoryTool.test.js.map +1 -1
  547. package/dist/src/tools/message-bus-integration.test.js +10 -37
  548. package/dist/src/tools/message-bus-integration.test.js.map +1 -1
  549. package/dist/src/tools/read-file.d.ts +2 -2
  550. package/dist/src/tools/read-file.js +1 -1
  551. package/dist/src/tools/read-file.js.map +1 -1
  552. package/dist/src/tools/read-file.test.js +3 -2
  553. package/dist/src/tools/read-file.test.js.map +1 -1
  554. package/dist/src/tools/read-many-files.d.ts +2 -2
  555. package/dist/src/tools/read-many-files.js +2 -3
  556. package/dist/src/tools/read-many-files.js.map +1 -1
  557. package/dist/src/tools/read-many-files.test.js +3 -2
  558. package/dist/src/tools/read-many-files.test.js.map +1 -1
  559. package/dist/src/tools/ripGrep.d.ts +3 -2
  560. package/dist/src/tools/ripGrep.js +18 -7
  561. package/dist/src/tools/ripGrep.js.map +1 -1
  562. package/dist/src/tools/ripGrep.test.js +60 -4
  563. package/dist/src/tools/ripGrep.test.js.map +1 -1
  564. package/dist/src/tools/shell.d.ts +3 -6
  565. package/dist/src/tools/shell.js +21 -49
  566. package/dist/src/tools/shell.js.map +1 -1
  567. package/dist/src/tools/shell.test.js +35 -59
  568. package/dist/src/tools/shell.test.js.map +1 -1
  569. package/dist/src/tools/tool-error.d.ts +6 -1
  570. package/dist/src/tools/tool-error.js +6 -0
  571. package/dist/src/tools/tool-error.js.map +1 -1
  572. package/dist/src/tools/tool-names.d.ts +15 -0
  573. package/dist/src/tools/tool-names.js +57 -0
  574. package/dist/src/tools/tool-names.js.map +1 -1
  575. package/dist/src/tools/tool-names.test.d.ts +6 -0
  576. package/dist/src/tools/tool-names.test.js +43 -0
  577. package/dist/src/tools/tool-names.test.js.map +1 -0
  578. package/dist/src/tools/tool-registry.d.ts +11 -7
  579. package/dist/src/tools/tool-registry.js +15 -10
  580. package/dist/src/tools/tool-registry.js.map +1 -1
  581. package/dist/src/tools/tool-registry.test.js +16 -11
  582. package/dist/src/tools/tool-registry.test.js.map +1 -1
  583. package/dist/src/tools/tools.d.ts +8 -6
  584. package/dist/src/tools/tools.js +16 -18
  585. package/dist/src/tools/tools.js.map +1 -1
  586. package/dist/src/tools/tools.test.js +3 -1
  587. package/dist/src/tools/tools.test.js.map +1 -1
  588. package/dist/src/tools/web-fetch.d.ts +2 -2
  589. package/dist/src/tools/web-fetch.js +4 -4
  590. package/dist/src/tools/web-fetch.js.map +1 -1
  591. package/dist/src/tools/web-fetch.test.js +17 -19
  592. package/dist/src/tools/web-fetch.test.js.map +1 -1
  593. package/dist/src/tools/web-search.d.ts +2 -2
  594. package/dist/src/tools/web-search.js +5 -5
  595. package/dist/src/tools/web-search.js.map +1 -1
  596. package/dist/src/tools/web-search.test.js +2 -1
  597. package/dist/src/tools/web-search.test.js.map +1 -1
  598. package/dist/src/tools/write-file.d.ts +2 -2
  599. package/dist/src/tools/write-file.js +9 -6
  600. package/dist/src/tools/write-file.js.map +1 -1
  601. package/dist/src/tools/write-file.test.js +49 -7
  602. package/dist/src/tools/write-file.test.js.map +1 -1
  603. package/dist/src/tools/write-todos.d.ts +2 -2
  604. package/dist/src/tools/write-todos.js +5 -4
  605. package/dist/src/tools/write-todos.js.map +1 -1
  606. package/dist/src/tools/write-todos.test.js +2 -1
  607. package/dist/src/tools/write-todos.test.js.map +1 -1
  608. package/dist/src/utils/apiConversionUtils.d.ts +12 -0
  609. package/dist/src/utils/apiConversionUtils.js +46 -0
  610. package/dist/src/utils/apiConversionUtils.js.map +1 -0
  611. package/dist/src/utils/apiConversionUtils.test.d.ts +6 -0
  612. package/dist/src/utils/apiConversionUtils.test.js +150 -0
  613. package/dist/src/utils/apiConversionUtils.test.js.map +1 -0
  614. package/dist/src/utils/checkpointUtils.d.ts +1 -1
  615. package/dist/src/utils/checkpointUtils.js +1 -1
  616. package/dist/src/utils/checkpointUtils.js.map +1 -1
  617. package/dist/src/utils/checkpointUtils.test.js +1 -1
  618. package/dist/src/utils/checkpointUtils.test.js.map +1 -1
  619. package/dist/src/utils/debugLogger.js +1 -0
  620. package/dist/src/utils/debugLogger.js.map +1 -1
  621. package/dist/src/utils/editCorrector.d.ts +3 -3
  622. package/dist/src/utils/editCorrector.js +27 -10
  623. package/dist/src/utils/editCorrector.js.map +1 -1
  624. package/dist/src/utils/editCorrector.test.js +23 -23
  625. package/dist/src/utils/editCorrector.test.js.map +1 -1
  626. package/dist/src/utils/editor.d.ts +3 -2
  627. package/dist/src/utils/editor.js +26 -6
  628. package/dist/src/utils/editor.js.map +1 -1
  629. package/dist/src/utils/editor.test.js +27 -4
  630. package/dist/src/utils/editor.test.js.map +1 -1
  631. package/dist/src/utils/environmentContext.d.ts +1 -0
  632. package/dist/src/utils/environmentContext.js +4 -0
  633. package/dist/src/utils/environmentContext.js.map +1 -1
  634. package/dist/src/utils/environmentContext.test.js +2 -0
  635. package/dist/src/utils/environmentContext.test.js.map +1 -1
  636. package/dist/src/utils/errorReporting.d.ts +1 -1
  637. package/dist/src/utils/errorReporting.js +13 -12
  638. package/dist/src/utils/errorReporting.js.map +1 -1
  639. package/dist/src/utils/errorReporting.test.js +17 -14
  640. package/dist/src/utils/errorReporting.test.js.map +1 -1
  641. package/dist/src/utils/events.d.ts +71 -19
  642. package/dist/src/utils/events.js +35 -9
  643. package/dist/src/utils/events.js.map +1 -1
  644. package/dist/src/utils/events.test.js +25 -0
  645. package/dist/src/utils/events.test.js.map +1 -1
  646. package/dist/src/utils/fileDiffUtils.d.ts +18 -0
  647. package/dist/src/utils/fileDiffUtils.js +37 -0
  648. package/dist/src/utils/fileDiffUtils.js.map +1 -0
  649. package/dist/src/utils/fileDiffUtils.test.d.ts +6 -0
  650. package/dist/src/utils/fileDiffUtils.test.js +84 -0
  651. package/dist/src/utils/fileDiffUtils.test.js.map +1 -0
  652. package/dist/src/utils/fileUtils.d.ts +4 -0
  653. package/dist/src/utils/fileUtils.js +53 -0
  654. package/dist/src/utils/fileUtils.js.map +1 -1
  655. package/dist/src/utils/fileUtils.test.js +112 -1
  656. package/dist/src/utils/fileUtils.test.js.map +1 -1
  657. package/dist/src/utils/geminiIgnoreParser.d.ts +11 -0
  658. package/dist/src/utils/geminiIgnoreParser.js +20 -0
  659. package/dist/src/utils/geminiIgnoreParser.js.map +1 -1
  660. package/dist/src/utils/geminiIgnoreParser.test.js +48 -0
  661. package/dist/src/utils/geminiIgnoreParser.test.js.map +1 -1
  662. package/dist/src/utils/generateContentResponseUtilities.d.ts +3 -1
  663. package/dist/src/utils/generateContentResponseUtilities.js +106 -0
  664. package/dist/src/utils/generateContentResponseUtilities.js.map +1 -1
  665. package/dist/src/utils/generateContentResponseUtilities.test.js +279 -2
  666. package/dist/src/utils/generateContentResponseUtilities.test.js.map +1 -1
  667. package/dist/src/utils/getFolderStructure.js +7 -2
  668. package/dist/src/utils/getFolderStructure.js.map +1 -1
  669. package/dist/src/utils/gitIgnoreParser.js +9 -10
  670. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  671. package/dist/src/utils/installationManager.test.js +11 -3
  672. package/dist/src/utils/installationManager.test.js.map +1 -1
  673. package/dist/src/utils/memoryDiscovery.js +3 -4
  674. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  675. package/dist/src/utils/memoryDiscovery.test.js +12 -1
  676. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  677. package/dist/src/utils/partUtils.js +1 -1
  678. package/dist/src/utils/partUtils.js.map +1 -1
  679. package/dist/src/utils/paths.d.ts +10 -0
  680. package/dist/src/utils/paths.js +20 -1
  681. package/dist/src/utils/paths.js.map +1 -1
  682. package/dist/src/utils/retry.d.ts +1 -0
  683. package/dist/src/utils/retry.js +17 -5
  684. package/dist/src/utils/retry.js.map +1 -1
  685. package/dist/src/utils/retry.test.js +11 -11
  686. package/dist/src/utils/retry.test.js.map +1 -1
  687. package/dist/src/utils/shell-utils.d.ts +6 -0
  688. package/dist/src/utils/shell-utils.js +97 -12
  689. package/dist/src/utils/shell-utils.js.map +1 -1
  690. package/dist/src/utils/shell-utils.test.js +99 -1
  691. package/dist/src/utils/shell-utils.test.js.map +1 -1
  692. package/dist/src/utils/summarizer.test.js +3 -2
  693. package/dist/src/utils/summarizer.test.js.map +1 -1
  694. package/dist/src/utils/terminal.d.ts +4 -0
  695. package/dist/src/utils/terminal.js +12 -0
  696. package/dist/src/utils/terminal.js.map +1 -1
  697. package/dist/src/utils/tokenCalculation.js +20 -5
  698. package/dist/src/utils/tokenCalculation.js.map +1 -1
  699. package/dist/src/utils/tokenCalculation.test.js +11 -2
  700. package/dist/src/utils/tokenCalculation.test.js.map +1 -1
  701. package/dist/src/utils/tool-utils.d.ts +9 -0
  702. package/dist/src/utils/tool-utils.js +29 -0
  703. package/dist/src/utils/tool-utils.js.map +1 -1
  704. package/dist/src/utils/tool-utils.test.js +17 -2
  705. package/dist/src/utils/tool-utils.test.js.map +1 -1
  706. package/dist/src/utils/userAccountManager.test.js +5 -5
  707. package/dist/src/utils/userAccountManager.test.js.map +1 -1
  708. package/dist/src/utils/workspaceContext.test.js +1 -1
  709. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  710. package/dist/tsconfig.tsbuildinfo +1 -1
  711. package/package.json +8 -6
  712. package/dist/src/agents/executor.js.map +0 -1
  713. package/dist/src/agents/executor.test.js.map +0 -1
  714. package/dist/src/agents/invocation.js.map +0 -1
  715. package/dist/src/agents/invocation.test.js.map +0 -1
  716. package/dist/src/core/sessionHookTriggers.d.ts +0 -28
  717. package/dist/src/core/sessionHookTriggers.js +0 -68
  718. package/dist/src/core/sessionHookTriggers.js.map +0 -1
  719. package/dist/src/tools/smart-edit.d.ts +0 -78
  720. package/dist/src/tools/smart-edit.js +0 -722
  721. package/dist/src/tools/smart-edit.js.map +0 -1
  722. package/dist/src/tools/smart-edit.test.js +0 -592
  723. package/dist/src/tools/smart-edit.test.js.map +0 -1
  724. package/dist/src/utils/shell-permissions.d.ts +0 -52
  725. package/dist/src/utils/shell-permissions.js +0 -188
  726. package/dist/src/utils/shell-permissions.js.map +0 -1
  727. package/dist/src/utils/shell-permissions.test.js +0 -347
  728. package/dist/src/utils/shell-permissions.test.js.map +0 -1
  729. /package/dist/src/agents/{executor.test.d.ts → a2a-client-manager.test.d.ts} +0 -0
  730. /package/dist/src/agents/{invocation.test.d.ts → a2aUtils.test.d.ts} +0 -0
  731. /package/dist/src/{tools/smart-edit.test.d.ts → agents/agentLoader.test.d.ts} +0 -0
  732. /package/dist/src/{utils/shell-permissions.test.d.ts → agents/cli-help-agent.test.d.ts} +0 -0
@@ -0,0 +1,1162 @@
1
+ # Cell CLI changelog
2
+
3
+ Cell CLI has three major release channels: nightly, preview, and stable. For
4
+ most users, we recommend the stable release.
5
+
6
+ On this page, you can find information regarding the current releases and
7
+ highlights from each release.
8
+
9
+ For the full changelog, including nightly releases, refer to
10
+ [Releases - google-gemini/gemini-cli](https://github.com/google-gemini/gemini-cli/releases)
11
+ on GitHub.
12
+
13
+ ## Current Releases
14
+
15
+ | Release channel | Notes |
16
+ | :---------------------------------------- | :---------------------------------------------- |
17
+ | Nightly | Nightly release with the most recent changes. |
18
+ | [Preview](#release-v0230-preview-preview) | Experimental features ready for early feedback. |
19
+ | [Latest](#release-v0220---v0225-latest) | Stable, recommended for general use. |
20
+
21
+ ## Release v0.23.0-preview (Preview)
22
+
23
+ ## What's Changed
24
+
25
+ - Code assist service metrics. by @gundermanc in
26
+ https://github.com/google-gemini/gemini-cli/pull/15024
27
+ - chore/release: bump version to 0.21.0-nightly.20251216.bb0c0d8ee by
28
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15121
29
+ - Docs by @Roaimkhan in https://github.com/google-gemini/gemini-cli/pull/15103
30
+ - Use official ACP SDK and support HTTP/SSE based MCP servers by @SteffenDE in
31
+ https://github.com/google-gemini/gemini-cli/pull/13856
32
+ - Remove foreground for themes other than shades of purple and holiday. by
33
+ @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14606
34
+ - chore: remove repo specific tips by @jackwotherspoon in
35
+ https://github.com/google-gemini/gemini-cli/pull/15164
36
+ - chore: remove user query from footer in debug mode by @jackwotherspoon in
37
+ https://github.com/google-gemini/gemini-cli/pull/15169
38
+ - Disallow unnecessary awaits. by @gundermanc in
39
+ https://github.com/google-gemini/gemini-cli/pull/15172
40
+ - Add one to the padding in settings dialog to avoid flicker. by @jacob314 in
41
+ https://github.com/google-gemini/gemini-cli/pull/15173
42
+ - feat(core): introduce remote agent infrastructure and rename local executor by
43
+ @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/15110
44
+ - feat(cli): Add `/auth logout` command to clear credentials and auth state by
45
+ @CN-Scars in https://github.com/google-gemini/gemini-cli/pull/13383
46
+ - (fix) Automated pr labeler by @DaanVersavel in
47
+ https://github.com/google-gemini/gemini-cli/pull/14885
48
+ - feat: launch Gemini 3 Flash in Cell CLI ⚡️⚡️⚡️ by @scidomino in
49
+ https://github.com/google-gemini/gemini-cli/pull/15196
50
+ - Refactor: Migrate console.error in ripGrep.ts to debugLogger by @Adib234 in
51
+ https://github.com/google-gemini/gemini-cli/pull/15201
52
+ - chore: update a2a-js to 0.3.7 by @adamfweidman in
53
+ https://github.com/google-gemini/gemini-cli/pull/15197
54
+ - chore(core): remove redundant isModelAvailabilityServiceEnabled toggle and
55
+ clean up dead code by @adamfweidman in
56
+ https://github.com/google-gemini/gemini-cli/pull/15207
57
+ - feat(core): Late resolve `GenerateContentConfig`s and reduce mutation. by
58
+ @joshualitt in https://github.com/google-gemini/gemini-cli/pull/14920
59
+ - Respect previewFeatures value from the remote flag if undefined by @sehoon38
60
+ in https://github.com/google-gemini/gemini-cli/pull/15214
61
+ - feat(ui): add Windows clipboard image support and Alt+V paste workaround by
62
+ @jacob314 in https://github.com/google-gemini/gemini-cli/pull/15218
63
+ - chore(core): remove legacy fallback flags and migrate loop detection by
64
+ @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/15213
65
+ - fix(ui): Prevent eager slash command completion hiding sibling commands by
66
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/15224
67
+ - Docs: Update Changelog for Dec 17, 2025 by @jkcinouye in
68
+ https://github.com/google-gemini/gemini-cli/pull/15204
69
+ - Code Assist backend telemetry for user accept/reject of suggestions by
70
+ @gundermanc in https://github.com/google-gemini/gemini-cli/pull/15206
71
+ - fix(cli): correct initial history length handling for chat commands by
72
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/15223
73
+ - chore/release: bump version to 0.21.0-nightly.20251218.739c02bd6 by
74
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15231
75
+ - Change detailed model stats to use a new shared Table class to resolve
76
+ robustness issues. by @jacob314 in
77
+ https://github.com/google-gemini/gemini-cli/pull/15208
78
+ - feat: add agent toml parser by @abhipatel12 in
79
+ https://github.com/google-gemini/gemini-cli/pull/15112
80
+ - Add core tool that adds all context from the core package. by @jacob314 in
81
+ https://github.com/google-gemini/gemini-cli/pull/15238
82
+ - (docs): Add reference section to hooks documentation by @abhipatel12 in
83
+ https://github.com/google-gemini/gemini-cli/pull/15159
84
+ - feat(hooks): add support for friendly names and descriptions by @abhipatel12
85
+ in https://github.com/google-gemini/gemini-cli/pull/15174
86
+ - feat: Detect background color by @jacob314 in
87
+ https://github.com/google-gemini/gemini-cli/pull/15132
88
+ - add 3.0 to allowed sensitive keywords by @scidomino in
89
+ https://github.com/google-gemini/gemini-cli/pull/15276
90
+ - feat: Pass additional environment variables to shell execution by @galz10 in
91
+ https://github.com/google-gemini/gemini-cli/pull/15160
92
+ - Remove unused code by @scidomino in
93
+ https://github.com/google-gemini/gemini-cli/pull/15290
94
+ - Handle all 429 as retryableQuotaError by @sehoon38 in
95
+ https://github.com/google-gemini/gemini-cli/pull/15288
96
+ - Remove unnecessary dependencies by @scidomino in
97
+ https://github.com/google-gemini/gemini-cli/pull/15291
98
+ - fix: prevent infinite loop in prompt completion on error by @galz10 in
99
+ https://github.com/google-gemini/gemini-cli/pull/14548
100
+ - fix(ui): show command suggestions even on perfect match and sort them by
101
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/15287
102
+ - feat(hooks): reduce log verbosity and improve error reporting in UI by
103
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/15297
104
+ - feat: simplify tool confirmation labels for better UX by @NTaylorMullen in
105
+ https://github.com/google-gemini/gemini-cli/pull/15296
106
+ - chore/release: bump version to 0.21.0-nightly.20251219.70696e364 by
107
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15301
108
+ - feat(core): Implement JIT context memory loading and UI sync by @SandyTao520
109
+ in https://github.com/google-gemini/gemini-cli/pull/14469
110
+ - feat(ui): Put "Allow for all future sessions" behind a setting off by default.
111
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/15322
112
+ - fix(cli):change the placeholder of input during the shell mode by
113
+ @JayadityaGit in https://github.com/google-gemini/gemini-cli/pull/15135
114
+ - Validate OAuth resource parameter matches MCP server URL by @galz10 in
115
+ https://github.com/google-gemini/gemini-cli/pull/15289
116
+ - docs(cli): add System Prompt Override (CELL_SYSTEM_MD) by @ashmod in
117
+ https://github.com/google-gemini/gemini-cli/pull/9515
118
+ - more robust command parsing logs by @scidomino in
119
+ https://github.com/google-gemini/gemini-cli/pull/15339
120
+ - Introspection agent demo by @scidomino in
121
+ https://github.com/google-gemini/gemini-cli/pull/15232
122
+ - fix(core): sanitize hook command expansion and prevent injection by
123
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/15343
124
+ - fix(folder trust): add validation for trusted folder level by @adamfweidman in
125
+ https://github.com/google-gemini/gemini-cli/pull/12215
126
+ - fix(cli): fix right border overflow in trust dialogs by @galz10 in
127
+ https://github.com/google-gemini/gemini-cli/pull/15350
128
+ - fix(policy): fix bug where accepting-edits continued after it was turned off
129
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/15351
130
+ - fix: prevent infinite relaunch loop when --resume fails (#14941) by @Ying-xi
131
+ in https://github.com/google-gemini/gemini-cli/pull/14951
132
+ - chore/release: bump version to 0.21.0-nightly.20251220.41a1a3eed by
133
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15352
134
+ - feat(telemetry): add clearcut logging for hooks by @abhipatel12 in
135
+ https://github.com/google-gemini/gemini-cli/pull/15405
136
+ - fix(core): Add `.geminiignore` support to SearchText tool by @xyrolle in
137
+ https://github.com/google-gemini/gemini-cli/pull/13763
138
+
139
+ **Full Changelog**:
140
+ https://github.com/google-gemini/gemini-cli/compare/v0.22.0-preview.3...v0.23.0-preview.0
141
+
142
+ ## Release v0.22.0 - v0.22.5 (Latest)
143
+
144
+ ### Highlights
145
+
146
+ - **Comprehensive quota visibility:** View usage statistics for all available
147
+ models in the `/stats` command, even those not yet used in your current
148
+ session. ([pic](https://imgur.com/a/cKyDtYh),
149
+ [pr](https://github.com/google-gemini/gemini-cli/pull/14764) by
150
+ [@sehoon38](https://github.com/sehoon38))
151
+ - **Polished CLI statistics:** We’ve cleaned up the `/stats` view to prioritize
152
+ actionable quota information while providing a detailed token and
153
+ cache-efficiency breakdown in `/stats model`
154
+ ([login with Google](https://imgur.com/a/w9xKthm),
155
+ [api key](https://imgur.com/a/FjQPHOY),
156
+ [model stats](https://imgur.com/a/VfWzVgw),
157
+ [pr](https://github.com/google-gemini/gemini-cli/pull/14961) by
158
+ [@jacob314](https://github.com/jacob314))
159
+ - **Multi-file drag & drop:** Multi-file drag & drop is now supported and
160
+ properly translated to be prefixed with `@`.
161
+ ([pr](https://github.com/google-gemini/gemini-cli/pull/14832) by
162
+ [@jackwotherspoon](https://github.com/jackwotherspoon))
163
+
164
+ ### What's Changed
165
+
166
+ - feat(ide): fallback to CELL_CLI_IDE_AUTH_TOKEN env var by @skeshive in
167
+ https://github.com/google-gemini/gemini-cli/pull/14843
168
+ - feat: display quota stats for unused models in /stats by @sehoon38 in
169
+ https://github.com/google-gemini/gemini-cli/pull/14764
170
+ - feat: ensure codebase investigator uses preview model when main agent does by
171
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/14412
172
+ - chore: add closing reason to stale bug workflow by @galz10 in
173
+ https://github.com/google-gemini/gemini-cli/pull/14861
174
+ - Send the model and CLI version with the user agent by @gundermanc in
175
+ https://github.com/google-gemini/gemini-cli/pull/14865
176
+ - refactor(sessions): move session summary generation to startup by
177
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/14691
178
+ - Limit search depth in path corrector by @scidomino in
179
+ https://github.com/google-gemini/gemini-cli/pull/14869
180
+ - Fix: Correct typo in code comment by @kuishou68 in
181
+ https://github.com/google-gemini/gemini-cli/pull/14671
182
+ - feat(core): Plumbing for late resolution of model configs. by @joshualitt in
183
+ https://github.com/google-gemini/gemini-cli/pull/14597
184
+ - feat: attempt more error parsing by @adamfweidman in
185
+ https://github.com/google-gemini/gemini-cli/pull/14899
186
+ - Add missing await. by @gundermanc in
187
+ https://github.com/google-gemini/gemini-cli/pull/14910
188
+ - feat(core): Add support for transcript_path in hooks for git-ai/Gemini
189
+ extension by @svarlamov in
190
+ https://github.com/google-gemini/gemini-cli/pull/14663
191
+ - refactor: implement DelegateToAgentTool with discriminated union by
192
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/14769
193
+ - feat: reset availabilityService on /auth by @adamfweidman in
194
+ https://github.com/google-gemini/gemini-cli/pull/14911
195
+ - chore/release: bump version to 0.21.0-nightly.20251211.8c83e1ea9 by
196
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14924
197
+ - Fix: Correctly detect MCP tool errors by @kevin-ramdass in
198
+ https://github.com/google-gemini/gemini-cli/pull/14937
199
+ - increase labeler timeout by @scidomino in
200
+ https://github.com/google-gemini/gemini-cli/pull/14922
201
+ - tool(cli): tweak the frontend tool to be aware of more core files from the cli
202
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14962
203
+ - feat(cli): polish cached token stats and simplify stats display when quota is
204
+ present. by @jacob314 in
205
+ https://github.com/google-gemini/gemini-cli/pull/14961
206
+ - feat(settings-validation): add validation for settings schema by @lifefloating
207
+ in https://github.com/google-gemini/gemini-cli/pull/12929
208
+ - fix(ide): Update IDE extension to write auth token in env var by @skeshive in
209
+ https://github.com/google-gemini/gemini-cli/pull/14999
210
+ - Revert "chore(deps): bump express from 5.1.0 to 5.2.0" by @skeshive in
211
+ https://github.com/google-gemini/gemini-cli/pull/14998
212
+ - feat(a2a): Introduce /init command for a2a server by @cocosheng-g in
213
+ https://github.com/google-gemini/gemini-cli/pull/13419
214
+ - feat: support multi-file drag and drop of images by @jackwotherspoon in
215
+ https://github.com/google-gemini/gemini-cli/pull/14832
216
+ - fix(policy): allow codebase_investigator by default in read-only policy by
217
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/15000
218
+ - refactor(ide ext): Update port file name + switch to 1-based index for
219
+ characters + remove truncation text by @skeshive in
220
+ https://github.com/google-gemini/gemini-cli/pull/10501
221
+ - fix(vscode-ide-companion): correct license generation for workspace
222
+ dependencies by @skeshive in
223
+ https://github.com/google-gemini/gemini-cli/pull/15004
224
+ - fix: temp fix for subagent invocation until subagent delegation is merged to
225
+ stable by @abhipatel12 in
226
+ https://github.com/google-gemini/gemini-cli/pull/15007
227
+ - test: update ide detection tests to make them more robust when run in an ide
228
+ by @kevin-ramdass in https://github.com/google-gemini/gemini-cli/pull/15008
229
+ - Remove flex from stats display. See snapshots for diffs. by @jacob314 in
230
+ https://github.com/google-gemini/gemini-cli/pull/14983
231
+ - Add license field into package.json by @jb-perez in
232
+ https://github.com/google-gemini/gemini-cli/pull/14473
233
+ - feat: Persistent "Always Allow" policies with granular shell & MCP support by
234
+ @allenhutchison in https://github.com/google-gemini/gemini-cli/pull/14737
235
+ - chore/release: bump version to 0.21.0-nightly.20251212.54de67536 by
236
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14969
237
+ - fix(core): commandPrefix word boundary and compound command safety by
238
+ @allenhutchison in https://github.com/google-gemini/gemini-cli/pull/15006
239
+ - chore(docs): add 'Maintainers only' label info to CONTRIBUTING.md by @jacob314
240
+ in https://github.com/google-gemini/gemini-cli/pull/14914
241
+ - Refresh hooks when refreshing extensions. by @scidomino in
242
+ https://github.com/google-gemini/gemini-cli/pull/14918
243
+ - Add clarity to error messages by @gsehgal in
244
+ https://github.com/google-gemini/gemini-cli/pull/14879
245
+ - chore : remove a redundant tip by @JayadityaGit in
246
+ https://github.com/google-gemini/gemini-cli/pull/14947
247
+ - chore/release: bump version to 0.21.0-nightly.20251213.977248e09 by
248
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15029
249
+ - Disallow redundant typecasts. by @gundermanc in
250
+ https://github.com/google-gemini/gemini-cli/pull/15030
251
+ - fix(auth): prioritize GEMINI_API_KEY env var and skip unnecessary key… by
252
+ @galz10 in https://github.com/google-gemini/gemini-cli/pull/14745
253
+ - fix: use zod for safety check result validation by @allenhutchison in
254
+ https://github.com/google-gemini/gemini-cli/pull/15026
255
+ - update(telemetry): add hashed_extension_name to field to extension events by
256
+ @kiranani in https://github.com/google-gemini/gemini-cli/pull/15025
257
+ - fix: similar to policy-engine, throw error in case of requiring tool execution
258
+ confirmation for non-interactive mode by @MayV in
259
+ https://github.com/google-gemini/gemini-cli/pull/14702
260
+ - Clean up processes in integration tests by @scidomino in
261
+ https://github.com/google-gemini/gemini-cli/pull/15102
262
+ - docs: update policy engine getting started and defaults by @NTaylorMullen in
263
+ https://github.com/google-gemini/gemini-cli/pull/15105
264
+ - Fix tool output fragmentation by encapsulating content in functionResponse by
265
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/13082
266
+ - Simplify method signature. by @scidomino in
267
+ https://github.com/google-gemini/gemini-cli/pull/15114
268
+ - Show raw input token counts in json output. by @jacob314 in
269
+ https://github.com/google-gemini/gemini-cli/pull/15021
270
+ - fix: Mark A2A requests as interactive by @MayV in
271
+ https://github.com/google-gemini/gemini-cli/pull/15108
272
+ - use previewFeatures to determine which pro model to use for A2A by @sehoon38
273
+ in https://github.com/google-gemini/gemini-cli/pull/15131
274
+ - refactor(cli): fix settings merging so that settings using the new json format
275
+ take priority over ones using the old format by @jacob314 in
276
+ https://github.com/google-gemini/gemini-cli/pull/15116
277
+ - fix(patch): cherry-pick a6d1245 to release/v0.22.0-preview.1-pr-15214 to patch
278
+ version v0.22.0-preview.1 and create version 0.22.0-preview.2 by
279
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15226
280
+ - fix(patch): cherry-pick 9e6914d to release/v0.22.0-preview.2-pr-15288 to patch
281
+ version v0.22.0-preview.2 and create version 0.22.0-preview.3 by
282
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15294
283
+
284
+ **Full Changelog**:
285
+ https://github.com/google-gemini/gemini-cli/compare/v0.21.3...v0.22.0
286
+
287
+ ## Release v0.21.0 - v0.21.1
288
+
289
+ ### Highlights
290
+
291
+ - **⚡️⚡️⚡️ Gemini 3 Flash + Cell CLI:** If you are a paid user, you can now
292
+ enable Gemini 3 Pro and Gemini 3 Flash. Go to `/settings` and set **Preview
293
+ Features** to `true` to enable Gemini 3. For more information:
294
+ [Gemini 3 Flash is now available in Cell CLI](https://developers.googleblog.com/gemini-3-flash-is-now-available-in-gemini-cli/).
295
+
296
+ ### What's Changed
297
+
298
+ - refactor(stdio): always patch stdout and use createWorkingStdio for clean
299
+ output by @allenhutchison in
300
+ https://github.com/google-gemini/gemini-cli/pull/14159
301
+ - chore(release): bump version to 0.21.0-nightly.20251202.2d935b379 by
302
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14409
303
+ - implement fuzzy search inside settings by @sehoon38 in
304
+ https://github.com/google-gemini/gemini-cli/pull/13864
305
+ - feat: enable message bus integration by default by @allenhutchison in
306
+ https://github.com/google-gemini/gemini-cli/pull/14329
307
+ - docs: Recommend using --debug intead of --verbose for CLI debugging by @bbiggs
308
+ in https://github.com/google-gemini/gemini-cli/pull/14334
309
+ - feat: consolidate remote MCP servers to use `url` in config by
310
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/13762
311
+ - Restrict integration tests tools by @scidomino in
312
+ https://github.com/google-gemini/gemini-cli/pull/14403
313
+ - track github repository names in telemetry events by @IamRiddhi in
314
+ https://github.com/google-gemini/gemini-cli/pull/13670
315
+ - Allow telemetry exporters to GCP to utilize user's login credentials, if
316
+ requested by @mboshernitsan in
317
+ https://github.com/google-gemini/gemini-cli/pull/13778
318
+ - refactor(editor): use const assertion for editor types with single source of
319
+ truth by @amsminn in https://github.com/google-gemini/gemini-cli/pull/8604
320
+ - fix(security): Fix npm audit vulnerabilities in glob and body-parser by
321
+ @afarber in https://github.com/google-gemini/gemini-cli/pull/14090
322
+ - Add new enterprise instructions by @chrstnb in
323
+ https://github.com/google-gemini/gemini-cli/pull/8641
324
+ - feat(hooks): Hook Session Lifecycle & Compression Integration by @Edilmo in
325
+ https://github.com/google-gemini/gemini-cli/pull/14151
326
+ - Avoid triggering refreshStatic unless there really is a banner to display. by
327
+ @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14328
328
+ - feat(hooks): Hooks Commands Panel, Enable/Disable, and Migrate by @Edilmo in
329
+ https://github.com/google-gemini/gemini-cli/pull/14225
330
+ - fix: Bundle default policies for npx distribution by @allenhutchison in
331
+ https://github.com/google-gemini/gemini-cli/pull/14457
332
+ - feat(hooks): Hook System Documentation by @Edilmo in
333
+ https://github.com/google-gemini/gemini-cli/pull/14307
334
+ - Fix tests by @scidomino in
335
+ https://github.com/google-gemini/gemini-cli/pull/14458
336
+ - feat: add scheduled workflow to close stale issues by @galz10 in
337
+ https://github.com/google-gemini/gemini-cli/pull/14404
338
+ - feat: Support Extension Hooks with Security Warning by @abhipatel12 in
339
+ https://github.com/google-gemini/gemini-cli/pull/14460
340
+ - feat: Add enableAgents experimental flag by @adamfweidman in
341
+ https://github.com/google-gemini/gemini-cli/pull/14371
342
+ - docs: fix typo 'socus' to 'focus' in todos.md by @Viktor286 in
343
+ https://github.com/google-gemini/gemini-cli/pull/14374
344
+ - Markdown export: move the emoji to the end of the line by @mhansen in
345
+ https://github.com/google-gemini/gemini-cli/pull/12278
346
+ - fix(acp): prevent unnecessary credential cache clearing on re-authent… by
347
+ @h-michael in https://github.com/google-gemini/gemini-cli/pull/9410
348
+ - fix(cli): Fix word navigation for CJK characters by @SandyTao520 in
349
+ https://github.com/google-gemini/gemini-cli/pull/14475
350
+ - Remove example extension by @chrstnb in
351
+ https://github.com/google-gemini/gemini-cli/pull/14376
352
+ - Add commands for listing and updating per-extension settings by @chrstnb in
353
+ https://github.com/google-gemini/gemini-cli/pull/12664
354
+ - chore(tests): remove obsolete test for hierarchical memory by @pareshjoshij in
355
+ https://github.com/google-gemini/gemini-cli/pull/13122
356
+ - feat(cli): support /copy in remote sessions using OSC52 by @ismellpillows in
357
+ https://github.com/google-gemini/gemini-cli/pull/13471
358
+ - Update setting search UX by @Adib234 in
359
+ https://github.com/google-gemini/gemini-cli/pull/14451
360
+ - Fix(cli): Improve Homebrew update instruction to specify gemini-cli by
361
+ @DaanVersavel in https://github.com/google-gemini/gemini-cli/pull/14502
362
+ - do not toggle the setting item when entering space by @sehoon38 in
363
+ https://github.com/google-gemini/gemini-cli/pull/14489
364
+ - fix: improve retry logic for fetch errors and network codes by @megha1188 in
365
+ https://github.com/google-gemini/gemini-cli/pull/14439
366
+ - remove unused isSearching field by @sehoon38 in
367
+ https://github.com/google-gemini/gemini-cli/pull/14509
368
+ - feat(mcp): add `--type` alias for `--transport` flag in gemini mcp add by
369
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/14503
370
+ - feat(cli): Move key restore logic to core by @cocosheng-g in
371
+ https://github.com/google-gemini/gemini-cli/pull/13013
372
+ - feat: add auto-execute on Enter behavior to argumentless MCP prompts by
373
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/14510
374
+ - fix(shell): cursor visibility when using interactive mode by @aswinashok44 in
375
+ https://github.com/google-gemini/gemini-cli/pull/14095
376
+ - Adding session id as part of json o/p by @MJjainam in
377
+ https://github.com/google-gemini/gemini-cli/pull/14504
378
+ - fix(extensions): resolve GitHub API 415 error for source tarballs by
379
+ @jpoehnelt in https://github.com/google-gemini/gemini-cli/pull/13319
380
+ - fix(client): Correctly latch hasFailedCompressionAttempt flag by @pareshjoshij
381
+ in https://github.com/google-gemini/gemini-cli/pull/13002
382
+ - Disable flaky extension reloading test on linux by @chrstnb in
383
+ https://github.com/google-gemini/gemini-cli/pull/14528
384
+ - Add support for MCP dynamic tool update by `notifications/tools/list_changed`
385
+ by @Adib234 in https://github.com/google-gemini/gemini-cli/pull/14375
386
+ - Fix privacy screen for legacy tier users by @scidomino in
387
+ https://github.com/google-gemini/gemini-cli/pull/14522
388
+ - feat: Exclude maintainer labeled issues from stale issue closer by @galz10 in
389
+ https://github.com/google-gemini/gemini-cli/pull/14532
390
+ - Grant chained workflows proper permission. by @scidomino in
391
+ https://github.com/google-gemini/gemini-cli/pull/14534
392
+ - Make trigger_e2e manually fireable. by @scidomino in
393
+ https://github.com/google-gemini/gemini-cli/pull/14547
394
+ - Write e2e status to local repo not forked repo by @scidomino in
395
+ https://github.com/google-gemini/gemini-cli/pull/14549
396
+ - Fixes [API Error: Cannot read properties of undefined (reading 'error')] by
397
+ @silviojr in https://github.com/google-gemini/gemini-cli/pull/14553
398
+ - Trigger chained e2e tests on all pull requests by @scidomino in
399
+ https://github.com/google-gemini/gemini-cli/pull/14551
400
+ - Fix bug in the shellExecutionService resulting in both truncation and 3X bloat
401
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14545
402
+ - Fix issue where we were passing the model content reflecting terminal line
403
+ wrapping. by @jacob314 in
404
+ https://github.com/google-gemini/gemini-cli/pull/14566
405
+ - chore/release: bump version to 0.21.0-nightly.20251204.3da4fd5f7 by
406
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14476
407
+ - feat(sessions): use 1-line generated session summary to describe sessions by
408
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/14467
409
+ - Use Robot PAT for chained e2e merge queue skipper by @scidomino in
410
+ https://github.com/google-gemini/gemini-cli/pull/14585
411
+ - fix(core): improve API response error handling and retry logic by @mattKorwel
412
+ in https://github.com/google-gemini/gemini-cli/pull/14563
413
+ - Docs: Model routing clarification by @jkcinouye in
414
+ https://github.com/google-gemini/gemini-cli/pull/14373
415
+ - expose previewFeatures flag in a2a by @sehoon38 in
416
+ https://github.com/google-gemini/gemini-cli/pull/14550
417
+ - Fix emoji width in debug console. by @jacob314 in
418
+ https://github.com/google-gemini/gemini-cli/pull/14593
419
+ - Fully detach autoupgrade process by @scidomino in
420
+ https://github.com/google-gemini/gemini-cli/pull/14595
421
+ - Docs: Update Gemini 3 on Cell CLI documentation by @jkcinouye in
422
+ https://github.com/google-gemini/gemini-cli/pull/14601
423
+ - Disallow floating promises. by @gundermanc in
424
+ https://github.com/google-gemini/gemini-cli/pull/14605
425
+ - chore/release: bump version to 0.21.0-nightly.20251207.025e450ac by
426
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14662
427
+ - feat(modelAvailabilityService): integrate model availability service into
428
+ backend logic by @adamfweidman in
429
+ https://github.com/google-gemini/gemini-cli/pull/14470
430
+ - Add prompt_id propagation in a2a-server task by @koxkox111 in
431
+ https://github.com/google-gemini/gemini-cli/pull/14581
432
+ - Fix: Prevent freezing in non-interactive Cell CLI when debug mode is enabled
433
+ by @parthasaradhie in https://github.com/google-gemini/gemini-cli/pull/14580
434
+ - fix(audio): improve reading of audio files by @jackwotherspoon in
435
+ https://github.com/google-gemini/gemini-cli/pull/14658
436
+ - Update automated triage workflow to stop assigning priority labels by
437
+ @skeshive in https://github.com/google-gemini/gemini-cli/pull/14717
438
+ - set failed status when chained e2e fails by @scidomino in
439
+ https://github.com/google-gemini/gemini-cli/pull/14725
440
+ - feat(github action) Triage and Label Pull Requests by Size and Comple… by
441
+ @DaanVersavel in https://github.com/google-gemini/gemini-cli/pull/5571
442
+ - refactor(telemetry): Improve previous PR that allows telemetry to use the CLI
443
+ auth and add testing by @mboshernitsan in
444
+ https://github.com/google-gemini/gemini-cli/pull/14589
445
+ - Always set status in chained_e2e workflow by @scidomino in
446
+ https://github.com/google-gemini/gemini-cli/pull/14730
447
+ - feat: Add OTEL log event `gemini_cli.startup_stats` for startup stats. by
448
+ @kevin-ramdass in https://github.com/google-gemini/gemini-cli/pull/14734
449
+ - feat: auto-execute on slash command completion functions by @jackwotherspoon
450
+ in https://github.com/google-gemini/gemini-cli/pull/14584
451
+ - Docs: Proper release notes by @jkcinouye in
452
+ https://github.com/google-gemini/gemini-cli/pull/14405
453
+ - Add support for user-scoped extension settings by @chrstnb in
454
+ https://github.com/google-gemini/gemini-cli/pull/13748
455
+ - refactor(core): Improve environment variable handling in shell execution by
456
+ @galz10 in https://github.com/google-gemini/gemini-cli/pull/14742
457
+ - Remove old E2E Workflows by @scidomino in
458
+ https://github.com/google-gemini/gemini-cli/pull/14749
459
+ - fix: handle missing local extension config and skip hooks when disabled by
460
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/14744
461
+ - chore/release: bump version to 0.21.0-nightly.20251209.ec9a8c7a7 by
462
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14751
463
+ - feat: Add support for MCP Resources by @MrLesk in
464
+ https://github.com/google-gemini/gemini-cli/pull/13178
465
+ - Always set pending status in E2E tests by @scidomino in
466
+ https://github.com/google-gemini/gemini-cli/pull/14756
467
+ - fix(lint): upgrade pip and use public pypi for yamllint by @allenhutchison in
468
+ https://github.com/google-gemini/gemini-cli/pull/14746
469
+ - fix: use Gemini API supported image formats for clipboard by @jackwotherspoon
470
+ in https://github.com/google-gemini/gemini-cli/pull/14762
471
+ - feat(a2a): Introduce restore command for a2a server by @cocosheng-g in
472
+ https://github.com/google-gemini/gemini-cli/pull/13015
473
+ - allow final:true to be returned on a2a server edit calls. by @DavidAPierce in
474
+ https://github.com/google-gemini/gemini-cli/pull/14747
475
+ - (fix) Automated pr labeler by @DaanVersavel in
476
+ https://github.com/google-gemini/gemini-cli/pull/14788
477
+ - Update CODEOWNERS by @kklashtorny1 in
478
+ https://github.com/google-gemini/gemini-cli/pull/14830
479
+ - Docs: Fix errors preventing site rebuild. by @jkcinouye in
480
+ https://github.com/google-gemini/gemini-cli/pull/14842
481
+ - chore(deps): bump express from 5.1.0 to 5.2.0 by @dependabot[bot] in
482
+ https://github.com/google-gemini/gemini-cli/pull/14325
483
+ - fix(patch): cherry-pick 3f5f030 to release/v0.21.0-preview.0-pr-14843 to patch
484
+ version v0.21.0-preview.0 and create version 0.21.0-preview.1 by
485
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14851
486
+ - fix(patch): cherry-pick ee6556c to release/v0.21.0-preview.1-pr-14691 to patch
487
+ version v0.21.0-preview.1 and create version 0.21.0-preview.2 by
488
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14908
489
+ - fix(patch): cherry-pick 54de675 to release/v0.21.0-preview.2-pr-14961 by
490
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14968
491
+ - fix(patch): cherry-pick 12cbe32 to release/v0.21.0-preview.3-pr-15000 to patch
492
+ version v0.21.0-preview.3 and create version 0.21.0-preview.4 by
493
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15003
494
+ - fix(patch): cherry-pick edbe548 to release/v0.21.0-preview.4-pr-15007 to patch
495
+ version v0.21.0-preview.4 and create version 0.21.0-preview.5 by
496
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15015
497
+ - fix(patch): cherry-pick 2995af6 to release/v0.21.0-preview.5-pr-15131 to patch
498
+ version v0.21.0-preview.5 and create version 0.21.0-preview.6 by
499
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15153
500
+
501
+ **Full Changelog**:
502
+ https://github.com/google-gemini/gemini-cli/compare/v0.20.2...v0.21.0
503
+
504
+ ## Release v0.22.0-preview-0 (Preview)
505
+
506
+ ### What's Changed
507
+
508
+ - feat(ide): fallback to CELL_CLI_IDE_AUTH_TOKEN env var by @skeshive in
509
+ https://github.com/google-gemini/gemini-cli/pull/14843
510
+ - feat: display quota stats for unused models in /stats by @sehoon38 in
511
+ https://github.com/google-gemini/gemini-cli/pull/14764
512
+ - feat: ensure codebase investigator uses preview model when main agent does by
513
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/14412
514
+ - chore: add closing reason to stale bug workflow by @galz10 in
515
+ https://github.com/google-gemini/gemini-cli/pull/14861
516
+ - Send the model and CLI version with the user agent by @gundermanc in
517
+ https://github.com/google-gemini/gemini-cli/pull/14865
518
+ - refactor(sessions): move session summary generation to startup by
519
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/14691
520
+ - Limit search depth in path corrector by @scidomino in
521
+ https://github.com/google-gemini/gemini-cli/pull/14869
522
+ - Fix: Correct typo in code comment by @kuishou68 in
523
+ https://github.com/google-gemini/gemini-cli/pull/14671
524
+ - feat(core): Plumbing for late resolution of model configs. by @joshualitt in
525
+ https://github.com/google-gemini/gemini-cli/pull/14597
526
+ - feat: attempt more error parsing by @adamfweidman in
527
+ https://github.com/google-gemini/gemini-cli/pull/14899
528
+ - Add missing await. by @gundermanc in
529
+ https://github.com/google-gemini/gemini-cli/pull/14910
530
+ - feat(core): Add support for transcript_path in hooks for git-ai/Gemini
531
+ extension by @svarlamov in
532
+ https://github.com/google-gemini/gemini-cli/pull/14663
533
+ - refactor: implement DelegateToAgentTool with discriminated union by
534
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/14769
535
+ - feat: reset availabilityService on /auth by @adamfweidman in
536
+ https://github.com/google-gemini/gemini-cli/pull/14911
537
+ - chore/release: bump version to 0.21.0-nightly.20251211.8c83e1ea9 by
538
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14924
539
+ - Fix: Correctly detect MCP tool errors by @kevin-ramdass in
540
+ https://github.com/google-gemini/gemini-cli/pull/14937
541
+ - increase labeler timeout by @scidomino in
542
+ https://github.com/google-gemini/gemini-cli/pull/14922
543
+ - tool(cli): tweak the frontend tool to be aware of more core files from the cli
544
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14962
545
+ - feat(cli): polish cached token stats and simplify stats display when quota is
546
+ present. by @jacob314 in
547
+ https://github.com/google-gemini/gemini-cli/pull/14961
548
+ - feat(settings-validation): add validation for settings schema by @lifefloating
549
+ in https://github.com/google-gemini/gemini-cli/pull/12929
550
+ - fix(ide): Update IDE extension to write auth token in env var by @skeshive in
551
+ https://github.com/google-gemini/gemini-cli/pull/14999
552
+ - Revert "chore(deps): bump express from 5.1.0 to 5.2.0" by @skeshive in
553
+ https://github.com/google-gemini/gemini-cli/pull/14998
554
+ - feat(a2a): Introduce /init command for a2a server by @cocosheng-g in
555
+ https://github.com/google-gemini/gemini-cli/pull/13419
556
+ - feat: support multi-file drag and drop of images by @jackwotherspoon in
557
+ https://github.com/google-gemini/gemini-cli/pull/14832
558
+ - fix(policy): allow codebase_investigator by default in read-only policy by
559
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/15000
560
+ - refactor(ide ext): Update port file name + switch to 1-based index for
561
+ characters + remove truncation text by @skeshive in
562
+ https://github.com/google-gemini/gemini-cli/pull/10501
563
+ - fix(vscode-ide-companion): correct license generation for workspace
564
+ dependencies by @skeshive in
565
+ https://github.com/google-gemini/gemini-cli/pull/15004
566
+ - fix: temp fix for subagent invocation until subagent delegation is merged to
567
+ stable by @abhipatel12 in
568
+ https://github.com/google-gemini/gemini-cli/pull/15007
569
+ - test: update ide detection tests to make them more robust when run in an ide
570
+ by @kevin-ramdass in https://github.com/google-gemini/gemini-cli/pull/15008
571
+ - Remove flex from stats display. See snapshots for diffs. by @jacob314 in
572
+ https://github.com/google-gemini/gemini-cli/pull/14983
573
+ - Add license field into package.json by @jb-perez in
574
+ https://github.com/google-gemini/gemini-cli/pull/14473
575
+ - feat: Persistent "Always Allow" policies with granular shell & MCP support by
576
+ @allenhutchison in https://github.com/google-gemini/gemini-cli/pull/14737
577
+ - chore/release: bump version to 0.21.0-nightly.20251212.54de67536 by
578
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14969
579
+ - fix(core): commandPrefix word boundary and compound command safety by
580
+ @allenhutchison in https://github.com/google-gemini/gemini-cli/pull/15006
581
+ - chore(docs): add 'Maintainers only' label info to CONTRIBUTING.md by @jacob314
582
+ in https://github.com/google-gemini/gemini-cli/pull/14914
583
+ - Refresh hooks when refreshing extensions. by @scidomino in
584
+ https://github.com/google-gemini/gemini-cli/pull/14918
585
+ - Add clarity to error messages by @gsehgal in
586
+ https://github.com/google-gemini/gemini-cli/pull/14879
587
+ - chore : remove a redundant tip by @JayadityaGit in
588
+ https://github.com/google-gemini/gemini-cli/pull/14947
589
+ - chore/release: bump version to 0.21.0-nightly.20251213.977248e09 by
590
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/15029
591
+ - Disallow redundant typecasts. by @gundermanc in
592
+ https://github.com/google-gemini/gemini-cli/pull/15030
593
+ - fix(auth): prioritize GEMINI_API_KEY env var and skip unnecessary key… by
594
+ @galz10 in https://github.com/google-gemini/gemini-cli/pull/14745
595
+ - fix: use zod for safety check result validation by @allenhutchison in
596
+ https://github.com/google-gemini/gemini-cli/pull/15026
597
+ - update(telemetry): add hashed_extension_name to field to extension events by
598
+ @kiranani in https://github.com/google-gemini/gemini-cli/pull/15025
599
+ - fix: similar to policy-engine, throw error in case of requiring tool execution
600
+ confirmation for non-interactive mode by @MayV in
601
+ https://github.com/google-gemini/gemini-cli/pull/14702
602
+ - Clean up processes in integration tests by @scidomino in
603
+ https://github.com/google-gemini/gemini-cli/pull/15102
604
+ - docs: update policy engine getting started and defaults by @NTaylorMullen in
605
+ https://github.com/google-gemini/gemini-cli/pull/15105
606
+ - Fix tool output fragmentation by encapsulating content in functionResponse by
607
+ @abhipatel12 in https://github.com/google-gemini/gemini-cli/pull/13082
608
+ - Simplify method signature. by @scidomino in
609
+ https://github.com/google-gemini/gemini-cli/pull/15114
610
+ - Show raw input token counts in json output. by @jacob314 in
611
+ https://github.com/google-gemini/gemini-cli/pull/15021
612
+ - fix: Mark A2A requests as interactive by @MayV in
613
+ https://github.com/google-gemini/gemini-cli/pull/15108
614
+ - use previewFeatures to determine which pro model to use for A2A by @sehoon38
615
+ in https://github.com/google-gemini/gemini-cli/pull/15131
616
+ - refactor(cli): fix settings merging so that settings using the new json format
617
+ take priority over ones using the old format by @jacob314 in
618
+ https://github.com/google-gemini/gemini-cli/pull/15116
619
+
620
+ **Full Changelog**:
621
+ https://github.com/google-gemini/gemini-cli/compare/v0.21.0-preview.6...v0.22.0-preview.0
622
+
623
+ ## Release v0.20.0 - v0.20.2
624
+
625
+ ### What's Changed
626
+
627
+ - Update error codes when process exiting the gemini cli by @megha1188 in
628
+ https://github.com/google-gemini/gemini-cli/pull/13728
629
+ - chore(release): bump version to 0.20.0-nightly.20251126.d2a6cff4d by
630
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13835
631
+ - feat(core): Improve request token calculation accuracy by @SandyTao520 in
632
+ https://github.com/google-gemini/gemini-cli/pull/13824
633
+ - Changes in system instruction to adapt to gemini 3.0 to ensure that the CLI
634
+ explains its actions before calling tools by @silviojr in
635
+ https://github.com/google-gemini/gemini-cli/pull/13810
636
+ - feat(hooks): Hook Tool Execution Integration by @Edilmo in
637
+ https://github.com/google-gemini/gemini-cli/pull/9108
638
+ - Add support for MCP server instructions behind config option by @chrstnb in
639
+ https://github.com/google-gemini/gemini-cli/pull/13432
640
+ - Update System Instructions for interactive vs non-interactive mode. by
641
+ @aishaneeshah in https://github.com/google-gemini/gemini-cli/pull/12315
642
+ - Add consent flag to Link command by @kevinjwang1 in
643
+ https://github.com/google-gemini/gemini-cli/pull/13832
644
+ - feat(mcp): Inject GoogleCredentialProvider headers in McpClient by
645
+ @sai-sunder-s in https://github.com/google-gemini/gemini-cli/pull/13783
646
+ - feat(core): implement towards policy-driven model fallback mechanism by
647
+ @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/13781
648
+ - feat(core): Add configurable inactivity timeout for shell commands by @galz10
649
+ in https://github.com/google-gemini/gemini-cli/pull/13531
650
+ - fix(auth): improve API key authentication flow by @galz10 in
651
+ https://github.com/google-gemini/gemini-cli/pull/13829
652
+ - feat(hooks): Hook LLM Request/Response Integration by @Edilmo in
653
+ https://github.com/google-gemini/gemini-cli/pull/9110
654
+ - feat(ui): Show waiting MCP servers in ConfigInitDisplay by @werdnum in
655
+ https://github.com/google-gemini/gemini-cli/pull/13721
656
+ - Add usage limit remaining in /stats by @sehoon38 in
657
+ https://github.com/google-gemini/gemini-cli/pull/13843
658
+ - feat(shell): Standardize pager to 'cat' for shell execution by model by
659
+ @galz10 in https://github.com/google-gemini/gemini-cli/pull/13878
660
+ - chore/release: bump version to 0.20.0-nightly.20251127.5bed97064 by
661
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13877
662
+ - Revert to default LICENSE (Revert #13449) by @scidomino in
663
+ https://github.com/google-gemini/gemini-cli/pull/13876
664
+ - update(telemetry): OTel API response event with finish reasons by @kiranani in
665
+ https://github.com/google-gemini/gemini-cli/pull/13849
666
+ - feat(hooks): Hooks Comprehensive Integration Testing by @Edilmo in
667
+ https://github.com/google-gemini/gemini-cli/pull/9112
668
+ - chore: fix session browser test and skip hook system tests by @jackwotherspoon
669
+ in https://github.com/google-gemini/gemini-cli/pull/14099
670
+ - feat(telemetry): Add Semantic logging for to ApiRequestEvents by @kiranani in
671
+ https://github.com/google-gemini/gemini-cli/pull/13912
672
+ - test: Add verification for $schema property in settings schema by
673
+ @maryamariyan in https://github.com/google-gemini/gemini-cli/pull/13497
674
+ - Fixes `/clear` command to preserve input history for up-arrow navigation while
675
+ still clearing the context window and screen by @korade-krushna in
676
+ https://github.com/google-gemini/gemini-cli/pull/14182
677
+ - fix(core): handle EPIPE error in hook runner when writing to stdin by
678
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/14231
679
+ - fix: Exclude web-fetch tool from executing in default non-interactive mode to
680
+ avoid CLI hang. by @MayV in
681
+ https://github.com/google-gemini/gemini-cli/pull/14244
682
+ - Always use MCP server instructions by @chrstnb in
683
+ https://github.com/google-gemini/gemini-cli/pull/14297
684
+ - feat: auto-execute simple slash commands on Enter by @jackwotherspoon in
685
+ https://github.com/google-gemini/gemini-cli/pull/13985
686
+ - chore/release: bump version to 0.20.0-nightly.20251201.2fe609cb6 by
687
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14304
688
+ - feat: Add startup profiler to measure and record application initialization
689
+ phases. by @kevin-ramdass in
690
+ https://github.com/google-gemini/gemini-cli/pull/13638
691
+ - bug(core): Avoid stateful tool use in `executor`. by @joshualitt in
692
+ https://github.com/google-gemini/gemini-cli/pull/14305
693
+ - feat(themes): add built-in holiday theme 🎁 by @jackwotherspoon in
694
+ https://github.com/google-gemini/gemini-cli/pull/14301
695
+ - Updated ToC on docs intro; updated title casing to match Google style by
696
+ @pcoet in https://github.com/google-gemini/gemini-cli/pull/13717
697
+ - feat(a2a): Urgent fix - Process modelInfo agent message by @cocosheng-g in
698
+ https://github.com/google-gemini/gemini-cli/pull/14315
699
+ - feat(core): enhance availability routing with wrapped fallback and
700
+ single-model policies by @adamfweidman in
701
+ https://github.com/google-gemini/gemini-cli/pull/13874
702
+ - chore(logging): log the problematic event for #12122 by @briandealwis in
703
+ https://github.com/google-gemini/gemini-cli/pull/14092
704
+ - fix: remove invalid type key in bug_report.yml by @fancive in
705
+ https://github.com/google-gemini/gemini-cli/pull/13576
706
+ - update screenshot by @Transient-Onlooker in
707
+ https://github.com/google-gemini/gemini-cli/pull/13976
708
+ - docs: Fix grammar error in Release Cadence (Nightly section) by @JuanCS-Dev in
709
+ https://github.com/google-gemini/gemini-cli/pull/13866
710
+ - fix(async): prevent missed async errors from bypassing catch handlers by
711
+ @amsminn in https://github.com/google-gemini/gemini-cli/pull/13714
712
+ - fix(zed-integration): remove extra field from acp auth request by
713
+ @marcocondrache in https://github.com/google-gemini/gemini-cli/pull/13646
714
+ - feat(cli): Documentation for model configs. by @joshualitt in
715
+ https://github.com/google-gemini/gemini-cli/pull/12967
716
+ - fix(ui): misaligned markdown table rendering by @dumbbellcode in
717
+ https://github.com/google-gemini/gemini-cli/pull/8336
718
+ - docs: Update 4 files by @g-samroberts in
719
+ https://github.com/google-gemini/gemini-cli/pull/13628
720
+ - fix: Conditionally add set -eEuo pipefail in setup-github command by @Smetalo
721
+ in https://github.com/google-gemini/gemini-cli/pull/8550
722
+ - fix(cli): fix issue updating a component while rendering a different component
723
+ by @jacob314 in https://github.com/google-gemini/gemini-cli/pull/14319
724
+ - Increase flakey test timeout by @chrstnb in
725
+ https://github.com/google-gemini/gemini-cli/pull/14377
726
+ - Remove references to deleted kind/bug label by @scidomino in
727
+ https://github.com/google-gemini/gemini-cli/pull/14383
728
+ - Don't fail test if we can't cleanup by @scidomino in
729
+ https://github.com/google-gemini/gemini-cli/pull/14389
730
+ - feat(core): Implement JIT context manager and setting by @SandyTao520 in
731
+ https://github.com/google-gemini/gemini-cli/pull/14324
732
+ - Use polling for extensions-reload integration test by @chrstnb in
733
+ https://github.com/google-gemini/gemini-cli/pull/14391
734
+ - Add docs directive to GEMINI.md by @g-samroberts in
735
+ https://github.com/google-gemini/gemini-cli/pull/14327
736
+ - Hide sessions that don't have user messages by @bl-ue in
737
+ https://github.com/google-gemini/gemini-cli/pull/13994
738
+ - chore(ci): mark GitHub release as pre-release if not on "latest" npm channel
739
+ by @ljxfstorm in https://github.com/google-gemini/gemini-cli/pull/7386
740
+ - fix(patch): cherry-pick d284fa6 to release/v0.20.0-preview.0-pr-14545
741
+ [CONFLICTS] by @gemini-cli-robot in
742
+ https://github.com/google-gemini/gemini-cli/pull/14559
743
+ - fix(patch): cherry-pick 828afe1 to release/v0.20.0-preview.1-pr-14159 to patch
744
+ version v0.20.0-preview.1 and create version 0.20.0-preview.2 by
745
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14733
746
+ - fix(patch): cherry-pick 171103a to release/v0.20.0-preview.2-pr-14742 to patch
747
+ version v0.20.0-preview.2 and create version 0.20.0-preview.5 by
748
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/14752
749
+
750
+ **Full Changelog**:
751
+ https://github.com/google-gemini/gemini-cli/compare/v0.19.4...v0.20.0
752
+
753
+ ## Release v0.19.0 - v0.19.4
754
+
755
+ ## Highlights
756
+
757
+ - **Zed integration:** Users can now leverage Gemini 3 within the Zed
758
+ integration after enabling "Preview Features" in their CLI’s `/settings`.
759
+ - **Interactive shell:**
760
+ - **Click-to-Focus:** Go to `/settings` and enable **Use Alternate Buffer**
761
+ When "Use Alternate Buffer" setting is enabled users can click within the
762
+ embedded shell output to focus it for input.
763
+ - **Loading phrase:** Clearly indicates when the interactive shell is awaiting
764
+ user input. ([vid](https://imgur.com/a/kjK8bUK)
765
+ [pr](https://github.com/google-gemini/gemini-cli/pull/12535) by
766
+ [@jackwotherspoon](https://github.com/jackwotherspoon))
767
+
768
+ ### What's Changed
769
+
770
+ - Use lenient MCP output schema validator by @cornmander in
771
+ https://github.com/google-gemini/gemini-cli/pull/13521
772
+ - Update persistence state to track counts of messages instead of times banner
773
+ has been displayed by @Adib234 in
774
+ https://github.com/google-gemini/gemini-cli/pull/13428
775
+ - update docs for http proxy by @scidomino in
776
+ https://github.com/google-gemini/gemini-cli/pull/13538
777
+ - move stdio by @jacob314 in
778
+ https://github.com/google-gemini/gemini-cli/pull/13528
779
+ - chore(release): bump version to 0.19.0-nightly.20251120.8e531dc02 by
780
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13540
781
+ - Skip pre-commit hooks for shadow repo (#13331) by @vishvananda in
782
+ https://github.com/google-gemini/gemini-cli/pull/13488
783
+ - fix(ui): Correct mouse click cursor positioning for wide characters by
784
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/13537
785
+ - fix(core): correct bash @P prompt transformation detection by @pyrytakala in
786
+ https://github.com/google-gemini/gemini-cli/pull/13544
787
+ - Optimize and improve test coverage for cli/src/config by @megha1188 in
788
+ https://github.com/google-gemini/gemini-cli/pull/13485
789
+ - Improve code coverage for cli/src/ui/privacy package by @megha1188 in
790
+ https://github.com/google-gemini/gemini-cli/pull/13493
791
+ - docs: fix typos in source code and documentation by @fancive in
792
+ https://github.com/google-gemini/gemini-cli/pull/13577
793
+ - Improved code coverage for cli/src/zed-integration by @megha1188 in
794
+ https://github.com/google-gemini/gemini-cli/pull/13570
795
+ - feat(ui): build interactive session browser component by @bl-ue in
796
+ https://github.com/google-gemini/gemini-cli/pull/13351
797
+ - Fix multiple bugs with auth flow including using the implemented but unused
798
+ restart support. by @jacob314 in
799
+ https://github.com/google-gemini/gemini-cli/pull/13565
800
+ - feat(core): add modelAvailabilityService for managing and tracking model
801
+ health by @adamfweidman in
802
+ https://github.com/google-gemini/gemini-cli/pull/13426
803
+ - docs: fix grammar typo "a MCP" to "an MCP" by @noahacgn in
804
+ https://github.com/google-gemini/gemini-cli/pull/13595
805
+ - feat: custom loading phrase when interactive shell requires input by
806
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/12535
807
+ - docs: Update uninstall command to reflect multiple extension support by
808
+ @JayadityaGit in https://github.com/google-gemini/gemini-cli/pull/13582
809
+ - bug(core): Ensure we use thinking budget on fallback to 2.5 by @joshualitt in
810
+ https://github.com/google-gemini/gemini-cli/pull/13596
811
+ - Remove useModelRouter experimental flag by @Adib234 in
812
+ https://github.com/google-gemini/gemini-cli/pull/13593
813
+ - feat(docs): Ensure multiline JS objects are rendered properly. by @joshualitt
814
+ in https://github.com/google-gemini/gemini-cli/pull/13535
815
+ - Fix exp id logging by @owenofbrien in
816
+ https://github.com/google-gemini/gemini-cli/pull/13430
817
+ - Moved client id logging into createBasicLogEvent by @owenofbrien in
818
+ https://github.com/google-gemini/gemini-cli/pull/13607
819
+ - Restore bracketed paste mode after external editor exit by @scidomino in
820
+ https://github.com/google-gemini/gemini-cli/pull/13606
821
+ - feat(core): Add support for custom aliases for model configs. by @joshualitt
822
+ in https://github.com/google-gemini/gemini-cli/pull/13546
823
+ - feat(core): Add `BaseLlmClient.generateContent`. by @joshualitt in
824
+ https://github.com/google-gemini/gemini-cli/pull/13591
825
+ - Turn off alternate buffer mode by default. by @jacob314 in
826
+ https://github.com/google-gemini/gemini-cli/pull/13623
827
+ - fix(cli): Prevent stdout/stderr patching for extension commands by @chrstnb in
828
+ https://github.com/google-gemini/gemini-cli/pull/13600
829
+ - Improve test coverage for cli/src/ui/components by @megha1188 in
830
+ https://github.com/google-gemini/gemini-cli/pull/13598
831
+ - Update ink version to 6.4.6 by @jacob314 in
832
+ https://github.com/google-gemini/gemini-cli/pull/13631
833
+ - chore/release: bump version to 0.19.0-nightly.20251122.42c2e1b21 by
834
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13637
835
+ - chore/release: bump version to 0.19.0-nightly.20251123.dadd606c0 by
836
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13675
837
+ - chore/release: bump version to 0.19.0-nightly.20251124.e177314a4 by
838
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13713
839
+ - fix(core): Fix context window overflow warning for PDF files by @kkitase in
840
+ https://github.com/google-gemini/gemini-cli/pull/13548
841
+ - feat :rephrasing the extension logging messages to run the explore command
842
+ when there are no extensions installed by @JayadityaGit in
843
+ https://github.com/google-gemini/gemini-cli/pull/13740
844
+ - Improve code coverage for cli package by @megha1188 in
845
+ https://github.com/google-gemini/gemini-cli/pull/13724
846
+ - Add session subtask in /stats command by @Adib234 in
847
+ https://github.com/google-gemini/gemini-cli/pull/13750
848
+ - feat(core): Migrate chatCompressionService to model configs. by @joshualitt in
849
+ https://github.com/google-gemini/gemini-cli/pull/12863
850
+ - feat(hooks): Hook Telemetry Infrastructure by @Edilmo in
851
+ https://github.com/google-gemini/gemini-cli/pull/9082
852
+ - fix: (some minor improvements to configs and getPackageJson return behaviour)
853
+ by @grMLEqomlkkU5Eeinz4brIrOVCUCkJuN in
854
+ https://github.com/google-gemini/gemini-cli/pull/12510
855
+ - feat(hooks): Hook Event Handling by @Edilmo in
856
+ https://github.com/google-gemini/gemini-cli/pull/9097
857
+ - feat(hooks): Hook Agent Lifecycle Integration by @Edilmo in
858
+ https://github.com/google-gemini/gemini-cli/pull/9105
859
+ - feat(core): Land bool for alternate system prompt. by @joshualitt in
860
+ https://github.com/google-gemini/gemini-cli/pull/13764
861
+ - bug(core): Add default chat compression config. by @joshualitt in
862
+ https://github.com/google-gemini/gemini-cli/pull/13766
863
+ - feat(model-availability): introduce ModelPolicy and PolicyCatalog by
864
+ @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/13751
865
+ - feat(hooks): Hook System Orchestration by @Edilmo in
866
+ https://github.com/google-gemini/gemini-cli/pull/9102
867
+ - feat(config): add isModelAvailabilityServiceEnabled setting by @adamfweidman
868
+ in https://github.com/google-gemini/gemini-cli/pull/13777
869
+ - chore/release: bump version to 0.19.0-nightly.20251125.f6d97d448 by
870
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13782
871
+ - chore: remove console.error by @adamfweidman in
872
+ https://github.com/google-gemini/gemini-cli/pull/13779
873
+ - fix: Add $schema property to settings.schema.json by @sacrosanctic in
874
+ https://github.com/google-gemini/gemini-cli/pull/12763
875
+ - fix(cli): allow non-GitHub SCP-styled URLs for extension installation by @m0ps
876
+ in https://github.com/google-gemini/gemini-cli/pull/13800
877
+ - fix(resume): allow passing a prompt via stdin while resuming using --resume by
878
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13520
879
+ - feat(sessions): add /resume slash command to open the session browser by
880
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13621
881
+ - docs(sessions): add documentation for chat recording and session management by
882
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13667
883
+ - Fix TypeError: "URL.parse is not a function" for Node.js < v22 by @macarronesc
884
+ in https://github.com/google-gemini/gemini-cli/pull/13698
885
+ - fallback to flash for TerminalQuota errors by @sehoon38 in
886
+ https://github.com/google-gemini/gemini-cli/pull/13791
887
+ - Update Code Wiki README badge by @PatoBeltran in
888
+ https://github.com/google-gemini/gemini-cli/pull/13768
889
+ - Add Databricks auth support and custom header option to gemini cli by
890
+ @AarushiShah in https://github.com/google-gemini/gemini-cli/pull/11893
891
+ - Update dependency for modelcontextprotocol/sdk to 1.23.0 by @bbiggs in
892
+ https://github.com/google-gemini/gemini-cli/pull/13827
893
+ - fix(patch): cherry-pick 576fda1 to release/v0.19.0-preview.0-pr-14099
894
+ [CONFLICTS] by @gemini-cli-robot in
895
+ https://github.com/google-gemini/gemini-cli/pull/14402
896
+
897
+ **Full Changelog**:
898
+ https://github.com/google-gemini/gemini-cli/compare/v0.18.4...v0.19.0
899
+
900
+ ## Release v0.19.0-preview.0
901
+
902
+ ### What's Changed
903
+
904
+ - Use lenient MCP output schema validator by @cornmander in
905
+ https://github.com/google-gemini/gemini-cli/pull/13521
906
+ - Update persistence state to track counts of messages instead of times banner
907
+ has been displayed by @Adib234 in
908
+ https://github.com/google-gemini/gemini-cli/pull/13428
909
+ - update docs for http proxy by @scidomino in
910
+ https://github.com/google-gemini/gemini-cli/pull/13538
911
+ - move stdio by @jacob314 in
912
+ https://github.com/google-gemini/gemini-cli/pull/13528
913
+ - chore(release): bump version to 0.19.0-nightly.20251120.8e531dc02 by
914
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13540
915
+ - Skip pre-commit hooks for shadow repo (#13331) by @vishvananda in
916
+ https://github.com/google-gemini/gemini-cli/pull/13488
917
+ - fix(ui): Correct mouse click cursor positioning for wide characters by
918
+ @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/13537
919
+ - fix(core): correct bash @P prompt transformation detection by @pyrytakala in
920
+ https://github.com/google-gemini/gemini-cli/pull/13544
921
+ - Optimize and improve test coverage for cli/src/config by @megha1188 in
922
+ https://github.com/google-gemini/gemini-cli/pull/13485
923
+ - Improve code coverage for cli/src/ui/privacy package by @megha1188 in
924
+ https://github.com/google-gemini/gemini-cli/pull/13493
925
+ - docs: fix typos in source code and documentation by @fancive in
926
+ https://github.com/google-gemini/gemini-cli/pull/13577
927
+ - Improved code coverage for cli/src/zed-integration by @megha1188 in
928
+ https://github.com/google-gemini/gemini-cli/pull/13570
929
+ - feat(ui): build interactive session browser component by @bl-ue in
930
+ https://github.com/google-gemini/gemini-cli/pull/13351
931
+ - Fix multiple bugs with auth flow including using the implemented but unused
932
+ restart support. by @jacob314 in
933
+ https://github.com/google-gemini/gemini-cli/pull/13565
934
+ - feat(core): add modelAvailabilityService for managing and tracking model
935
+ health by @adamfweidman in
936
+ https://github.com/google-gemini/gemini-cli/pull/13426
937
+ - docs: fix grammar typo "a MCP" to "an MCP" by @noahacgn in
938
+ https://github.com/google-gemini/gemini-cli/pull/13595
939
+ - feat: custom loading phrase when interactive shell requires input by
940
+ @jackwotherspoon in https://github.com/google-gemini/gemini-cli/pull/12535
941
+ - docs: Update uninstall command to reflect multiple extension support by
942
+ @JayadityaGit in https://github.com/google-gemini/gemini-cli/pull/13582
943
+ - bug(core): Ensure we use thinking budget on fallback to 2.5 by @joshualitt in
944
+ https://github.com/google-gemini/gemini-cli/pull/13596
945
+ - Remove useModelRouter experimental flag by @Adib234 in
946
+ https://github.com/google-gemini/gemini-cli/pull/13593
947
+ - feat(docs): Ensure multiline JS objects are rendered properly. by @joshualitt
948
+ in https://github.com/google-gemini/gemini-cli/pull/13535
949
+ - Fix exp id logging by @owenofbrien in
950
+ https://github.com/google-gemini/gemini-cli/pull/13430
951
+ - Moved client id logging into createBasicLogEvent by @owenofbrien in
952
+ https://github.com/google-gemini/gemini-cli/pull/13607
953
+ - Restore bracketed paste mode after external editor exit by @scidomino in
954
+ https://github.com/google-gemini/gemini-cli/pull/13606
955
+ - feat(core): Add support for custom aliases for model configs. by @joshualitt
956
+ in https://github.com/google-gemini/gemini-cli/pull/13546
957
+ - feat(core): Add `BaseLlmClient.generateContent`. by @joshualitt in
958
+ https://github.com/google-gemini/gemini-cli/pull/13591
959
+ - Turn off alternate buffer mode by default. by @jacob314 in
960
+ https://github.com/google-gemini/gemini-cli/pull/13623
961
+ - fix(cli): Prevent stdout/stderr patching for extension commands by @chrstnb in
962
+ https://github.com/google-gemini/gemini-cli/pull/13600
963
+ - Improve test coverage for cli/src/ui/components by @megha1188 in
964
+ https://github.com/google-gemini/gemini-cli/pull/13598
965
+ - Update ink version to 6.4.6 by @jacob314 in
966
+ https://github.com/google-gemini/gemini-cli/pull/13631
967
+ - chore/release: bump version to 0.19.0-nightly.20251122.42c2e1b21 by
968
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13637
969
+ - chore/release: bump version to 0.19.0-nightly.20251123.dadd606c0 by
970
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13675
971
+ - chore/release: bump version to 0.19.0-nightly.20251124.e177314a4 by
972
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13713
973
+ - fix(core): Fix context window overflow warning for PDF files by @kkitase in
974
+ https://github.com/google-gemini/gemini-cli/pull/13548
975
+ - feat :rephrasing the extension logging messages to run the explore command
976
+ when there are no extensions installed by @JayadityaGit in
977
+ https://github.com/google-gemini/gemini-cli/pull/13740
978
+ - Improve code coverage for cli package by @megha1188 in
979
+ https://github.com/google-gemini/gemini-cli/pull/13724
980
+ - Add session subtask in /stats command by @Adib234 in
981
+ https://github.com/google-gemini/gemini-cli/pull/13750
982
+ - feat(core): Migrate chatCompressionService to model configs. by @joshualitt in
983
+ https://github.com/google-gemini/gemini-cli/pull/12863
984
+ - feat(hooks): Hook Telemetry Infrastructure by @Edilmo in
985
+ https://github.com/google-gemini/gemini-cli/pull/9082
986
+ - fix: (some minor improvements to configs and getPackageJson return behaviour)
987
+ by @grMLEqomlkkU5Eeinz4brIrOVCUCkJuN in
988
+ https://github.com/google-gemini/gemini-cli/pull/12510
989
+ - feat(hooks): Hook Event Handling by @Edilmo in
990
+ https://github.com/google-gemini/gemini-cli/pull/9097
991
+ - feat(hooks): Hook Agent Lifecycle Integration by @Edilmo in
992
+ https://github.com/google-gemini/gemini-cli/pull/9105
993
+ - feat(core): Land bool for alternate system prompt. by @joshualitt in
994
+ https://github.com/google-gemini/gemini-cli/pull/13764
995
+ - bug(core): Add default chat compression config. by @joshualitt in
996
+ https://github.com/google-gemini/gemini-cli/pull/13766
997
+ - feat(model-availability): introduce ModelPolicy and PolicyCatalog by
998
+ @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/13751
999
+ - feat(hooks): Hook System Orchestration by @Edilmo in
1000
+ https://github.com/google-gemini/gemini-cli/pull/9102
1001
+ - feat(config): add isModelAvailabilityServiceEnabled setting by @adamfweidman
1002
+ in https://github.com/google-gemini/gemini-cli/pull/13777
1003
+ - chore/release: bump version to 0.19.0-nightly.20251125.f6d97d448 by
1004
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13782
1005
+ - chore: remove console.error by @adamfweidman in
1006
+ https://github.com/google-gemini/gemini-cli/pull/13779
1007
+ - fix: Add $schema property to settings.schema.json by @sacrosanctic in
1008
+ https://github.com/google-gemini/gemini-cli/pull/12763
1009
+ - fix(cli): allow non-GitHub SCP-styled URLs for extension installation by @m0ps
1010
+ in https://github.com/google-gemini/gemini-cli/pull/13800
1011
+ - fix(resume): allow passing a prompt via stdin while resuming using --resume by
1012
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13520
1013
+ - feat(sessions): add /resume slash command to open the session browser by
1014
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13621
1015
+ - docs(sessions): add documentation for chat recording and session management by
1016
+ @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13667
1017
+ - Fix TypeError: "URL.parse is not a function" for Node.js < v22 by @macarronesc
1018
+ in https://github.com/google-gemini/gemini-cli/pull/13698
1019
+ - fallback to flash for TerminalQuota errors by @sehoon38 in
1020
+ https://github.com/google-gemini/gemini-cli/pull/13791
1021
+ - Update Code Wiki README badge by @PatoBeltran in
1022
+ https://github.com/google-gemini/gemini-cli/pull/13768
1023
+ - Add Databricks auth support and custom header option to gemini cli by
1024
+ @AarushiShah in https://github.com/google-gemini/gemini-cli/pull/11893
1025
+ - Update dependency for modelcontextprotocol/sdk to 1.23.0 by @bbiggs in
1026
+ https://github.com/google-gemini/gemini-cli/pull/13827
1027
+
1028
+ **Full Changelog**:
1029
+ https://github.com/google-gemini/gemini-cli/compare/v0.18.0-preview.4...v0.19.0-preview.0
1030
+
1031
+ ## Release v0.18.0 - v0.18.4
1032
+
1033
+ ### Highlights
1034
+
1035
+ - **Experimental permission improvements**: We're experimenting with a new
1036
+ policy engine in Cell CLI, letting users and administrators create
1037
+ fine-grained policies for tool calls. This setting is currently behind a flag.
1038
+ See our [policy engine documentation](../core/policy-engine.md) to learn how
1039
+ to use this feature.
1040
+ - **Gemini 3 support rolled out for some users**: Some users can now enable
1041
+ Gemini 3 by using the `/settings` flag and toggling **Preview Features**. See
1042
+ our [Gemini 3 on Cell CLI documentation](../get-started/gemini-3.md) to find
1043
+ out more about using Gemini 3.
1044
+ - **Updated UI rollback:** We've temporarily rolled back a previous UI update,
1045
+ which enabled embedded scrolling and mouse support. This can be re-enabled by
1046
+ using the `/settings` command and setting **Use Alternate Screen Buffer** to
1047
+ `true`.
1048
+ - **Display your model in your chat history**: You can now go use `/settings`
1049
+ and turn on **Show Model in Chat** to display the model in your chat history.
1050
+ - **Uninstall multiple extensions**: You can uninstall multiple extensions with
1051
+ a single command: `gemini extensions uninstall`.
1052
+
1053
+ ![Uninstalling Gemini extensions with a single command](https://i.imgur.com/pi7nEBI.png)
1054
+
1055
+ ### What's changed
1056
+
1057
+ - Remove obsolete reference to "help wanted" label in CONTRIBUTING.md by
1058
+ @aswinashok44 in https://github.com/google-gemini/gemini-cli/pull/13291
1059
+ - chore(release): v0.18.0-nightly.20251118.86828bb56 by @skeshive in
1060
+ https://github.com/google-gemini/gemini-cli/pull/13309
1061
+ - Docs: Access clarification. by @jkcinouye in
1062
+ https://github.com/google-gemini/gemini-cli/pull/13304
1063
+ - Fix links in Gemini 3 Pro documentation by @gmackall in
1064
+ https://github.com/google-gemini/gemini-cli/pull/13312
1065
+ - Improve keyboard code parsing by @scidomino in
1066
+ https://github.com/google-gemini/gemini-cli/pull/13307
1067
+ - fix(core): Ensure `read_many_files` tool is available to zed. by @joshualitt
1068
+ in https://github.com/google-gemini/gemini-cli/pull/13338
1069
+ - Support 3-parameter modifyOtherKeys sequences by @scidomino in
1070
+ https://github.com/google-gemini/gemini-cli/pull/13342
1071
+ - Improve pty resize error handling for Windows by @galz10 in
1072
+ https://github.com/google-gemini/gemini-cli/pull/13353
1073
+ - fix(ui): Clear input prompt on Escape key press by @SandyTao520 in
1074
+ https://github.com/google-gemini/gemini-cli/pull/13335
1075
+ - bug(ui) showLineNumbers had the wrong default value. by @jacob314 in
1076
+ https://github.com/google-gemini/gemini-cli/pull/13356
1077
+ - fix(cli): fix crash on startup in NO_COLOR mode (#13343) due to ungua… by
1078
+ @avilladsen in https://github.com/google-gemini/gemini-cli/pull/13352
1079
+ - fix: allow MCP prompts with spaces in name by @jackwotherspoon in
1080
+ https://github.com/google-gemini/gemini-cli/pull/12910
1081
+ - Refactor createTransport to duplicate less code by @davidmcwherter in
1082
+ https://github.com/google-gemini/gemini-cli/pull/13010
1083
+ - Followup from #10719 by @bl-ue in
1084
+ https://github.com/google-gemini/gemini-cli/pull/13243
1085
+ - Capturing github action workflow name if present and send it to clearcut by
1086
+ @MJjainam in https://github.com/google-gemini/gemini-cli/pull/13132
1087
+ - feat(sessions): record interactive-only errors and warnings to chat recording
1088
+ JSON files by @bl-ue in https://github.com/google-gemini/gemini-cli/pull/13300
1089
+ - fix(zed-integration): Correctly handle cancellation errors by @benbrandt in
1090
+ https://github.com/google-gemini/gemini-cli/pull/13399
1091
+ - docs: Add Code Wiki link to README by @holtskinner in
1092
+ https://github.com/google-gemini/gemini-cli/pull/13289
1093
+ - Restore keyboard mode when exiting the editor by @scidomino in
1094
+ https://github.com/google-gemini/gemini-cli/pull/13350
1095
+ - feat(core, cli): Bump genai version to 1.30.0 by @joshualitt in
1096
+ https://github.com/google-gemini/gemini-cli/pull/13435
1097
+ - [cli-ui] Keep header ASCII art colored on non-gradient terminals (#13373) by
1098
+ @bniladridas in https://github.com/google-gemini/gemini-cli/pull/13374
1099
+ - Fix Copyright line in LICENSE by @scidomino in
1100
+ https://github.com/google-gemini/gemini-cli/pull/13449
1101
+ - Fix typo in write_todos methodology instructions by @Smetalo in
1102
+ https://github.com/google-gemini/gemini-cli/pull/13411
1103
+ - feat: update thinking mode support to exclude gemini-2.0 models and simplify
1104
+ logic. by @kevin-ramdass in
1105
+ https://github.com/google-gemini/gemini-cli/pull/13454
1106
+ - remove unneeded log by @scidomino in
1107
+ https://github.com/google-gemini/gemini-cli/pull/13456
1108
+ - feat: add click-to-focus support for interactive shell by @galz10 in
1109
+ https://github.com/google-gemini/gemini-cli/pull/13341
1110
+ - Add User email detail to about box by @ptone in
1111
+ https://github.com/google-gemini/gemini-cli/pull/13459
1112
+ - feat(core): Wire up chat code path for model configs. by @joshualitt in
1113
+ https://github.com/google-gemini/gemini-cli/pull/12850
1114
+ - chore/release: bump version to 0.18.0-nightly.20251120.2231497b1 by
1115
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13476
1116
+ - feat(core): Fix bug with incorrect model overriding. by @joshualitt in
1117
+ https://github.com/google-gemini/gemini-cli/pull/13477
1118
+ - Use synchronous writes when detecting keyboard modes by @scidomino in
1119
+ https://github.com/google-gemini/gemini-cli/pull/13478
1120
+ - fix(cli): prevent race condition when restoring prompt after context overflow
1121
+ by @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/13473
1122
+ - Revert "feat(core): Fix bug with incorrect model overriding." by @adamfweidman
1123
+ in https://github.com/google-gemini/gemini-cli/pull/13483
1124
+ - Fix: Update system instruction when GEMINI.md memory is loaded or refreshed by
1125
+ @lifefloating in https://github.com/google-gemini/gemini-cli/pull/12136
1126
+ - fix(zed-integration): Ensure that the zed integration is classified as
1127
+ interactive by @benbrandt in
1128
+ https://github.com/google-gemini/gemini-cli/pull/13394
1129
+ - Copy commands as part of setup-github by @gsehgal in
1130
+ https://github.com/google-gemini/gemini-cli/pull/13464
1131
+ - Update banner design by @Adib234 in
1132
+ https://github.com/google-gemini/gemini-cli/pull/13420
1133
+ - Protect stdout and stderr so JavaScript code can't accidentally write to
1134
+ stdout corrupting ink rendering by @jacob314 in
1135
+ https://github.com/google-gemini/gemini-cli/pull/13247
1136
+ - Enable switching preview features on/off without restart by @Adib234 in
1137
+ https://github.com/google-gemini/gemini-cli/pull/13515
1138
+ - feat(core): Use thinking level for Gemini 3 by @joshualitt in
1139
+ https://github.com/google-gemini/gemini-cli/pull/13445
1140
+ - Change default compress threshold to 0.5 for api key users by @scidomino in
1141
+ https://github.com/google-gemini/gemini-cli/pull/13517
1142
+ - remove duplicated mouse code by @scidomino in
1143
+ https://github.com/google-gemini/gemini-cli/pull/13525
1144
+ - feat(zed-integration): Use default model routing for Zed integration by
1145
+ @benbrandt in https://github.com/google-gemini/gemini-cli/pull/13398
1146
+ - feat(core): Incorporate Gemini 3 into model config hierarchy. by @joshualitt
1147
+ in https://github.com/google-gemini/gemini-cli/pull/13447
1148
+ - fix(patch): cherry-pick 5e218a5 to release/v0.18.0-preview.0-pr-13623 to patch
1149
+ version v0.18.0-preview.0 and create version 0.18.0-preview.1 by
1150
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13626
1151
+ - fix(patch): cherry-pick d351f07 to release/v0.18.0-preview.1-pr-12535 to patch
1152
+ version v0.18.0-preview.1 and create version 0.18.0-preview.2 by
1153
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13813
1154
+ - fix(patch): cherry-pick 3e50be1 to release/v0.18.0-preview.2-pr-13428 to patch
1155
+ version v0.18.0-preview.2 and create version 0.18.0-preview.3 by
1156
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13821
1157
+ - fix(patch): cherry-pick d8a3d08 to release/v0.18.0-preview.3-pr-13791 to patch
1158
+ version v0.18.0-preview.3 and create version 0.18.0-preview.4 by
1159
+ @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/13826
1160
+
1161
+ **Full Changelog**:
1162
+ https://github.com/google-gemini/gemini-cli/compare/v0.17.1...v0.18.0