CLI tool
google-gemini/gemini-cli avatar
google-gemini/gemini-cli

Gemini CLI now serves Code Assist enterprises, not free Google accounts

An open-source AI agent that brings the power of Gemini directly into your terminal.

108,820 stars14,948 forksTypeScriptApache-2.0

At a glance

What is it?
Google's open-source terminal agent, invoked as gemini, was narrowed in June 2026 to organizations on Gemini Code Assist licenses. This piece covers who it still fits, how its install and release channels work, and the limits its own maintainers spell out.
Who is it for?
Use Gemini CLI if your organization holds a Gemini Code Assist Standard, Enterprise or Code Assist for GitHub license, or still runs on paid Gemini API or Vertex keys; pin the latest tag and set GOOGLE_CLOUD_PROJECT before launching. Personal accounts, Google AI Pro and Ultra subscribers, and anyone evaluating Gemini 4 Argon belong on Antigravity CLI instead.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • google-gemini/gemini-cli108,820 ★ · +2,602
Star history
Repository2026-07-282026-11-13
google-gemini/gemini-cli106.2k108.8k

2,602 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

Free and Google AI Pro accounts no longer belong here

Gemini CLI started out as a terminal agent anyone with a Google account could try. That is no longer the case. The repository now opens with a status notice: free individual access and Google AI Pro and Ultra plans, sold through Google One, moved to Antigravity CLI on June 18, 2026. What remains in this repository, invoked as `gemini`, is aimed at organizations holding Gemini Code Assist Standard or Enterprise licenses, or Code Assist for GitHub on Google Cloud, plus users of legacy paid API keys and Vertex keys. The notice says access for those enterprise customers remains unchanged.

The consequence for a reader arriving from an older tutorial is direct. If you sign in with a personal Gmail account expecting the free quota those tutorials describe, this is the wrong tool. Google points you to the Antigravity CLI download page and a migration guide at antigravity.google/docs/cli/gcli-migration instead. Before installing anything, check which license your Google account or organization actually holds, because that decides whether `gemini` is the binary you want at all.

Three Google CLIs now split the old audience

A table at the top of the README sorts Google's terminal tools by who should use them. Antigravity CLI, run as `agy`, is the interactive multi-agent coding terminal. It is the destination for Gemini 4 Argon and newer models, for free accounts, for Google AI Pro and Ultra subscribers, and for Google Cloud users. Gemini API CLI, run as `gemini-api` and hosted at google-gemini/gemini-api-cli, is explicitly not a coding harness. It is a stateless command line for calling Gemini models, media generation, file analysis and managed agents, meant to be driven by other agents such as `agy`, Claude Code and Codex, or by scripts and CI jobs.

Gemini CLI sits in the third row: organizations on Code Assist Standard, Enterprise or Code Assist for GitHub. If what you need is a scriptable way to hit the Gemini API from a pipeline, the table steers you to `gemini-api`, not this repository. If you want an interactive coding agent on a personal plan, it steers you to `agy`. The overlap between the three is small by design, and picking the wrong one means either a missing license or a tool shaped for a different job.

Five install paths that all end in the same npm package

The package is published to npm as `@google/gemini-cli`, and the root package.json declares an engine requirement of Node.js 20.0.0 or newer. Every install route reduces to getting that package onto a machine with a suitable Node runtime. The quickest is npx, which runs it without a global install:

bash
npx @google/gemini-cli

A global npm install puts `gemini` on your PATH:

bash
npm install -g @google/gemini-cli

On macOS or Linux, Homebrew carries a formula, and MacPorts covers macOS:

bash
brew install gemini-cli
bash
sudo port install gemini-cli

For restricted environments where you cannot install Node system wide, there is a conda recipe that pulls Node.js from conda-forge into an isolated environment and then runs the same npm command inside it:

bash
# Create and activate a new environment
conda create -y -n gemini_env -c conda-forge nodejs
conda activate gemini_env

