Gemini CLI v0.67.0: list available models, bridge the IDE into container sandboxes#

Published by

Part of the Gemini CLI Version Tracker series. | Gemini CLI on GitHub | Releases

Gemini CLI v0.67.0 follows v0.66.0 by adding a models command and a --list-models flag that print the available Gemini models and exit, bridging the IDE companion to run inside container sandboxes over stdio, and shipping fixes to request cancellation in non-interactive mode, settings migration, and quota error handling.[1]

Model discovery from the command line#

This release adds a models command, described as "Manage or list Gemini models," along with a top-level --list-models flag described as "List available Gemini models and exit."[2] The models list subcommand accepts --output-format text or json. In JSON form it prints each model record, and each record carries that model's input and output context-token limits.[2]

That gives a session a way to enumerate the models it can reach without starting a chat first. The flag exits after printing, so it fits a startup check or a shell pipeline rather than an interactive prompt.

The IDE companion inside container sandboxes#

The IDE companion is bridged into container sandboxes over exec stdio, so the editor integration is reachable when the CLI runs inside a container sandbox.[3] Two related fixes tighten how the CLI reads files while an IDE is attached: IDE settings and GEMINI.md files are excluded from the open-file context,[4] and relative file paths resolve against the active IDE workspace root.[5]

Fixes#

AreaWhat changed
Non-interactive cancellationTermination signals are handled and tool execution is prevented after cancellation in non-interactive mode.[6] Continuation stream processing and auto-nudge stop after a request is cancelled.[7]
Settings migration${VAR} placeholders are preserved during deprecated settings migration.[8] Claude-style hook timeouts are converted from seconds to milliseconds during migration.[9]
Quota errorsProject spending cap errors are classified as terminal quota errors.[10]
Workspace trustUntrusted flag checks are scoped to external output, and approved flags are remembered.[11]
Permission requestsACP permission requests include MCP server and tool metadata.[12]
Agent loadingDuplicate agent loading is prevented when the workspace is the home directory.[13]
Model turnsAll model turns with function calls receive thought signatures.[14]
Token usageExtended token usage metadata is preserved and per-turn reporting is aligned.[15]
Custom headersCustom headers are split following RFC 9110 token rules.[16]
Atomic writesRead-only files and hard links are respected in atomic writeTextFile.[17]
Terminal widthThai and Lao SARA AM display width is corrected,[18] and terminals that render ambiguous-width characters as wide are handled.[19]

Model discovery a script can read#

The JSON output of models list reports each model with its context-token limits, so a wrapper can read the model set and its token budgets from live command output instead of a hardcoded identifier. The model names a build advertises shift from release to release, and a startup check that reads the list stays correct across those shifts without an edit.

The configuration variables and model identifiers are unchanged from v0.66.0; the rest of v0.67.0 is fixes. They land across non-interactive runs, file resolution while an IDE is attached, and terminal character width, the seams a long session drives rather than the model call itself.

Sources#

This analysis is based on publicly available open-source code and release metadata, conducted for educational and research purposes. All trademarks and software referenced belong to their respective owners.

Previous Gemini CLI analysis: v0.66.0 (October 29, 2026)

All 9 Gemini CLI analyses: Gemini CLI Version Tracker · Official Gemini CLI changelog