google-gemini/gemini-cli: An open-source AI agent that brings the power of Gemini directly into your terminal.
Can I setup Gemini CLI in docker?
Yes, Gemini CLI can be set up and run within Docker, offering a secure and isolated environment for AI-assisted development workflows. The recommended approach is to pair Gemini CLI with the Docker MCP Toolkit, which allows for easy management of multiple development tool integrations and provides a streamlined setup process.ajeetraina+2
Steps to Set Up Gemini CLI in Docker
- Install Docker Desktop: Ensure Docker is running on the system.
- Install Gemini CLI: Either install globally with npm (
npm install -g @google/gemini-cli) or use a ready-made Docker image, such asweaponsforge/gemini-cli, designed for streamlined Gemini CLI deployments.hub.docker+1
- Configure MCP Servers: Add MCP server configurations to the
~/.gemini/settings.jsonfile. For Docker MCP Toolkit, include something like: json{ "selectedAuthType": "oauth-personal", "theme": "Default", "mcpServers": { "MCP_DOCKER": { "command": "docker", "args": ["mcp", "gateway", "run"], "env": {} } } }
- Authentication: After installation, start Gemini CLI with
gemini, and follow the setup wizard to authenticate with your Google account or set theGEMINI_API_KEYas an environment variable if needed.codelabs.developers.google+2
- Start Using Gemini CLI: Once configured and authenticated, you can access terminal-based AI tooling. Use
/mcpcommands to interact with integrated tools, and restart Gemini CLI after adding new servers to refresh the connections.reddit+1
Tips for Containerized Environments
- Use the provided Docker images for the fastest setup without dependency conflicts.hub.docker
- Update the
settings.jsonfile whenever adding new MCP integrations.
- Restart Gemini CLI when the MCP tool catalog changes.reddit
By following these steps, Gemini CLI will function seamlessly in Docker, maximizing security, portability, and integration with other development tools in a modern workflow.dev+2
- https://www.ajeetraina.com/how-to-setup-gemini-cli-docker-mcp-toolkit-for-ai-assisted-development/
- https://dev.to/ajeetraina/how-to-setup-gemini-cli-docker-mcp-toolkit-for-powerful-ai-assisted-development-k4b
- https://codelabs.developers.google.com/cloud-gemini-cli-mcp-go
- https://www.reddit.com/r/docker/comments/1lmapqz/mcp_docker_in_geminicli/
- https://hub.docker.com/r/weaponsforge/gemini-cli
- https://www.youtube.com/watch?v=hmh30wuXg08
- https://github.com/google-gemini/gemini-cli
- https://www.reddit.com/r/googlecloud/comments/1lk55a4/gemini_cli_your_opensource_ai_agent/
An open-source AI agent that brings the power of Gemini directly into your terminal.
Gemini CLI
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.
- ๐ฏ Free tier: 60 requests/min and 1,000 requests/day with personal Google account.
- ๐ง Powerful Gemini 2.5 Pro: Access to 1M token context window.
- ๐ง Built-in tools: Google Search grounding, file operations, shell commands, web fetching.
- ๐ Extensible: MCP (Model Context Protocol) support for custom integrations.
- ๐ป Terminal-first: Designed for developers who live in the command line.
- ๐ก๏ธ Open source: Apache 2.0 licensed.
๐ฆ Installation
Quick Install
# Using npx (no installation required)
npx https://github.com/google-gemini/gemini-cli
npm install -g @google/gemini-cli
brew install gemini-cli
System Requirements
- Node.js version 20 or higher
- macOS, Linux, or Windows
See Releases for more details.
Preview
New preview releases will be published each week at UTC 2359 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
- New stable releases will be published each week at UTC 2000 on Tuesdays, this will be the full promotion of last week's
previewrelease + any bug fixes and validations. Uselatesttag.
npm install -g @google/gemini-cli@latest
Nightly
- New releases will be published each week at UTC 0000 each day, This will be all changes from the main branch as represented at time of release. It should be assumed there are pending validations and issues. Use
nightlytag.
npm install -g @google/gemini-cli@nightly
- Query and edit large codebases
- Generate new apps from PDFs, images, or sketches using multimodal capabilities
- Debug issues and troubleshoot with natural language
- Automate operational tasks like querying pull requests or handling complex rebases
- Use MCP servers to connect new capabilities, including media generation with Imagen, Veo or Lyria
- Run non-interactively in scripts for workflow automation
Advanced Capabilities
- Ground your queries with built-in Google Search for real-time information
- Conversation checkpointing to save and resume complex sessions
- Custom context files (GEMINI.md) to tailor behavior for your projects
GitHub Integration
Integrate Gemini CLI directly into your GitHub workflows with Gemini CLI GitHub Action:
- Pull Request Reviews: Automated code review with contextual feedback and suggestions
- Issue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
- On-demand Assistance: Mention
@gemini-cliin issues and pull requests for help with debugging, explanations, or task delegation - Custom Workflows: Build automated, scheduled and on-demand workflows tailored to your team's needs
Choose the authentication method that best fits your needs:
โจ 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:
- Free tier: 60 requests/min and 1,000 requests/day
- Gemini 2.5 Pro with 1M token context window
- No API key management - just sign in with your Google account
- Automatic updates to latest models
gemini
# Set your Google Cloud Project
export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
gemini
โจ Best for: Developers who need specific model control or paid tier access
Benefits:
- Free tier: 100 requests/day with Gemini 2.5 Pro
- Model selection: Choose specific Gemini models
- Usage-based billing: Upgrade for higher limits when needed
# Get your key from https://aistudio.google.com/apikey
export GEMINI_API_KEY="YOUR_API_KEY"
gemini
โจ Best for: Enterprise teams and production workloads
Benefits:
- Enterprise features: Advanced security and compliance
- Scalable: Higher rate limits with billing account
- Integration: Works with existing Google Cloud infrastructure
# 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.
Basic Usage
gemini
gemini --include-directories ../lib,../docs
gemini -m gemini-2.5-flash
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
Quick Examples
cd new-project/
gemini
> Write me a Discord bot that answers questions using a FAQ.md file I will provide
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
- Quickstart Guide - Get up and running quickly.
- Authentication Setup - Detailed auth configuration.
- Configuration Guide - Settings and customization.
- Keyboard Shortcuts - Productivity tips.
Core Features
- Commands Reference - All slash commands (
/help,/chat, etc). - Custom Commands - Create your own reusable commands.
- Context Files (GEMINI.md) - Provide persistent context to Gemini CLI.
- Checkpointing - Save and resume conversations.
- Token Caching - Optimize token usage.
- Built-in Tools Overview
- MCP Server Integration - Extend with custom tools.
- Custom Extensions - Build and share your own commands.
Advanced Topics
- Headless Mode (Scripting) - Use Gemini CLI in automated workflows.
- Architecture Overview - How Gemini CLI works.
- IDE Integration - VS Code companion.
- Sandboxing & Security - Safe execution environments.
- Trusted Folders - Control execution policies by folder.
- Enterprise Guide - Deploy and manage in a corporate environment.
- Telemetry & Monitoring - Usage tracking.
- Tools API Development - Create custom tools.
- Troubleshooting Guide - Common issues and solutions.
- FAQ - Frequently asked questions.
- Use
/bugcommand to report issues directly from the CLI.
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:
- Report bugs and suggest features.
- Improve documentation.
- Submit code improvements.
- Share your MCP servers and extensions.
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
- Official Roadmap - See what's coming next.
- Changelog - See recent notable updates.
- NPM Package - Package registry.
- GitHub Issues - Report bugs or request features.
- Security Advisories - Security updates.
Uninstall
See the Uninstall Guide for removal instructions.
๐ Legal
- License: Apache License 2.0
- Terms of Service: Terms & Privacy
- Security: Security Policy
Built with โค๏ธ by Google and the open source community