# Install Gemini CLI globally via npm (inside the environment)
npm install -g @google/gemini-cli

The tradeoff is where updates come from. npx fetches the package when you run it, a global npm install follows whatever tag you pinned, and the Homebrew and MacPorts packages follow their own packagers. Recommended system specifications live on geminicli.com under docs/get-started/installation rather than in the repository.

Preview, stable and nightly ship on a fixed Tuesday clock

Gemini CLI has three npm dist-tags with a published cadence. Preview builds go out every Tuesday at 23:59 UTC. The project says they have not been fully vetted and may contain regressions, and it asks users who opt in to help test:

bash
npm install -g @google/gemini-cli@preview

Stable builds go out every Tuesday at 20:00 UTC under the `latest` tag. Each one is the previous week's preview promoted, plus bug fixes and validations, so a fix that lands in preview reaches stable a week later.

bash
npm install -g @google/gemini-cli@latest

Nightly builds publish every day at 00:00 UTC and contain whatever was on the main branch at that moment. The project tells you to assume pending validations and open issues.

bash
npm install -g @google/gemini-cli@nightly

The nightly train is running: the three most recent GitHub releases are v0.67.0 nightlies tagged on November 1, 2 and 3, 2026, and the last push to the repository landed on November 2, 2026. For a team rollout, pin `latest` and treat `preview` as a staging channel. Installing `nightly` on a shared machine means every developer is running untested code from main.

Your authentication choice decides who gets billed

There are three sign-in routes, and each ties usage to a different account. The first is OAuth with a Google account. When the license comes from your organization's paid Code Assist subscription, you also set the Google Cloud project before launching:

bash
# Set your Google Cloud Project
export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
gemini

Because this is an environment variable, it belongs in your shell profile or CI environment, not something to type once and forget in a new terminal.

The second route is a Gemini API key from AI Studio, pitched at developers who want to choose specific Gemini models and pay by usage, upgrading for higher limits when needed:

bash
# Get your key from https://aistudio.google.com/apikey
export GEMINI_API_KEY="YOUR_API_KEY"
gemini

The third is Vertex AI, aimed at enterprise teams and production workloads, with higher rate limits tied to a billing account and existing Google Cloud infrastructure. It needs two variables:

bash
# Get your key from Google Cloud Console
export GOOGLE_API_KEY="YOUR_API_KEY"
export GOOGLE_GENAI_USE_VERTEXAI=true
gemini

The status notice frames API and Vertex keys as legacy paths kept alongside Code Assist. Google Workspace accounts and other methods are covered in a separate authentication guide on geminicli.com.

Context comes from the working directory unless you widen it

Running `gemini` with no arguments starts an interactive session rooted in the current directory:

bash
gemini

If the code you want the agent to read lives in sibling folders, pass them explicitly as a comma separated list:

bash
gemini --include-directories ../lib,../docs

The `-m` flag pins a model by name:

bash
gemini -m gemini-2.5-flash

For scripts, `-p` sends a single prompt and returns a simple text response without opening the interactive interface:

bash
gemini -p "Explain the architecture of this codebase"

That non-interactive mode is how Gemini CLI fits into workflow automation, such as querying pull requests or working through complex rebases. Capabilities beyond the built-in ones arrive through MCP servers; the example Google gives is an MCP server from vertex-ai-creative-studio for media generation with Imagen, Veo or Lyria. The stated use cases also include querying and editing large codebases, generating apps from PDFs, images or sketches, and debugging with natural language. None of these flags change the licensing picture: a script that calls `gemini -p` still needs one of the three authentication setups above, and on an unlicensed personal account it has nothing to authenticate against.

The harness is not tuned for Gemini 4 and should not grade it

The status notice carries two warnings that limit what you can conclude from this tool. Gemini CLI is not optimized for the Gemini 4 series, including Gemini 4 Argon, or for later model generations. And the maintainers explicitly ask people not to use it to benchmark Gemini models, because its harness is not tuned for Gemini 4 and newer and produces unrepresentative scores.

