An open-source AI terminal agent by Google supporting natural language driven code generation, shell execution, and MCP extensions.
Gemini CLI is an open-source AI terminal agent maintained by Google's official google-gemini organization, released under Apache 2.0. The project is primarily written in TypeScript (98.0%), built on an npm workspaces monorepo architecture with esbuild bundling and vitest testing. It requires Node.js ≥ 20.0.0 and supports macOS 15+, Windows 11 24H2+, and Ubuntu 20.04+. The project maintains an active release cadence with Stable (every Tuesday UTC 20:00), Preview (every Tuesday UTC 23:59), and Nightly (daily UTC 00:00) channels.
Core capabilities center on Gemini 3 series models with 1M token context windows and Google Search grounding. In the terminal environment, it offers code understanding and generation, natural language debugging, and Git change analysis, alongside built-in tools for file system operations, shell command execution, and web fetching/search. For extensibility, it supports bidirectional MCP (Model Context Protocol) connections—both as a client connecting to external servers (GitHub, Slack, databases) and as a server exposing its own capabilities, with support for media generation models like Imagen, Veo, and Lyria via MCP. It also explores A2A (Agent-to-Agent) protocol integration.
For engineering workflows, Gemini CLI provides conversation checkpoint save/restore, project-level GEMINI.md context persistence, and token caching. Security features include Docker/Podman sandbox environments for command execution, trusted folder-based execution policies, and Vertex AI authentication with enterprise-grade compliance support.
CI/CD integration via GitHub Actions enables automated PR review with contextual feedback, Issue auto-classification and priority sorting, on-demand assistance through @gemini-cli mentions, and custom automated, scheduled, or on-demand workflows.
Scripting capabilities support non-interactive invocation via -p parameter, structured JSON output via --output-format json, and streaming JSON events via --output-format stream-json, facilitating orchestration in automation scripts.
Authentication methods include Google account OAuth login (free tier: 60 req/min, 1000 req/day), GEMINI_API_KEY environment variable, Vertex AI integration, and Gemini Code Assist License.
Unconfirmed items: specific public API model IDs for Gemini 3 are not yet fully confirmed; long-term validity of free tier quotas should be verified against Google's latest announcements; the maturity and public documentation of A2A protocol integration remain unclear.