Back
AI summary
Written by AI from the official notes. Check them for exact details.Gemini CLI 0.26.0 introduces 31 new features and fixes 43 bugs, enhancing functionality and stability.
- Add Rewind Confirmation dialog and Viewer component
- Introduce 'skill-creator' built-in skill
- Enable agent skills by default
- Add security consent prompts for skill installation
- Add experimental plan approval mode
Why it matters: Users of Gemini CLI should update to benefit from new features and improved stability.
Full release notes154 changes
What's Changed
- fix: PDF token estimation (#16494)
- chore(release): bump version to 0.26.0-nightly.20260114.bb6c57414
- docs: clarify F12 to open debug console
- docs: Remove.md extension from internal links in architecture.md
- Add an experimental setting for extension config
- feat: add Rewind Confirmation dialog and Rewind Viewer component
- fix(a2a): Don't throw errors for GeminiEventType Retry and InvalidStream.
- prefactor: add rootCommands as array so it can be used for policy parsing
- remove unnecessary
\x7fkey bindings - docs(skills): use body-file in pr-creator skill for better reliability
- chore(automation): recursive labeling for workstream descendants
- feat: introduce 'skill-creator' built-in skill and CJS management tools
- chore(automation): remove automated PR size and complexity labeler
- refactor(skills): replace 'project' with 'workspace' scope
- Docs: Update release notes for 1/13/2026
- Simplify paste handling
- chore(automation): improve scheduled issue triage discovery and throughput
- fix(acp): run exit cleanup when stdin closes
- feat(scheduler): add types needed for event driven scheduler
- Remove unused rewind key binding
- Remove sequence binding
- feat(cli): undeprecate the --prompt flag
- chore: update dependabot configuration
- feat(config): add 'auto' alias for default model selection
- Enable & disable agents
- cleanup: Improve keybindings
- Add timeout for shell-utils to prevent hangs.
- feat(plan): add experimental plan flag
- feat(cli): add security consent prompts for skill installation
- fix: replace 3 consecutive periods with ellipsis character
- chore(automation): ensure status/need-triage is applied and never cleared automatically
- fix: Handle colons in skill description frontmatter
- refactor(core): harden skill frontmatter parsing
- feat(skills): add conflict detection and warnings for skill overrides
- feat(scheduler): add SchedulerStateManager for reactive tool state
- chore(automation): enforce 'help wanted' label permissions and update guidelines
- fix(core): resolve circular dependency via tsconfig paths
- chore/release: bump version to 0.26.0-nightly.20260115.6cb3ae4e0
- fix(automation): correct status/need-issue label matching wildcard
- fix(automation): prevent label-enforcer loop by ignoring all bots
- Add links to supported locations and minor fixes
- feat(policy): add source tracking to policy rules
- feat(automation): enforce '🔒 maintainer only' and fix bot loop
- Make merged settings non-nullable and fix all lints related to that.
- fix(core): prevent ModelInfo event emission on aborted signal
- Replace relative paths to fix website build
- Restricting to localhost
- fix(cli): add explicit dependency on color-convert
- fix(automation): robust label enforcement with permission checks
- fix(cli): prevent OOM crash by limiting file search traversal and adding timeout
- fix(cli): safely handle /dev/tty access on macOS
- docs: clarify workspace test execution in GEMINI.md
- Add support for running available commands prior to MCP servers loading
- feat(plan): add experimental 'plan' approval mode
- feat(scheduler): add functional awaitConfirmation utility
- fix(infra): update maintainer rollup label to 'workstream-rollup'
- fix(infra): use GraphQL to detect direct parents in rollup workflow
- chore(workflows): rename label-workstream-rollup workflow
- skip simple-mcp-server.test.ts
- Steer outer agent to use expert subagents when present
- Fix race condition by awaiting scheduleToolCalls
- cleanup: Organize key bindings
- feat(core): Add
generalistagent. - perf(ui): optimize text buffer and highlighting for large inputs
- fix(core): fix PTY descriptor shell leak
- feat(plan): enforce strict read-only policy and halt execution on violation
- remove need-triage label from bug_report template
- fix(core): truncate large telemetry log entries
- docs(extensions): add Agent Skills support and mark feature as experimental
- fix(core): surface warnings for invalid hook event names in configuration (#16788)
- feat(plan): remove
read_many_filesfrom approval mode policies - feat(admin): implement admin controls polling and restart prompt
- Remove LRUCache class migrating to mnemoist
- feat(settings): rename negative settings to positive naming (disable* -> enable*)
- refactor(cli): unify shell confirmation dialogs
- feat(agent): enable agent skills by default
- refactor(core): foundational truncation refactoring and token estimation optimization
- fix(hooks): enable /hooks disable to reliably stop single hooks
- Don't commit unless user asks us to.
- chore: remove a2a-adapter and bump @a2a-js/sdk to 0.3.8
- fix: Show experiment values in settings UI for compressionThreshold
- feat(cli): replace relative keyboard shortcuts link with web URL
- fix(core): resolve PKCE length issue and stabilize OAuth redirect port
- Delete rewind documentation for now
- Stabilize skill-creator CI and package format
- Stabilize the git evals
- fix(core): attempt compression before context overflow check
- Fix inverted logic.
- chore(scripts): add duplicate issue closer script and fix lint errors
- docs: update README and config guide to reference Gemini 3
- fix(cli): correct Homebrew installation detection
- Demote git evals to nightly run.
- fix(cli): use OSC-52 clipboard copy in Windows Terminal
- Fix: Process all parts in response chunks when thought is first
- fix(automation): fix jq quoting error in pr-triage.sh
- refactor(core): decouple scheduler into orchestration, policy, and confirmation
- feat: add /introspect slash command
- refactor(cli): centralize tool mapping and decouple legacy scheduler
- fix(ui): ensure rationale renders before tool calls
- fix(workflows): use author_association for maintainer check
- fix return type of fireSessionStartEvent to defaultHookOutput
- feat(cli): add experiment gate for event-driven scheduler
- feat(core): improve shell redirection transparency and security
- fix(core): deduplicate ModelInfo emission in GeminiClient
- docs(themes): remove unsupported DiffModified color key
- fix: update currentSequenceModel when modelChanged
- feat(core): enhanced anchored iterative context compression with self-verification
- Fix mcp instructions
- [A2A] Disable checkpointing if git is not installed
- feat(admin): set admin.skills.enabled based on advancedFeaturesEnabled setting
- Test coverage for hook exit code cases
- Revert "Revert "Update extension examples""
- fix(core): Provide compact, actionable errors for agent delegation failures
- fix: migrate BeforeModel and AfterModel hooks to HookSystem
- feat(admin): apply admin settings to gemini skills/mcp/extensions commands
- fix(core): update telemetry token count after session resume
- Demote the subagent test to nightly
- feat(plan): telemetry to track adoption and usage of plan mode
- feat: Add flash lite utility fallback chain
- Fixes Windows crash: "Cannot resize a pty that has already exited"
- feat(core): Add initial eval for generalist agent.
- feat(core): unify agent enabled and disabled flags
- fix(core): resolve auto model in default strategy
- docs: update project context and pr-creator workflow
- fix(cli): send gemini-cli version as mcp client version
- fix(cli): resolve Ctrl+Enter and Ctrl+J newline issues
- Remove missing sidebar item
- feat(core): Ensure all properties in
hooksobject are event names. - fix(cli): fix newline support broken in previous PR
- Add interactive ValidationDialog for handling 403 VALIDATION_REQUIRED errors.
- Add Esc-Esc to clear prompt when it's not empty
- Avoid spurious warnings about unexpected renders triggered by appEvents and coreEvents.
- fix(cli): resolve home/end keybinding conflict
- fix(cli): display 'http' type on mcp list
- fix bad fallback logic external editor logic
- Fix bug where System scopes weren't migrated.
- Fix mcp tool lookup in tool registry
- fix(patch): cherry-pick 61040d0 to release/v0.26.0-preview.0-pr-17247 to patch version v0.26.0-preview.0 and create version 0.26.0-preview.1
- fix(patch): cherry-pick 87a0db2 to release/v0.26.0-preview.1-pr-17308 [CONFLICTS]
- fix(patch): cherry-pick addb57c to release/v0.26.0-preview.2-pr-17331 [CONFLICTS]
- fix(patch): cherry-pick 12a5490 to release/v0.26.0-preview.3-pr-17395 [CONFLICTS]
Show the rest (13 more changes)Show less
New Contributors
- @codefromthecrypt made their first contribution in https://github.com/google-gemini/gemini-cli/pull/14953
- @alexaustin007 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/13981
- @cosmopax made their first contribution in https://github.com/google-gemini/gemini-cli/pull/13507
- @Vist233 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16587
- @imaliabbas made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16479
- @kij made their first contribution in https://github.com/google-gemini/gemini-cli/pull/14727
- @Thomas-Shephard made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16920
- @Kimsoo0119 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16958
- @jw409 made their first contribution in https://github.com/google-gemini/gemini-cli/pull/17073
- @dzammit made their first contribution in https://github.com/google-gemini/gemini-cli/pull/15757
- @dsp made their first contribution in https://github.com/google-gemini/gemini-cli/pull/13407
- @imadraude made their first contribution in https://github.com/google-gemini/gemini-cli/pull/17021
- @pamanta made their first contribution in https://github.com/google-gemini/gemini-cli/pull/16915
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.25.2...v0.26.0