Back
AI summary
Written by AI from the official notes. Check them for exact details.Gemini CLI 0.30.0 introduces new features, bug fixes, and performance improvements.
- Added text wrapping capabilities to markdown tables
- Enabled tool output masking by default
- Formalized 5-phase sequential planning workflow
- Introduced limits for search results
- Added support for custom reasoning models by default
Why it matters: Users of Gemini CLI should update to benefit from enhanced features and improved performance.
Full release notes131 changes
What's Changed
- feat(ux): added text wrapping capabilities to markdown tables
- Revert "fix(mcp): ensure MCP transport is closed to prevent memory leaks"
- chore(release): bump version to 0.30.0-nightly.20260210.a2174751d
- chore: cleanup unused and add unlisted dependencies in packages/core
- chore(core): update activate_skill prompt verbiage to be more direct
- Add autoconfigure memory usage setting to the dialog
- fix(core): prevent race condition in policy persistence
- fix(evals): prevent false positive in hierarchical memory test
- test(evals): mark all
save_memoryevals asUSUALLY_PASSESdue to unreliability - feat(cli): add setting to hide shortcuts hint UI
- feat(core): formalize 5-phase sequential planning workflow
- Introduce limits for search results.
- fix(cli): allow closing debug console after auto-open via flicker
- feat(masking): enable tool output masking by default
- perf(ui): optimize table rendering by memoizing styled characters
- feat: multi-line text answers in ask-user tool
- perf(cli): truncate large debug logs and limit message history
- fix(core): complete MCP discovery when configured servers are skipped
- fix(core): cache CLI version to ensure consistency during sessions
- fix(cli): resolve double rendering in shpool and address vscode lint warnings
- feat(plan): document and validate Plan Mode policy overrides
- Fix pressing any key to exit select mode.
- fix(cli): update F12 behavior to only open drawer if browser fails
- feat(plan): allow skills to be enabled in plan mode
- docs(plan): add documentation for plan mode tools
- Remove experimental note in extension settings docs
- Update prompt and grep tool definition to limit context size
- docs(plan): add
ask_usertool documentation - Revert unintended credentials exposure
- feat(core): update internal utility models to Gemini 3
- feat(a2a): add value-resolver for auth credential resolution
- Removed getPlainTextLength
- More grep prompt tweaks
- refactor(cli): Reactive useSettingsStore hook
- fix(mcp): Ensure that stdio MCP server execution has the
GEMINI_CLI=1env variable populated. - fix(core): improve headless mode detection for flags and query args
- refactor(cli): simplify UI and remove legacy inline tool confirmation logic
- feat(cli): deprecate --allowed-tools and excludeTools in favor of policy engine
- fix(workflows): improve maintainer detection for automated PR actions
- refactor(cli): consolidate useToolScheduler and delete legacy implementation
- Update changelog for v0.28.0 and v0.29.0-preview0
- fix(core): ensure sub-agents are registered regardless of tools.allowed
- Show notification when there's a conflict with an extensions command
- fix(cli): dismiss '?' shortcuts help on hotkeys and active states
- fix(core): prioritize conditional policy rules and harden Plan Mode
- feat(core): refine Plan Mode system prompt for agentic execution
- feat(plan): create metrics for usage of
AskUsertool - feat(cli): support Ctrl-Z suspension
- fix(github-actions): use robot PAT for release creation to trigger release notes
- feat: add strict seatbelt profiles and remove unusable closed profiles
- chore: cleanup unused and add unlisted dependencies in packages/a2a-server
- fix(plan): isolate plan files per session
- fix: character truncation in raw markdown mode
- feat(cli): prototype clean UI toggle and minimal-mode bleed-through
- ui(polish) blend background color with theme
- Add generic searchable list to back settings and extensions
- feat(ui): align
AskUsercolor scheme with UX spec - Hide AskUser tool validation errors from UI (agent self-corrects)
- bug(cli) fix flicker due to AppContainer continuous initialization
- feat(admin): Add admin controls documentation
- feat(cli): disable ctrl-s shortcut outside of alternate buffer mode
- fix(vim): vim support that feels (more) complete
- feat(policy): add --policy flag for user defined policies
- Update installation guide
- refactor(core): centralize tool definitions (Group 1: replace, search, grep)
- refactor(cli): finalize event-driven transition and remove interaction bridge
- Fix drag and drop escaping
- feat(sdk): initial package bootstrap for SDK
- feat(sdk): implements SessionContext for SDK tool calls
- fix(plan): make question type required in AskUser tool
- fix(core): ensure --yolo does not force headless mode
- refactor(core): adopt
CoreToolCallStatusenum for type safety - Enable in-CLI extension management commands for team
- Adjust lint rules to avoid unnecessary warning.
- fix(vscode): resolve unsafe type assertion lint errors
- Remove unnecessary eslint config file
- fix(core): Prevent loop detection false positives on lists with long shared prefixes
- feat(core): fallback to chat-base when using unrecognized models for chat
- docs: fix inconsistent commandRegex example in policy engine
- fix(plan): persist the approval mode in UI even when agent is thinking
- feat(sdk): Implement dynamic system instructions
- Docs: Refresh docs to organize and standardize reference materials.
- fix windows escaping (and broken tests)
- refactor: use
CoreToolCallStatusin the the history data model - feat(cleanup): enable 30-day session retention by default
- feat(plan): hide plan write and edit operations on plans in Plan Mode
- bug(ui) fix flicker refreshing background color
- chore: fix dep vulnerabilities
- Revamp automated changelog skill
- feat(sdk): implement support for custom skills
- refactor(core): complete centralization of core tool definitions
- feat: add /commands reload to refresh custom TOML commands
- fix(cli): wrap terminal capability queries in hidden sequence
- fix(workflows): fix GitHub App token permissions for maintainer detection
- test: fix hook integration test flakiness on Windows CI
- fix(core): Encourage non-interactive flags for scaffolding commands
- fix(core): propagate User-Agent header to setup-phase CodeAssist API calls
- docs: document.agents/skills alias and discovery precedence
- feat(cli): add loading state to new agents notification
- Add base branch to workflow.
- feat(cli): handle invalid model names in useQuotaAndFallback
- docs: custom themes in extensions
- Disable workspace settings when starting GCLI in the home directory.
- feat(cli): refactor model command to support set and manage subcommands
- Add refresh/reload aliases to slash command subcommands
- refactor: consolidate development rules and add cli guidelines
- chore(ui): remove outdated tip about model routing
- feat(core): support custom reasoning models by default
- Add Solarized Dark and Solarized Light themes
- fix(telemetry): replace JSON.stringify with safeJsonStringify in file exporters
- feat(telemetry): add keychain availability and token storage metrics
- feat(cli): update approval mode cycle order
- refactor(cli): code review cleanup fix for tab+tab
- feat(plan): support project exploration without planning when in plan mode
- feat: add role-specific statistics to telemetry and UI (cont. #15234)
- feat(cli): remove Plan Mode from rotation when actively working
- Fix side breakage where anchors don't work in slugs.
- feat(config): add setting to make directory tree context configurable
- fix(acp): Wait for mcp initialization in acp (#18893)
- docs: format UTC times in releases doc
- Docs: Clarify extensions documentation.
- refactor(core): modularize tool definitions by model family
- fix(paths): Add cross-platform path normalization
- feat(core): experimental in-progress steering hints (1 of 3)
- fix(patch): cherry-pick 261788c to release/v0.30.0-preview.0-pr-19453 to patch version v0.30.0-preview.0 and create version 0.30.0-preview.1
- fix(patch): cherry-pick c43500c to release/v0.30.0-preview.1-pr-19502 to patch version v0.30.0-preview.1 and create version 0.30.0-preview.2
- fix(patch): cherry-pick aa9163d to release/v0.30.0-preview.3-pr-19991 to patch version v0.30.0-preview.3 and create version 0.30.0-preview.4
- fix(patch): cherry-pick 2c1d6f8 to release/v0.30.0-preview.4-pr-19369 to patch version v0.30.0-preview.4 and create version 0.30.0-preview.5
- fix(patch): cherry-pick d96bd05 to release/v0.30.0-preview.5-pr-19867 to patch version v0.30.0-preview.5 and create version 0.30.0-preview.6
Show the rest (2 more changes)Show less
New Contributors
- @braddux made their first contribution in https://github.com/google-gemini/gemini-cli/pull/18506
- @kevmoo made their first contribution in https://github.com/google-gemini/gemini-cli/pull/19166
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.29.7...v0.30.0