What's Changed
- feat(core): steer model to use edit tool for surgical edits, fix a typo by @aishaneeshah in https://github.com/google-gemini/gemini-cli/pull/26480
- docs: clarify Auto Memory proposes memory updates and skills by @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/26527
- fix(core): reject numeric project IDs in GOOGLE_CLOUD_PROJECT (#24695) by @Abhijit-2592 in https://github.com/google-gemini/gemini-cli/pull/26532
- fix(core): remove unsafe type assertion suppressions in error utils by @himanshu748 in https://github.com/google-gemini/gemini-cli/pull/19881
- fix(core): allow redirection in YOLO and AUTO_EDIT modes without sandboxing by @galz10 in https://github.com/google-gemini/gemini-cli/pull/26542
- ci(release): build and attach unsigned macOS binaries to releases by @ruomengz in https://github.com/google-gemini/gemini-cli/pull/26462
- fix(core): Fix chat corruption bug in context manager. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26534
- fix(cli): provide JSON output for AgentExecutionStopped in non-interactive mode by @cynthialong0-0 in https://github.com/google-gemini/gemini-cli/pull/26504
- feat(evals): add shell command safety evals by @akh64bit in https://github.com/google-gemini/gemini-cli/pull/26528
- fix(core): handle invalid custom plans directory gracefully by @cynthialong0-0 in https://github.com/google-gemini/gemini-cli/pull/26560
- fix(acp): move tool explanation from thought stream to tool call content by @sripasg in https://github.com/google-gemini/gemini-cli/pull/26554
- fix(a2a-server): Resolve race condition in tool completion waiting by @kschaab in https://github.com/google-gemini/gemini-cli/pull/26568
- fix(cli): randomize sandbox container names by @Kkartik14 in https://github.com/google-gemini/gemini-cli/pull/26014
- fix(core): Fix hysteresis in async context management pipelines. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26452
- Tighten private Auto Memory patch allowlist by @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/26535
- fix(cli): hide read-only settings scopes by @cvan20191 in https://github.com/google-gemini/gemini-cli/pull/26249
- fix(ci): preserve executable bit for mac binaries by @ruomengz in https://github.com/google-gemini/gemini-cli/pull/26600
- fix(cli): improve mcp list UX in untrusted folders by @Adib234 in https://github.com/google-gemini/gemini-cli/pull/26457
- fix(core): prevent silent hang during OAuth auth on headless Linux by @RhysSullivan in https://github.com/google-gemini/gemini-cli/pull/26571
- Changelog for v0.42.0-preview.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/26537
- ci: fix Argument list too long in triage workflows by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26603
- refactor(cli): migrate core tools to native ToolDisplay property and fix UI rendering by @mbleigh in https://github.com/google-gemini/gemini-cli/pull/25186
- don't wrap args unnecessarily by @scidomino in https://github.com/google-gemini/gemini-cli/pull/26599
- fix(core): preserve system PATH in Git environment to fix ENOENT (#25034) by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26587
- fix(routing): fix resolveClassifierModel argument mismatch in ApprovalModeStrategy by @danielweis in https://github.com/google-gemini/gemini-cli/pull/26658
- docs: add vi mode shortcuts and clarify MCP/custom sandbox setup by @chrisjcthomas in https://github.com/google-gemini/gemini-cli/pull/23853
- fix(ux): fixed issue with transcribed text not showing after releasing space by @devr0306 in https://github.com/google-gemini/gemini-cli/pull/26609
- ci: fix json parsing in scheduled triage workflow by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26656
- fix(cli): hide /memory add subcommand when memoryV2 is enabled by @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/26605
- fix: prevent false command conflicts when launching from home directory by @Br1an67 in https://github.com/google-gemini/gemini-cli/pull/23069
- fix(core): cache model routing decision in LocalAgentExecutor by @akh64bit in https://github.com/google-gemini/gemini-cli/pull/26548
- Changelog for v0.42.0-preview.2 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/26597
- skip broken test by @scidomino in https://github.com/google-gemini/gemini-cli/pull/26705
- feat: export session to file and import via flag by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26514
- Feat: Add Machine Hostname to CLI interface by @M-DEV-1 in https://github.com/google-gemini/gemini-cli/pull/25637
- docs(extensions): refactor releasing guide and add update mechanisms by @ruomengz in https://github.com/google-gemini/gemini-cli/pull/26595
- fix(ci): fix maintainer identification in lifecycle manager by @gundermanc in https://github.com/google-gemini/gemini-cli/pull/26706
- fix(ui): added quotes around session id in resume tip by @devr0306 in https://github.com/google-gemini/gemini-cli/pull/26669
- Changelog for v0.41.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/26670
- refactor(core): agent session protocol changes by @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/26661
- fix(context): implement loose boundary policy for gc backstop. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26594
- fix(core): throw explicit error on dropped tool responses by @aishaneeshah in https://github.com/google-gemini/gemini-cli/pull/26668
- fix: resolve "function response turn must come immediately after function call" error by @danielweis in https://github.com/google-gemini/gemini-cli/pull/26691
- fix(core): resolve parallel tool call streaming ID collision by @aishaneeshah in https://github.com/google-gemini/gemini-cli/pull/26646
- feat(core): add LocalSubagentProtocol behind AgentProtocol by @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/25302
- fix(cli): remove noisy theme registration logs from terminal by @JayadityaGit in https://github.com/google-gemini/gemini-cli/pull/25858
- ci: implement codebase-aware effort level triage by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26666
- feat(acp/core): prefix tool call IDs with tool names to support tool rendering in ACP compliant IDEs. by @sripasg in https://github.com/google-gemini/gemini-cli/pull/26676
- fix(mcp): treat GET 404 as 405 in StreamableHTTPClientTransport by @krishdef7 in https://github.com/google-gemini/gemini-cli/pull/24847
- feat(core): add RemoteSubagentProtocol behind AgentProtocol by @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/25303
- feat(context): Improvements to the snapshotter. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26655
- fix(context): Change snapshotter model config. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26745
- fix(cli): allow installing extensions from ssh repo by @danielmundi in https://github.com/google-gemini/gemini-cli/pull/26274
- fix(cli): prevent duplicate SessionStart systemMessage render by @dimssu in https://github.com/google-gemini/gemini-cli/pull/25827
- fix(cli/acp): prevent infinite thought loop in ACP mode by disablig nextSpeakerCheck by @sripasg in https://github.com/google-gemini/gemini-cli/pull/26874
- fix(cli): use static tool name in confirmation prompt to avoid parsing errors by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26866
- fix(routing): Refactor tool turn handling for the conversation history in NumericalClassifierStrategy to prevent 400 Bad Request by @danielweis in https://github.com/google-gemini/gemini-cli/pull/26761
- fix(core): handle malformed projects.json in ProjectRegistry by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26885
- fix(ui): added a gutter width to the input prompt width calculation by @devr0306 in https://github.com/google-gemini/gemini-cli/pull/26882
- fix: prevent EISDIR crash when customIgnoreFilePaths contains directories (#19868) by @suhaan-24 in https://github.com/google-gemini/gemini-cli/pull/19898
- revert 6b9b778d821728427eea07b1b97ba07378137d0b by @danielweis in https://github.com/google-gemini/gemini-cli/pull/26893
- Fix/vscode run current file ts by @Neil-N4 in https://github.com/google-gemini/gemini-cli/pull/22894
- Allow Enter to select session while in search mode in /resume by @f-pieri in https://github.com/google-gemini/gemini-cli/pull/21523
- fix(core): ignore .pak and .rpa game archive formats by default by @Eswar809 in https://github.com/google-gemini/gemini-cli/pull/26884
- fix(cli): enable adk non-interactive session by @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/26895
- fix(cli): restore resume for legacy sessions by @KurodaKayn in https://github.com/google-gemini/gemini-cli/pull/26577
- fix: respect explicit model selection after Flash quota exhaustion (#26759) by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26872
- feat(context): Introduce adaptive token calculator to more accurately calculate content sizes. by @joshualitt in https://github.com/google-gemini/gemini-cli/pull/26888
- chore: update checkout action configuration in workflows by @galz10 in https://github.com/google-gemini/gemini-cli/pull/26897
- fix (telemetry): inject quota_project_id to prevent fallback to default oauth client by @TNTCompany in https://github.com/google-gemini/gemini-cli/pull/26698
- Exclude extension context from skill extraction agent by @SandyTao520 in https://github.com/google-gemini/gemini-cli/pull/26879
- Enable NumericalRouter when using dynamic model configs by @kevinjwang1 in https://github.com/google-gemini/gemini-cli/pull/26929
- ci: actively triage missing priority labels and intelligently clean up conflicting labels by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26865
- refactor(core): introduce SubagentState enum for progress by @adamfweidman in https://github.com/google-gemini/gemini-cli/pull/26934
- fix(ci): replace brittle --no-tag with explicit staging-tmp tag by @scidomino in https://github.com/google-gemini/gemini-cli/pull/26940
- Incremental refactor repo agent towards skills-based composition by @gundermanc in https://github.com/google-gemini/gemini-cli/pull/26717
- fix(ui): fixed line wrap padding for selection lists by @devr0306 in https://github.com/google-gemini/gemini-cli/pull/26944
- fix(core): update read_file schema for v1 compatibility (#22183) by @cocosheng-g in https://github.com/google-gemini/gemini-cli/pull/26922
- fix(ci): configure git remote with token for authentication by @scidomino in https://github.com/google-gemini/gemini-cli/pull/26949
- fix(patch): cherry-pick 85566a7 to release/v0.43.0-preview.0-pr-27073 [CONFLICTS] by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/27256
New Contributors
- @himanshu748 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19881
- @Kkartik14 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26014
- @cvan20191 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26249
- @RhysSullivan made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26571
- @Br1an67 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/23069
- @danielmundi made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26274
- @suhaan-24 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19898
- @Neil-N4 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/22894
- @f-pieri made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21523
- @Eswar809 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26884
- @KurodaKayn made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26577
- @TNTCompany made their first contribution in https://github.com/google-gemini/gemini-cli/pull/26698
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.42.0...v0.43.0
Fetched May 22, 2026

