Gemini CLI
Gemini CLI is a command-line interface tool that provides direct access to Google's Gemini AI models from the terminal. It enables developers and power users to interact with Gemini's advanced language capabilities through simple commands, supporting text generation, conversational AI, and content analysis workflows. The tool features configurable model parameters, batch processing capabilities, and seamless integration with existing development pipelines. Key benefits include rapid prototyping of AI-powered applications, automated content generation tasks, and streamlined API interactions without complex setup. Primary use cases span from quick AI queries and code assistance to automated documentation generation and content processing in CI/CD environments, making it ideal for developers seeking efficient AI integration.
Latest Releases
All releases- chore(release): bump version to 0.66.0-nightly.20261013.g204db94ae by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29740
- Changelog for v0.64.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29741
- fix(ui): implement synchronized output and isolate spinner rendering by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29725
- fix(ui): fix debug console height calculation and terminalBuffer flickering by @ugorla-dev in https://github.com/google-gemini/gemini-cli/pull/29695
- fix(cli): prevent right-hand border bleed in scrollable tool containers by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29742
- refactor(core,cli): emit tool call groups from the scheduler and drop the UI lookahead by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29736
- fix(core): format and quote Windows diff command arguments in openDiff by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29753
- fix(cli): round before selecting units in formatDuration by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29766
- fix(core): disable interactive credential and SSH prompts in getSafeGitEnv by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29760
- fix(cli): resolve settings placeholders after loading .env files by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29750
- fix(core): harden SKILL.md frontmatter parsing for single-line descriptions by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29769
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.65.0-nightly.20261014.g42c518220...v0.66.0-nightly.20261016.gdebf42324
- fix(cli): correct reverse search highlight index for expanding unicode characters by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29699
- fix(core): treat whitespace-only UTF-16 and UTF-32 files as empty by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29722
- fix(cli): restore debounced static UI refresh on terminal width changes by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29644
- fix(cli): prevent session poisoning on rapid Ctrl-C interruption by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29728
- Update ROADMAP.md to no longer reference outdated 2025 roadmap by @DavidAPierce in https://github.com/google-gemini/gemini-cli/pull/29723
- Changelog for v0.65.0-preview.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29739
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.65.0-nightly.20261013.g51617c1bc...v0.65.0-nightly.20261014.g42c518220
- refactor(a2a-server): implement V1 to V2 settings migration logic by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29450
- fix(acp): bridge PromptResponse.usage and emit usage_update notifications (#29389) by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29549
- Changelog for v0.63.0-preview.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29565
- fix(cli): propagate resolved folder trust state in headless mode (#29031) by @amelidev in https://github.com/google-gemini/gemini-cli/pull/29528
- chore(release): bump version to 0.64.0-nightly.20260929.gd75234cae by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29567
- fix(cli): prevent CPU hang and quote swallowing on @ within code (#29434) by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29557
- fix(core): serialize file tool operations and make writes atomic (#29078) by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29499
- fix(core): implement append-only delta patching and bounded history windowing in ChatRecordingService by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29568
- fix(cli): persist state atomically and recover from backup on corruption by @urielefrenvirtusa in https://github.com/google-gemini/gemini-cli/pull/29558
- fix(cli): ensure Ctrl+C emergency abort reaches cancellation handler during active operations by @urielefrenvirtusa in https://github.com/google-gemini/gemini-cli/pull/29586
- fix(cli): resolve @file:line references and prevent ghost text wrap hang by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29581
- fix(ui): ensure Windows ConPTY forwards IME cursor position by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29560
- fix(cli): retry directory removal on Windows locking errors during extension updates by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29540
- fix(acp): resolve session by exact id and handle listener cleanup on session failure by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29580
- fix(cli): preserve scroll position and partition pending height budget by @luisfelipe-alt in https://github.com/google-gemini/gemini-cli/pull/29520
- fix(cli): ensure Enter and Spacebar reliably confirm selection list options by @ugorla-dev in https://github.com/google-gemini/gemini-cli/pull/29502
- fix(patch): cherry-pick 2ce1a69 to release/v0.64.0-preview.0-pr-29672 to patch version v0.64.0-preview.0 and create version 0.64.0-preview.1 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29696
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.63.0...v0.64.0
- fix(cli): enforce read-only workspace settings in untrusted folders by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29583
- fix(core): avoid duplicate tool response turns when resuming sessions by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29618
- fix(core): prevent deletion of resumed session history on quick exit (#29198) by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29584
- Changelog for v0.64.0-preview.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29656
- Changelog for v0.63.0 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29659
- fix(core): align OAuth callback iss parameter validation with RFC 9207 metadata by @luisfelipe-alt in https://github.com/google-gemini/gemini-cli/pull/29616
- fix(cli): prevent unnecessary terminal clears and scroll resets when expanding with Ctrl+O by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29640
- chore(release): bump version to 0.65.0-nightly.20261006.gfb972b2f8 by @gemini-cli-robot in https://github.com/google-gemini/gemini-cli/pull/29657
- fix(ci): add missing loop in unassign-inactive-assignees workflow by @ugorla-dev in https://github.com/google-gemini/gemini-cli/pull/29609
- fix(core): enforce terminal user turn invariant and normalize request contents by @luisfelipe-alt in https://github.com/google-gemini/gemini-cli/pull/29612
feat(telemetry): support custom OTLP headers in telemetry configurationby @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29641- fix(auth): prevent infinite verification and OAuth retry loops by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29655
- fix(cli): handle JSON parse and response stream errors in fetchJson by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29658
- fix(core): preserve line terminators in truncateString by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29673
- fix(vscode-ide-companion): make IdeServer.stop() resolve while MCP sessions are open by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29674
- fix(core): retain ask_user question text in the tool result display by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29677
- fix(core): eliminate false positives on untrusted command flags and compound loops by @DavidAPierce in https://github.com/google-gemini/gemini-cli/pull/29672
- fix(cli): clear cached credentials when re-selecting Google login by @urielefrenvirtusa in https://github.com/google-gemini/gemini-cli/pull/29643
- fix(cli): resolve hang on Enter keypress in interactive mode (#23297) by @elberthc-byte in https://github.com/google-gemini/gemini-cli/pull/29476
- perf(core): optimize ignore filtering and enable subtree pruning (#29077) by @amelidev in https://github.com/google-gemini/gemini-cli/pull/29582
- fix(a2a-server): isolate tool rejection to active call in sequential batches by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29683
- fix(cli): skip eager recursive file reading for @<directory> references by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29617
- fix(cli): keep loading other extensions when one fails the allowlist check by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29720
- fix(cli): correct reverse search highlight index for expanding unicode characters by @diegogodinezr in https://github.com/google-gemini/gemini-cli/pull/29699
- fix(core): treat whitespace-only UTF-16 and UTF-32 files as empty by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29722
- fix(cli): restore debounced static UI refresh on terminal width changes by @jvargassanchez-dot in https://github.com/google-gemini/gemini-cli/pull/29644
- fix(cli): prevent session poisoning on rapid Ctrl-C interruption by @villahernandez-coder in https://github.com/google-gemini/gemini-cli/pull/29728
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.64.0-preview.1...v0.65.0-preview.0
- fix(cli): keep loading other extensions when one fails the allowlist check by @jesussamuel-byte in https://github.com/google-gemini/gemini-cli/pull/29720
Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.65.0-nightly.20261012.g9b6e0265d...v0.65.0-nightly.20261013.g51617c1bc
Installation
npm install -g @google/gemini-cli
brew install gemini-cli