What's Changed
- Agent Skills: Unify Representation & Centralize Loading by @NTaylorMullen in #15833
- Unify shell security policy and remove legacy logic by @abhipatel12 in #15770
- feat(core): restore MessageBus optionality for soft migration (Phase 1) by @abhipatel12 in #15774
- feat(core): Standardize Tool and Agent Invocation constructors (Phase 2) by @abhipatel12 in #15775
- feat(core,cli): enforce mandatory MessageBus injection (Phase 3 Hard Migration) by @abhipatel12 in #15776
- Agent Skills: Extension Support & Security Disclosure by @NTaylorMullen in #15834
- feat(hooks): implement granular stop and block behavior for agent hooks by @SandyTao520 in #15824
- Agent Skills: Add gemini skills CLI management command by @NTaylorMullen in #15837
- refactor: consolidate EditTool and SmartEditTool by @abhipatel12 in #15857
- fix(cli): mock fs.readdir in consent tests for Windows compatibility by @NTaylorMullen in #15904
- refactor(core): Extract and integrate ToolExecutor by @abhipatel12 in #15900
- Fix terminal hang when user exits browser without logging in by @gundermanc in #15748
- fix: avoid SDK warning by not accessing .text getter in logging by @ved015 in #15706
- Make default settings apply by @devr0306 in #15354
- chore: rename smart-edit to edit by @abhipatel12 in #15923
- Opt-in to persist model from /model by @sehoon38 in #15820
- fix: prevent /copy crash on Windows by skipping /dev/tty by @ManojINaik in #15657
- Support context injection via SessionStart hook. by @gundermanc in #15746
- Fix order of preflight by @scidomino in #15941
- Fix failing unit tests by @gundermanc in #15940
- fix(cli): resolve paste issue on Windows terminals. by @scidomino in #15932
- Agent Skills: Implement /skills reload by @NTaylorMullen in #15865
- Add setting to support OSC 52 paste by @scidomino in #15336
- remove manual string when displaying manual model in the footer by @sehoon38 in #15967
- fix(core): use correct interactive check for system prompt by @ppergame in #15020
- Inform user of missing settings on extensions update by @chrstnb in #15944
- feat(policy): allow 'modes' in user and admin policies by @NTaylorMullen in #15977
- fix: default folder trust to untrusted for enhanced security by @galz10 in #15943
- Add description for each settings item in /settings by @sehoon38 in #15936
- Use GetOperation to poll for OnboardUser completion by @ishaanxgupta in #15827
- Agent Skills: Add skill directory to WorkspaceContext upon activation by @NTaylorMullen in #15870
- Fix settings command fallback by @chrstnb in #15926
- fix: writeTodo construction by @scidomino in #16014
- properly disable keyboard modes on exit by @scidomino in #16006
- Add workflow to label child issues for rollup by @bdmorgan in #16002
- feat(ui): add visual indicators for hook execution by @abhipatel12 in #15408
- fix: image token estimation by @jackwotherspoon in #16004
- feat(hooks): Add a hooks.enabled setting. by @joshualitt in #15933
- feat(admin): Introduce remote admin settings & implement secureModeEnabled/mcpEnabled by @skeshive in #15935
- Remove trailing whitespace in yaml. by @joshualitt in #16036
- feat(agents): add support for remote agents by @adamfweidman in #16013
- fix: limit scheduled issue triage queries to prevent argument list too long error by @jerop in #16021
- ci(github-actions): triage all new issues automatically by @jerop in #16018
- Fix test. by @gundermanc in #16011
- fix: hide broken skills object from settings dialog by @korade-krushna in #15766
- Agent Skills: Initial Documentation & Tutorial by @NTaylorMullen in #15869
- feat(core): improve activate_skill tool and use lowercase XML tags by @NTaylorMullen in #16009
- Add initiation method telemetry property by @gundermanc in #15818
- chore(release): bump version to 0.25.0-nightly.20260107.59a18e710 by @gemini-cli-robot in #16048
- Hx support by @kevinfjiang in #16032
- [Skills] Foundation: Centralize management logic and feedback rendering by @NTaylorMullen in #15952
- Introduce GEMINI_CLI_HOME for strict test isolation by @NTaylorMullen in #15907
- [Skills] Multi-scope skill enablement and shadowing fix by @NTaylorMullen in #15953
- policy: extract legacy policy from core tool scheduler to policy engine by @abhipatel12 in #15902
- Enhance TestRig with process management and timeouts by @NTaylorMullen in #15908
- Update troubleshooting doc for UNABLE_TO_GET_ISSUER_CERT_LOCALLY by @sehoon38 in #16069
- Add keytar to dependencies by @chrstnb in #15928
- Simplify extension settings command by @chrstnb in #16001
- feat(admin): implement extensions disabled by @skeshive in #16024
- Core data structure updates for Rewind functionality by @Adib234 in #15714
- feat(hooks): simplify hook firing with HookSystem wrapper methods by @ved015 in #15982
- Add exp.gws_experiment field to LogEventEntry by @gsquared94 in #16062
- Revert "feat(admin): implement extensions disabled" by @chrstnb in #16082
- feat(core): Decouple enabling hooks UI from subsystem. by @joshualitt in #16074
- docs: add docs for hooks + extensions by @abhipatel12 in #16073
- feat(core): Preliminary changes for subagent model routing. by @joshualitt in #16035
- Optimize CI workflow: Parallelize jobs and cache linters by @NTaylorMullen in #16054
- Add option to fallback for capacity errors in ProQuotaDi… by @sehoon38 in #16050
- feat: add confirmation details support + jsonrpc vs http rest support by @adamfweidman in #16079
- fix(workflows): fix and limit labels for pr-triage.sh script by @jacob314 in #16096
- Fix and rename introspection agent -> cli help agent by @scidomino in #16097
- Docs: Changelogs update 20260105 by @jkcinouye in #15937
- enable cli_help agent by default by @scidomino in #16100
- Optimize json-output tests with mock responses by @NTaylorMullen in #16102
- Fix CI for forks by @scidomino in #16113
- Reduce nags about PRs that reference issues but don't fix them. by @jacob314 in #16112
- feat(cli): add filepath autosuggestion after slash commands by @jasmeetsb in #14738
- Add upgrade option for paid users by @cayden-google in #15978
- [Skills] UX Polishing: Transparent feedback and CLI refinements by @NTaylorMullen in #15954
- Polish: Move 'Failed to load skills' warning to debug logs by @NTaylorMullen in #16142
- feat(cli): export chat history in /bug and prefill GitHub issue by @NTaylorMullen in #16115
- bug(core): fix issue with overrides to bases. by @joshualitt in #15255
- enableInteractiveShell for external tooling relying on a2a server by @DavidAPierce in #16080
- Reapply "feat(admin): implement extensions disabled" (#16082) by @skeshive in #16109
- bug(core): Fix spewie getter in
hookTranslator.tsby @joshualitt in #16108 - feat(hooks): add mcp_context to BeforeTool and AfterTool hook inputs by @vrv in #15656
- Add extension linking capabilities in cli by @kevinjwang1 in #16040
- Update the page's title to be consistent and show in site. by @kschaab in #16174
- docs: correct typo in bufferFastReturn JSDoc ("accomodate" → "accommodate") by @minglu7 in #16056
- fix: typo in MCP servers settings description by @alphanota in #15929
- fix: yolo should auto allow redirection by @abhipatel12 in #16183
- fix(cli): disableYoloMode shouldn't enforce default approval mode against args by @psinha40898 in #16155
- feat: add native Sublime Text support to IDE detection by @phreakocious in #16083
- refactor(core): extract ToolModificationHandler from scheduler by @abhipatel12 in #16118
- Add support for Antigravity terminal in terminal setup utility by @raky291 in #16051
- feat(core): Wire up model routing to subagents. by @joshualitt in #16043
- feat(cli): add /agents slash command to list available agents by @adamfweidman in #16182
- docs(cli): fix includeDirectories nesting in configuration.md by @maru0804 in #15067
- feat: implement file system reversion utilities for rewind by @Adib234 in #15715
- Always enable redaction in GitHub actions. by @gundermanc in #16200
- fix: remove unsupported 'enabled' key from workflow config by @Han5991 in #15611
- docs: Remove redundant and duplicate documentation files by @liqzheng in #14699
- docs: shorten run command and use published version by @dsherret in #16172
- test(command-registry): increase initialization test timeout by @wszqkzqk in #15979
- Ensure TERM is set to xterm-256color by @falouu in #15828
- The telemetry.js script should handle paths that contain spaces by @JohnJAS in #12078
- ci: guard links workflow from running on forks by @wtanaka in #15461
- ci: guard nightly release workflow from running on forks by @wtanaka in #15463
- Support @ suggestions for subagenets by @sehoon38 in #16201
- feat(hooks): Support explicit stop and block execution control in model hooks by @SandyTao520 in #15947
- Refine Gemini 3 system instructions to reduce model verbosity by @NTaylorMullen in #16139
- chore: clean up unused models and use consts by @sehoon38 in #16246
- Always enable bracketed paste by @scidomino in #16179
- refactor: migrate clearCommand hook calls to HookSystem by @ved015 in #16157
- refactor: migrate app containter hook calls to hook system by @ishaanxgupta in #16161
- Show settings source in extensions lists by @chrstnb in #16207
- feat(skills): add pr-creator skill and enable skills by @NTaylorMullen in #16232
- fix: handle Shift+Space in Kitty keyboard protocol terminals by @tt-a1i in #15767
- feat(core, ui): Add
/agents refreshcommand. by @joshualitt in #16204 - feat(core): add local experiments override via GEMINI_EXP by @kevin-ramdass in #16181
- feat(ui): reduce home directory warning noise and add opt-out setting by @NTaylorMullen in #16229
- refactor: migrate chatCompressionService to use HookSystem by @ved015 in #16259
- fix: properly use systemMessage for hooks in UI by @jackwotherspoon in #16250
- Infer modifyOtherKeys support by @scidomino in #16270
- feat(core): Cache ignore instances for performance by @EricRahm in #16185
- feat: apply remote admin settings (no-op) by @skeshive in #16106
- Autogenerate docs/cli/settings.md docs/getting-started/configuration.md was already autogenerated but settings.md was not. by @jacob314 in #14408
- refactor(config): remove legacy V1 settings migration logic by @galz10 in #16252
- Fix an issue where the agent stops prematurely by @gundermanc in #16269
- Update system prompt to prefer non-interactive commands by @NTaylorMullen in #16117
- Update ink version to 6.4.7 by @jacob314 in #16284
- Support for Built-in Agent Skills by @NTaylorMullen in #16045
- fix(skills): remove "Restart required" message from non-interactive commands by @NTaylorMullen in #16307
- remove unused sessionHookTriggers and exports by @ved015 in #16324
- Triage action cleanup by @bdmorgan in #16319
- fix: Add event-driven trigger to issue triage workflow by @bdmorgan in #16334
- fix(workflows): resolve triage workflow failures and actionlint errors by @bdmorgan in #16338
- docs: add note about experimental hooks by @abhipatel12 in #16337
- feat(cli): implement passive activity logger for session analysis by @SandyTao520 in #15829
- feat(cli): add /chat debug command for nightly builds by @abhipatel12 in #16339
- style: format pr-creator skill by @NTaylorMullen in #16381
- feat(cli): Hooks enable-all/disable-all feature with dynamic status by @AbdulTawabJuly in #15552
- fix(core): ensure silent local subagent delegation while allowing remote confirmation by @adamfweidman in #16395
- Markdown w/ Frontmatter Agent Parser by @sehoon38 in #16094
- Fix crash on unicode character by @chrstnb in #16420
- Attempt to resolve OOM w/ useMemo on history items by @chrstnb in #16424
- fix(core): ensure sub-agent schema and prompt refresh during runtime by @adamfweidman in #16409
- Update extension examples by @chrstnb in #16274
- revert the change that was recently added from a fix by @sehoon38 in #16390
- Add other hook wrapper methods to hooksystem by @ved015 in #16361
- feat: introduce useRewindLogic hook for conversation history navigation by @Adib234 in #15716
New Contributors
- @devr0306 made their first contribution in #15354
- @ManojINaik made their first contribution in #15657
- @ppergame made their first contribution in #15020
- @ishaanxgupta made their first contribution in #15827
- @kevinfjiang made their first contribution in #16032
- @jasmeetsb made their first contribution in #14738
- @cayden-google made their first contribution in #15978
- @vrv made their first contribution in #15656
- @minglu7 made their first contribution in #16056
- @alphanota made their first contribution in #15929
- @phreakocious made their first contribution in #16083
- @raky291 made their first contribution in #16051
- @maru0804 made their first contribution in #15067
- @liqzheng made their first contribution in #14699
- @dsherret made their first contribution in #16172
- @wszqkzqk made their first contribution in #15979
- @falouu made their first contribution in #15828
- @JohnJAS made their first contribution in #12078
- @wtanaka made their first contribution in #15461
- @tt-a1i made their first contribution in #15767
- @AbdulTawabJuly made their first contribution in #15552
Full Changelog: v0.24.0-nightly.20260103.30f5c4af4...v0.25.0-nightly.20260112.15891721a