← All open source projects

Gemini CLI

google-gemini/gemini-cli

Gemini CLI is Google’s open-source AI agent for the terminal, with Gemini access, file operations, shell commands, web fetching, and MCP integrations.

Forks 14,017
Author google-gemini
Language TypeScript
License Apache-2.0
Synced 2026-06-09

What it is

Gemini CLI is a terminal AI agent from Google. It brings Gemini into the command line and is aimed at developers who work in the terminal: asking questions about a project, editing files, running commands, inspecting errors, and connecting external capabilities through MCP.

Compared with a browser chat, the model is much closer to the working directory. You can discuss the current repository, a command result, a build log, or file structure instead of pasting isolated snippets. That is useful for tasks that need several connected steps.

What is inside and how people use it

Gemini CLI appeared during the broader rise of terminal agents for software development. Google positioned it as a direct command-line path to Gemini and released it as open source under Apache 2.0. The docs highlight a free tier with a personal Google account, file operations, shell commands, web fetching, Google Search grounding, and MCP.

Quick terminal start

This example shows the basic path: run the agent through the npm package without building the repository manually.

Language: Bash
npx @google/gemini-cli

# or install globally
npm install -g @google/gemini-cli

gemini

A common scenario is opening a project in the terminal and asking the agent to explain a module, find an error, suggest a change, or run supporting commands. With MCP servers, the CLI can be connected to internal tools and documentation.

Strengths and limitations

Gemini CLI is strong because it sits next to the working directory and the Gemini ecosystem. Installation is simple, the project is open, and the terminal format avoids constant copying between browser and editor.

The limitation is the same as with any agent that can access files and commands: permissions matter. It should not casually receive secrets, production environments, or destructive commands. Quality also depends on the model, account limits, task description, and project state.