That matters for anyone comparing coding agents. A head to head run of Gemini CLI against Claude Code or another harness says more about this harness than about the underlying model, and the maintainers say so themselves. If your goal is to evaluate Gemini 4 Argon, Google routes you to Antigravity CLI. The practical reading is that Gemini CLI is now the line for existing enterprise Code Assist deployments: still shipping nightly builds and still taking commits, but no longer where Google sends users of its newest models. Teams standardizing on a terminal agent today should weigh that before writing internal tooling around the `gemini` command.

Building from source pulls in seven workspace packages

The repository is an npm workspaces monorepo written in TypeScript under the Apache-2.0 license. The Dockerfile copies package manifests for seven packages before installing: cli, core, vscode-ide-companion, devtools, sdk, test-utils and a2a-server. The a2a-server package has its own start script that sets CODER_AGENT_PORT=41242. Both the builder and runtime stages of the Dockerfile use the node:20-slim image, matching the Node 20 engine floor. package.json also pins a sandbox image at us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox, tagged with the same version string as the CLI itself.

The Makefile wraps the npm scripts. `make install` runs npm install, `make build` builds the main project, `make build-all` adds the sandbox, `make preflight` runs formatting, linting and tests, and `make start` or `make debug` launches the CLI. `make create-alias` runs scripts/create_alias.sh to add a `gemini` alias to your shell, and `make run-npx` runs `npx https://github.com/google-gemini/gemini-cli` to test the package straight from GitHub. The `auth` npm scripts call google-artifactregistry-auth and gcloud to configure Docker for us-west1-docker.pkg.dev, so outside contributors should expect those particular targets to need Google Cloud credentials they may not have.

Editorial conclusion

Use Gemini CLI if your organization holds a Gemini Code Assist Standard, Enterprise or Code Assist for GitHub license, or still runs on paid Gemini API or Vertex keys; pin the latest tag and set GOOGLE_CLOUD_PROJECT before launching. Personal accounts, Google AI Pro and Ultra subscribers, and anyone evaluating Gemini 4 Argon belong on Antigravity CLI instead. Before installing, confirm which license your account actually holds and that Node.js 20 or newer is available.

Frequently asked questions

Is Gemini CLI still free?

No. Free individual access and Google AI Pro and Ultra plans moved to Antigravity CLI on June 18, 2026. Gemini CLI now serves Code Assist Standard, Enterprise and Code Assist for GitHub licenses, plus legacy paid API and Vertex keys.

What exactly is Gemini CLI?

Gemini CLI, run as gemini, is an open-source TypeScript terminal agent under Apache-2.0, maintained for enterprise Gemini Code Assist workflows on Google Cloud. It queries and edits codebases, runs non-interactively with -p, and connects to MCP servers.

Is Gemini CLI discontinued?

No. The repository is not archived, and nightly v0.67.0 builds were released on November 1, 2 and 3, 2026. Its audience narrowed to enterprise Code Assist users, and it is not tuned for Gemini 4 models.

How to install gemini-cli?

With Node.js 20 or newer, run npm install -g @google/gemini-cli, or run npx @google/gemini-cli without installing. Homebrew (brew install gemini-cli), MacPorts and a conda environment are also supported.

How to use Gemini CLI in Antigravity?

Gemini CLI and Antigravity CLI are separate tools. Antigravity CLI runs as agy, and Google publishes a migration guide at antigravity.google/docs/cli/gcli-migration for users moving over from Gemini CLI.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community

Where developers are discussing it

Posts on Hacker News, dev.to and Lobsters that link to this repository, found by our scan of those communities. 3 in the last 30 days; newest first.

Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/google-gemini-gemini-cli.svg)](https://hysenlabs.com/projects/google-gemini-gemini-cli)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/google-gemini-gemini-cli.svg)](https://hysenlabs.com/projects/google-gemini-gemini-cli)

Was this useful?