Back
AI summary
Written by AI from the official notes. Check them for exact details.Gemini CLI 0.12.0 introduces 12 new features and 28 bug fixes, enhancing functionality and stability.
- Added extension alias for extensions command.
- Introduced message bus for tool execution confirmation.
- Implemented sequential approval feature.
- Added support for sensitive keychain-stored per-extension settings.
- Improved error handling and logging.
Why it matters: Users of Gemini CLI should update to benefit from new features and improved stability.
Full release notes130 changes
What's Changed
- chore(release): bump version to 0.12.0-nightly.20251022.0542de95
- fix(test): unskip and fix useToolScheduler tests
- Add extension alias for extensions command
- feat(infra) - Create a workflow for deflake
- Add setting to disable YOLO mode
- feat(infra) - Update status for chained e2e
- extract console error to util func
- Document todo tool
- feat(infra) - Add logging for when user tries to exit multiple times
- fix(ui): Fix and unskip InputPrompt tests
- Docs: adds 2025-10-13 changelog.
- feat(preflight): Use venv for yamllint installation
- fix(a2a-server): Fix and unskip GCS persistence test
- fix(cli): fix race condition and unskip tests in useGitBranchName
- refactor: simplify FilterReport and remove unused code
- refactor(core): Clean up exclude description
- Refactor KeypressContext
- fix(ui): resolve race condition in double-escape handler
- refactor(cli): Parameterize tests in InputPrompt
- Docs: Fix broken link in docs/cli/configuration.md
- Adds executeCommand endpoint with support for /extensions list
- Fix broken links in documentation
- Re-enable test.
- Add extension settings to be requested on install
- feat: Add lychee-action to check for broken links
- fix(infra) - Remove context input for setting status
- Fix bug where tool scheduler was repeatedly created.
- feat(infra) - Make merge group and pushes run chained e2e
- feat(ux): Surface internal errors via unified event system
- Create ExtensionManager class which manages all high level extension tasks
- fix(infra) - Fix merge queue skipper issues for chain e2e
- fix: align shell allowlist handling (#11510)
- Use raw writes to stdin where possible in tests
- Added parameterization to base-storage-token.test and prompts.test.ts
- feat(core) Bump get-ripgrep version.
- First take at mocking out gemini cli responses in integration tests
- Use raw writes to stdin in test
- fix(cli): re-throw errors in non-interactive mode
- Adding Parameterised tests
- chore(core): add token caching in google auth provider
- docs(cli): update telemetry documentation
- run bom test on windows
- Stop logging session ids on extension events
- Fix(cli): Use the correct extensionPath
- fix(security) - Use emitFeedback
- fix(security) - Use emitFeedback instead of console error
- fix: handle request retries and model fallback correctly
- fix(infra) - Simplify cancel in progress and add permission to set status step
- Add regression tests for shell command parsing
- Fix(cli): Use cross-platform path separators in extension tests
- fix linked extension test on windows
- feat(core): Introduce message bus for tool execution confirmation
- fix(cli): Use correct defaults for file filtering
- fix(core): use debugLogger.warn for loop detection errors
- fix(update): replace update-notifier with latest-version
- use coreEvents.emitFeedback in extension enablement
- Fix tests
- Support redirects in fetchJson, add tests for it
- fix(tools): ReadFile no longer shows confirmation when message bus is off
- use debugLogger instead of console.error
- Support paste markers split across writes.
- refactor: Switch over to unified shouldIgnoreFile
- Fix typo in: packages/cli/src/utils/handleAutoUpdate.ts
- docs(contributing): update project structure section with missing packages
- Make PASTE_WORKAROUND the default.
- refactor(cli): replace custom wait with vi.waitFor in InputPrompt tests
- Fix the shortenPath function to correctly insert ellipsis.
- fix(core): Prepend user message to loop detection history if it starts with a function call
- Remove non-existent parallel flag.
- First batch of fixing tests to use best practices.
- add absolute file path description for windows
- fix(cli): Add delimiter before printing tool response in non-interactive mode
- fix: user configured oauth scopes should take precedence over discovered scopes
- feat(core, cli): Implement sequential approval.
- Refactor vim.test.ts: Use Parameterized Tests
- docs(github): revamp pull request template
- use debugLogger instead of console
- Implementing support for recitations events in responses from A2A Server
- fix(core): update loop detection LLM schema fields
- Docs: Contributing guide
- Create BYOID auth client when detecting BYOID credentials
- feat(ID token support): Add ID token support for authenticating to MC…
- fix(telemetry): Prevent duplicate StartSessionEvent logging
- refactor(core): extract ChatCompressionService from GeminiClient
- fix(ci): tsc build for package/core is idempodent
- (fix): appcontainer should not poll and footer should use currentModel from ui state
- feat: added basic dev otel trace instrumentation
- Fix config test so it passes even if the user running the test happens to have set GEMINI_MODEL to flash
- Migrate to coreEvents/debugLogger
- Added a a script to setup and run genkit telemetry and dev ui
- refactor(core): Parameterize tests in glob.test.ts
- docs: update installation section in README
- Revert "feat(ID token support): Add ID token support for authenticating to MC…"
- chore(console): change console errors in sa-impersontation
- revert nightly schedule
- Add ExtensionLoader interface, use that on Config object
- feat(policy): Introduce config-based policy engine with TOML configuration
- refactor: Migrate console.error to debugLogger.warn in atCommandProcessor.ts
- feat: Add message bus setting guard for tool confirmation
- Migrate tests to use avoid jsdom
- feat: Add explore subcommand for extension
- fix(infra) - Continue workflow when merge queue skipper fail
- Add support for sensitive keychain-stored per-extension settings
- chore: migrate console.error in useGeminiStream
- chore: migrate console.error in workspaceContext
- Change debug drawer keybinding to F12
- Record model responses with --record-responses (for use in testing)
- feat: Add Open Telemetric semantic standard compliant log
- Remove obsolete snapshots
- Disable model routing for oauth users
- feat(docs): Symlink CONTRIBUTING.md in the docs folder so that the site can pick it up.
- fix(patch): cherry-pick 82c1042 to release/v0.12.0-preview.2-pr-12231 to patch version v0.12.0-preview.2 and create version 0.12.0-preview.3
- fix(patch): cherry-pick 68afb72 to release/v0.12.0-preview.3-pr-12306 to patch version v0.12.0-preview.3 and create version 0.12.0-preview.4
- fix(patch): cherry-pick 643f2c0 to release/v0.12.0-preview.4-pr-12300 to patch version v0.12.0-preview.4 and create version 0.12.0-preview.5
- fix(patch): cherry-pick 3332703 to release/v0.12.0-preview.5-pr-12317 to patch version v0.12.0-preview.5 and create version 0.12.0-preview.6
- fix(patch): cherry-pick 135d981 to release/v0.12.0-preview.6-pr-12299 to patch version v0.12.0-preview.6 and create version 0.12.0-preview.7
- fix(patch): cherry-pick 11e1e98 to release/v0.12.0-preview.7-pr-12347 to patch version v0.12.0-preview.7 and create version 0.12.0-preview.8
- fix(patch): cherry-pick fd2cbac to release/v0.12.0-preview.9-pr-12399 [CONFLICTS]
- fix: cherry-pick commits for release
- Cherry pick screen reader nudge changes
Show the rest (10 more changes)Show less
New Contributors
- @jdgarrido1105 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11515
- @Qiyu-Wei made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11809
- @0xlakshan made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11599
- @ph-sp made their first contribution in https://github.com/google-gemini/gemini-cli/pull/12004
- @krishna-kb made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11351
- @alisa-alisa made their first contribution in https://github.com/google-gemini/gemini-cli/pull/12067
- @cocosheng-g made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11592
- @RuchikaGoel made their first contribution in https://github.com/google-gemini/gemini-cli/pull/12031
- @pavelgj made their first contribution in https://github.com/google-gemini/gemini-cli/pull/11690
- @Tekrah123 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/12035
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.11.3...v0.12.0