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