google-gemini/gemini-cli

★ 106,986⑂ 14,577

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

106,986Star
14,577Fork
582Watch
842Issue
TypeScriptLanguage
Apache-2.0License
Created 2025-04-17 · last push 2026-09-15 · repository size 103313 KB · default branch main

README

Gemini CLI

Gemini CLI CI Gemini CLI E2E (Chained) Version License View Code Wiki

Gemini CLI Screenshot

Gemini CLI is an open-source AI agent that brings the power of Gemini directly into your terminal. It provides lightweight access to Gemini, giving you the most direct path from your prompt to our model.

Learn all about Gemini CLI in our documentation.

🚀 Why Gemini CLI?

account. context window. commands, web fetching. integrations.

📦 Installation

See Gemini CLI installation, execution, and releases for recommended system specifications and a detailed installation guide.

Quick Install

Run instantly with npx

# Using npx (no installation required)
npx @google/gemini-cli

Install globally with npm

npm install -g @google/gemini-cli

Install globally with Homebrew (macOS/Linux)

brew install gemini-cli

Install globally with MacPorts (macOS)

sudo port install gemini-cli

Install with Anaconda (for restricted environments)

# 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

Release Channels

See Releases for more details.

Preview

New preview releases will be published each week at UTC 23:59 on Tuesdays. These releases will not have been fully vetted and may contain regressions or other outstanding issues. Please help us test and install with preview tag.

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

Stable

will be the full promotion of last week's preview release + any bug fixes and validations. Use latest tag.
npm install -g @google/gemini-cli@latest

Nightly

from the main branch as represented at time of release. It should be assumed there are pending validations and issues. Use nightly tag.
npm install -g @google/gemini-cli@nightly

📋 Key Features

Code Understanding & Generation

Automation & Integration

rebases media generation with Imagen, Veo or Lyria

Advanced Capabilities

Google Search for real-time information

GitHub Integration

Integrate Gemini CLI directly into your GitHub workflows with Gemini CLI GitHub Action:

suggestions on content analysis for help with debugging, explanations, or task delegation tailored to your team's needs

🔐 Authentication Options

Choose the authentication method that best fits your needs:

Option 1: Sign in with Google (OAuth login using your Google Account)

✨ Best for: Individual developers as well as anyone who has a Gemini Code Assist License. (see quota limits and terms of service for details)

Benefits:

Start Gemini CLI, then choose _Sign in with Google_ and follow the browser authentication flow when prompted

gemini

If you are using a paid Code Assist License from your organization, remember to set the Google Cloud Project

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

Option 2: Gemini API Key

✨ Best for: Developers who need specific model control or paid tier access

Benefits:

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

Option 3: Vertex AI

✨ Best for: Enterprise teams and production workloads

Benefits:

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

For Google Workspace accounts and other authentication methods, see the authentication guide.

🚀 Getting Started

Basic Usage

Start in current directory

gemini

Include multiple directories

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

Use specific model

gemini -m gemini-2.5-flash

Non-interactive mode for scripts

Get a simple text response:

gemini -p "Explain the architecture of this codebase"

For more advanced scripting, including how to parse JSON and handle errors, use the --output-format json flag to get structured output:

gemini -p "Explain the architecture of this codebase" --output-format json

For real-time event streaming (useful for monitoring long-running operations), use --output-format stream-json to get newline-delimited JSON events:

gemini -p "Run tests and deploy" --output-format stream-json

Quick Examples

Start a new project

cd new-project/
gemini
Write me a Discord bot that answers questions using a FAQ.md file I will provide

Analyze existing code

git clone https://github.com/google-gemini/gemini-cli
cd gemini-cli
gemini
Give me a summary of all of the changes that went in yesterday

📚 Documentation

Getting Started

and running quickly. Detailed auth configuration. Settings and customization. Productivity tips.

Core Features

All slash commands (/help, /chat, etc). Create your own reusable commands. Provide persistent context to Gemini CLI. and resume conversations. Optimize token usage.

Tools & Extensions

Extend with custom tools. Build and share your own commands.

Advanced Topics

Use Gemini CLI in automated workflows. Code companion. execution environments. Control execution policies by folder. and manage in a corporate environment. Usage tracking. Built-in tools overview. Local development tooling.

Troubleshooting & Support

Common issues and solutions. questions.

Using MCP Servers

Configure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools:

> @github List my open pull requests
@slack Send a summary of today's commits to #dev channel
@database Run a query to find inactive users

See the MCP Server Integration guide for setup instructions.

🤝 Contributing

We welcome contributions! Gemini CLI is fully open source (Apache 2.0), and we encourage the community to:

See our Contributing Guide for development setup, coding standards, and how to submit pull requests.

Check our Official Roadmap for planned features and priorities.

📖 Resources

Learn the basics. notable updates. registry. Report bugs or request features. Security updates.

Uninstall

See the Uninstall Guide for removal instructions.

📄 Legal

Terms & Privacy

https://github.com/google-gemini/gemini-cli/blob/HEAD/Star History Rank

---

Built with ❤️ by Google and the open source community

More AI Agent Skills Trending projects

1

affaan-m / ECC

JavaScript★ 258,555⑂ 0
2

NousResearch / hermes-agent

Python★ 245,605⑂ 0
3

deepseek-ai / deepseek-harness

TypeScript★ 224,514⑂ 0
4

firecrawl / firecrawl

TypeScript★ 180,546⑂ 0
5

anthropics / skills

Python★ 176,366⑂ 0
6

langchain-ai / langchain

Python★ 146,352⑂ 0