Back
AI summary
Written by AI from the official notes. Check them for exact details.Gemini CLI 0.34.0 introduces new features and numerous bug fixes to enhance user experience and performance.
- Add chat resume footer on session quit
- Support bold styles in SVG snapshots
- Implement OAuth2 Authorization Code auth provider
- Enable skill activation via slash commands
- Improve error handling during tool execution
Why it matters: Users of Gemini CLI should care about these updates for improved functionality and stability.
Full release notes223 changes
What's Changed
- feat(cli): add chat resume footer on session quit
- Support bold and other styles in svg snapshots
- fix(core): increase A2A agent timeout to 30 minutes
- Cleanup old branches.
- chore(release): bump version to 0.34.0-nightly.20260303.34f0c1538
- feat(ui): standardize semantic focus colors and enhance history visibility
- fix: merge duplicate imports in packages/core (3/4)
- Add extra safety checks for proto pollution
- feat(core): Add tracker CRUD tools & visualization
- Revert "fix(ui): persist expansion in AskUser dialog when navigating options"
- Changelog for v0.33.0-preview.0
- fix: model persistence for all scenarios
- chore/release: bump version to 0.34.0-nightly.20260304.28af4e127
- Consistently guard restarts against concurrent auto updates
- Defensive coding to reduce the risk of Maximum update depth errors
- fix(cli): Polish shell autocomplete rendering to be a little more shell native feeling.
- Docs: Update plan mode docs
- fix(mcp): Notifications/tools/list_changed support not working
- fix(cli): register extension lifecycle events in DebugProfiler
- chore(dev): update vscode settings for typescriptreact
- fix(cli): enable multi-arch docker builds for sandbox
- Changelog for v0.32.0
- Changelog for v0.33.0-preview.1
- feat(core): improve @file autocomplete to prioritize filenames
- feat(sandbox): add experimental LXC container sandbox support
- feat(evals): add overall pass rate row to eval nightly summary table
- feat(telemetry): include language in telemetry and fix accepted lines computation
- Changelog for v0.32.1
- feat(core): add robustness tests, logging, and metrics for CodeAssistServer SSE parsing
- feat: add issue assignee workflow
- fix: improve error message when OAuth succeeds but project ID is required
- feat(loop-reduction): implement iterative loop detection and model feedback
- chore(github): require prompt approvers for agent prompt files
- Docs: Create tools reference
- fix(core, a2a-server): prevent hang during OAuth in non-interactive sessions
- chore(cli): enable deprecated settings removal by default
- feat(core): Disable fast ack helper for hints.
- fix(ui): suppress redundant failure note when tool error note is shown
- docs: document planning workflows with Conductor example
- feat(release): ship esbuild bundle in npm package
- fix(extensions): preserve symlinks in extension source path while enforcing folder trust
- fix(cli): defer tool exclusions to policy engine in non-interactive mode
- fix(ui): removed double padding on rendered content
- fix(core): truncate excessively long lines in grep search output
- feat: add custom footer configuration via
/footer - perf(core): fix OOM crash in long-running sessions
- refactor(cli): categorize built-in themes into dark/ and light/ directories
- fix(core): explicitly allow codebase_investigator and cli_help in read-only mode
- test: add browser agent integration tests
- fix(cli): fix enabling kitty codes on Windows Terminal
- refactor(core): extract shared OAuth flow primitives from MCPOAuthProvider
- fix(ui): add partial output to cancelled shell UI
- fix(cli): replace hardcoded keybinding strings with dynamic formatters
- DOCS: Update quota and pricing page
- feat(telemetry): implement Clearcut logging for startup statistics
- feat(triage): add area/documentation to issue triage
- Fix so shell calls are formatted
- feat(cli): add native gVisor (runsc) sandboxing support
- docs: use absolute paths for internal links in plan-mode.md
- fix(core): prevent unhandled AbortError crash during stream loop detection
- fix:reorder env var redaction checks to scan values first
- fix(acp): rename --experimental-acp to --acp & remove Zed-specific refrences
- feat(core): fallback to 2.5 models with no access for toolcalls
- test(core): improve testing for API request/response parsing
- docs(links): update docs-writer skill and fix broken link
- Fix code colorizer ansi escape bug.
- remove wildcard behavior on keybindings
- feat(acp): Add support for AI Gateway auth
- fix(theme): improve theme color contrast for macOS Terminal.app
- feat (core): Implement tracker related SI changes
- Changelog for v0.33.0-preview.2
- Changelog for v0.33.0-preview.3
- docs: format release times as HH:MM UTC
- fix(cli): implement --all flag for extensions uninstall
- docs: fix incorrect relative links to command reference
- documentiong ensures ripgrep
- fix(core): handle AbortError thrown during processTurn
- docs(cli): clarify ! command output visibility in shell commands tutorial
- fix: logic for task tracker strategy and remove tracker tools
- fix(partUtils): display media type and size for inline data parts
- Fix(accessibility): add screen reader support to RewindViewer
- fix(hooks): propagate stopHookActive in AfterAgent retry path (#20426)
- fix(core): deduplicate GEMINI.md files by device/inode on case-insensitive filesystems (#19904)
- feat(core): add concurrency safety guidance for subagent delegation (#17753)
- feat(ui): dynamically generate all keybinding hints
- feat(core): implement unified KeychainService and migrate token storage
- fix(cli): gracefully handle --resume when no sessions exist
- fix(plan): keep approved plan during chat compression
- feat(core): implement generic CacheService and optimize setupUser
- Update quota and pricing documentation with subscription tiers
- fix(core): append correct OTLP paths for HTTP exporters
- Changelog for v0.33.0-preview.4
- feat(cli): implement dot-prefixing for slash command conflicts
- refactor(core): standardize MCP tool naming to mcp_ FQN format
- feat(cli): hide gemma settings from display and mark as experimental
- feat(skills): refine string-reviewer guidelines and description
- fix(core): whitelist TERM and COLORTERM in environment sanitization
- fix(billing): fix overage strategy lifecycle and settings integration
- fix: expand paste placeholders in TextInput on submit
- fix(core): add in-memory cache to ChatRecordingService to prevent OOM
- feat(cli): overhaul thinking UI
- fix(ui): unify Ctrl+O expansion hint experience across buffer modes
- fix(cli): correct shell height reporting
- Make test suite pass when the GEMINI_SYSTEM_MD env variable or GEMINI_WRITE_SYSTEM_MD variable happens to be set locally/
- Disallow underspecified types
- refactor(cli): standardize on 'reload' verb for all components
- feat(cli): Invert quota language to 'percent used'
- Docs: Add documentation for notifications (experimental)(macOS)
- Code review comments as a pr
- feat(cli): unify /chat and /resume command UX
- docs: fix typo 'allowslisted' -> 'allowlisted' in mcp-server.md
- fix(core): display actual graph output in tracker_visualize tool
- fix(core): sanitize SSE-corrupted JSON and domain strings in error classification
- Docs: Make documentation links relative
- feat(cli): expose /tools desc as explicit subcommand for discoverability
- feat(cli): add /compact alias for /compress command
- feat(plan): enable Plan Mode by default
- feat(core): Introduce
AgentLoopContext. - fix(core): resolve symlinks for non-existent paths during validation
- docs: document tool exclusion from memory via deny policy
- perf(core): cache loadApiKey to reduce redundant keychain access
- feat(cli): implement /upgrade command
- Feat/browser agent progress emission
- fix(settings): display objects as JSON instead of [object Object]
- Unmarshall update
- Update mcp's list function to check for disablement.
- robustness(core): static checks to validate history is immutable
- refactor(cli): better react patterns for BaseSettingsDialog
- feat(security): implement robust IP validation and safeFetch foundation
- feat(core): improve subagent result display
- docs: fix broken markdown syntax and anchor links in /tools
- feat(policy): support subagent-specific policies in TOML
- Add script to speed up reviewing PRs adding a worktree.
- fix(core): prevent infinite recursion in symlink resolution
- fix(docs): fix headless mode docs
- feat/redesign header compact
- refactor: migrate to useKeyMatchers hook
- perf(cli): cache loadSettings to reduce redundant disk I/O at startup
- fix(core): resolve Windows line ending and path separation bugs across CLI
- docs: fix heading formatting in commands.md and phrasing in tools-api.md
- refactor(ui): unify keybinding infrastructure and support string initialization
- Add support for updating extension sources and names
- fix(core): handle GUI editor non-zero exit codes gracefully
- fix(core): destroy PTY on kill() and exception to prevent fd leak
- fix(docs): update theme screenshots and add missing themes
- refactor(cli): rename 'return' key to 'enter' internally
- build(release): restrict npm bundling to non-stable tags
- fix(core): override toolRegistry property for sub-agent schedulers
- fix(cli): make footer items equally spaced
- docs: clarify global policy rules application in plan mode
- fix(core): ensure correct flash model steering in plan mode implementation phase
- fix(core): update @a2a-js/sdk to 0.3.11
- refactor(core): improve API response error logging when retry
- fix(ui): handle headless execution in credits and upgrade dialogs
- fix(core): treat retryable errors with >5 min delay as terminal quota errors
- feat(telemetry): add specific PR, issue, and custom tracking IDs for GitHub Actions
- feat(core): add OAuth2 Authorization Code auth provider for A2A agents
- feat(cli): give visibility to /tools list command in the TUI and follow the subcommand pattern of other commands
- Handle dirty worktrees better and warn about running scripts/review.sh on untrusted code.
- feat(policy): support auto-add to policy by default and scoped persistence
- fix(core): handle AbortError when ESC cancels tool execution
- fix(release): Improve Patch Release Workflow Comments: Clearer Approval Guidance
- docs: clarify telemetry setup and comprehensive data map
- feat(core): add per-model token usage to stream-json output
- docs: remove experimental badge from plan mode in sidebar
- fix(cli): prevent race condition in loop detection retry
- Add behavioral evals for tracker
- fix(auth): update terminology to 'sign in' and 'sign out'
- docs(mcp): standardize mcp tool fqn documentation
- fix(ui): prevent empty tool-group border stubs after filtering
- make command names consistent
- refactor: remove agent_card_requires_auth config flag
- feat(a2a): implement standardized normalization and streaming reassembly
- feat(cli): enable skill activation via slash commands
- docs(cli): mention per-model token usage in stream-json result event
- fix(plan): prevent plan truncation in approval dialog by supporting unconstrained heights
- feat(a2a): switch from callback-based to event-driven tool scheduler
- feat(voice): implement speech-friendly response formatter
- feat: add pulsating blue border automation overlay to browser agent
- Add extensionRegistryURI setting to change where the registry is read from
- fix: patch gaxios v7 Array.toString() stream corruption
- fix: prevent hangs in non-interactive mode and improve agent guidance
- Add ExtensionDetails dialog and support install
- chore/release: bump version to 0.34.0-nightly.20260310.4653b126f
- Changelog for v0.33.0-preview.13
- fix(cli): stabilize prompt layout to prevent jumping when typing
- fix: preserve prompt text when cancelling streaming
- fix: robust UX for remote agent errors
- feat: implement background process logging and cleanup
- Changelog for v0.33.0-preview.14
- fix(patch): cherry-pick 45faf4d to release/v0.34.0-preview.0-pr-22148 [CONFLICTS]
- fix(patch): cherry-pick 8432bce to release/v0.34.0-preview.1-pr-22069 to patch version v0.34.0-preview.1 and create version 0.34.0-preview.2
- fix(patch): cherry-pick 24adacd to release/v0.34.0-preview.2-pr-22332 to patch version v0.34.0-preview.2 and create version 0.34.0-preview.3
- fix(patch): cherry-pick 48130eb to release/v0.34.0-preview.3-pr-22665 to patch version v0.34.0-preview.3 and create version 0.34.0-preview.4
Show the rest (29 more changes)Show less
New Contributors
- @lordshashank made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20667
- @fayerman-source made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20101
- @rohit-4321 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19907
- @ru-aish made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19821
- @yashodipmore made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20682
- @genneth made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19171
- @WizardsForgeGames made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19608
- @Zheyuan-Lin made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21062
- @7hokerz made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21123
- @clocky made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21175
- @kanywst made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20964
- @Jatin24062005 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21298
- @MumuTW made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21296
- @MohammedADev made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21041
- @Aboudjem made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21358
- @Famous077 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20750
- @Aarchi-07 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20439
- @sebastien-prudhomme made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16836
- @deadsmash07 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20514
- @diodesign made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21490
- @aworki made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21241
- @ame2en made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21287
- @muhammadusman586 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21068
- @nbardy made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21693
- @PrasannaPal21 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20863
- @yongruilin made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21839
- @Aaxhirrr made their first contribution in https://github.com/google-gemini/gemini-cli/pull/21852
- @ayush31010 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20989
- @Shyam-Raghuwanshi made their first contribution in https://github.com/google-gemini/gemini-cli/pull/20307
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.33.2...v0.34.0