From 78075c8a3760da91362a2dbd2a9383bd7b34c1fb Mon Sep 17 00:00:00 2001 From: Jenna Inouye Date: Tue, 18 Nov 2025 08:09:55 -0800 Subject: [PATCH] Docs: Add changelog for v.0.15.0 (#13276) --- docs/changelogs/index.md | 46 ++++++++++++++++++++++++++++++++ docs/cli/model-routing.md | 56 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 docs/cli/model-routing.md diff --git a/docs/changelogs/index.md b/docs/changelogs/index.md index baa4ec0c7c..889902b89f 100644 --- a/docs/changelogs/index.md +++ b/docs/changelogs/index.md @@ -3,6 +3,52 @@ Wondering what's new in Gemini CLI? This document provides key highlights and notable changes to Gemini CLI. +## v0.15.0 - Gemini CLI weekly update - 2025-11-03 + +- **🎉 Seamless scrollable UI & mouse support:** We’ve given Gemini CLI a major + facelift to make your terminal experience smoother and much more polished. You + now get a flicker-free display with sticky headers that keep important context + visible and a stable input prompt that doesn't jump around. We even added + mouse support so you can click right where you need to type! + ([gif](https://imgur.com/a/O6qc7bx), + [@jacob314](https://github.com/jacob314)). + - **Announcement:** + [https://developers.googleblog.com/en/making-the-terminal-beautiful-one-pixel-at-a-time/](https://developers.googleblog.com/en/making-the-terminal-beautiful-one-pixel-at-a-time/) +- **🎉 New partner extensions:** + - **Arize:** Seamlessly instrument AI applications with Arize AX and grant + direct access to Arize support: + + `gemini extensions install https://github.com/Arize-ai/arize-tracing-assistant` + + - **Chronosphere:** Retrieve logs, metrics, traces, events, and specific + entities: + + `gemini extensions install https://github.com/chronosphereio/chronosphere-mcp` + + - **Transmit:** Comprehensive context, validation, and automated fixes for + creating production-ready authentication and identity workflows: + + `gemini extensions install https://github.com/TransmitSecurity/transmit-security-journey-builder` + +- **Todo planning:** Complex questions now get broken down into todo lists that + the model can manage and check off. ([gif](https://imgur.com/a/EGDfNlZ), + [pr](https://github.com/google-gemini/gemini-cli/pull/12905) by + [@anj-s](https://github.com/anj-s)) +- **Disable GitHub extensions:** Users can now prevent the installation and + loading of extensions from GitHub. + ([pr](https://github.com/google-gemini/gemini-cli/pull/12838) by + [@kevinjwang1](https://github.com/kevinjwang1)). +- **Extensions restart:** Users can now explicitly restart extensions using the + `/extensions restart` command. + ([pr](https://github.com/google-gemini/gemini-cli/pull/12739) by + [@jakemac53](https://github.com/jakemac53)). +- **Better Angular support:** Angular workflows should now be more seamless + ([pr](https://github.com/google-gemini/gemini-cli/pull/10252) by + [@MarkTechson](https://github.com/MarkTechson)). +- **Validate command:** Users can now check that local extensions are formatted + correctly. ([pr](https://github.com/google-gemini/gemini-cli/pull/12186) by + [@kevinjwang1](https://github.com/kevinjwang1)). + ## v0.12.0 - Gemini CLI weekly update - 2025-10-27 ![Codebase investigator subagent in Gemini CLI.](https://i.imgur.com/4J1njsx.png) diff --git a/docs/cli/model-routing.md b/docs/cli/model-routing.md new file mode 100644 index 0000000000..4d01434f28 --- /dev/null +++ b/docs/cli/model-routing.md @@ -0,0 +1,56 @@ +## Model Routing + +Gemini CLI includes a model routing feature that automatically switches to a +fallback model in case of a model failure. This feature is enabled by default +and provides resilience when the primary model is unavailable. + +## How it Works + +Model routing is not based on prompt complexity, but is a fallback mechanism. +Here's how it works: + +1. **Model Failure:** If the currently selected model fails to respond (for + example, due to a server error or other issue), the CLI will initiate the + fallback process. + +2. **User Consent:** The CLI will prompt you to ask if you want to switch to + the fallback model. This is handled by the `fallbackModelHandler`. + +3. **Fallback Activation:** If you consent, the CLI will activate the fallback + mode by calling `config.setFallbackMode(true)`. + +4. **Model Switch:** On the next request, the CLI will use the + `DEFAULT_GEMINI_FLASH_MODEL` as the fallback model. This is handled by the + `resolveModel` function in + `packages/cli/src/zed-integration/zedIntegration.ts` which checks if + `isInFallbackMode()` is true. + +## Configuration + +Model routing is controlled by the `useModelRouter` setting in your +`settings.json` file. + +- **`"experimental.useModelRouter": true` (Default):** Enables the model + routing/fallback feature. + +- **`"experimental.useModelRouter": false`:** Disables the model + routing/fallback feature. If a model fails, the CLI will not attempt to switch + to a fallback model. + +### Model Selection Precedence + +The model used by Gemini CLI is determined by the following order of precedence: + +1. **`--model` command-line flag:** A model specified with the `--model` flag + when launching the CLI will always be used. +2. **`GEMINI_MODEL` environment variable:** If the `--model` flag is not used, + the CLI will use the model specified in the `GEMINI_MODEL` environment + variable. +3. **`model.name` in `settings.json`:** If neither of the above are set, the + model specified in the `model.name` property of your `settings.json` file + will be used. +4. **Default Model:** If none of the above are set, the default model will be + used. The default model is determined by the `useModelRouter` setting: + - If `useModelRouter` is `true`, the default model is `"auto"`. + - If `useModelRouter` is `false`, the default model is the standard Gemini + model.