gemini cli review: google's free terminal agent with a 1m-token window
Google's open-source terminal coding agent launched in June 2025 and quietly became the most accessible entry point in the category. The free tier is genuinely free — Gemini 2.5 Pro, 60 requests per minute, no credit card. The 1M-token context window is real and large enough to load an entire mid-size repo in a single call. The tradeoffs are real too.
we tested gemini cli on real codebases. no affiliate relationship with google; the free tier costs nothing, and neither does honesty.
google shipped gemini cli in june 2025 as an open-source terminal agent. the pitch was straightforward: a coding agent in your terminal, backed by gemini 2.5 pro, free for personal use, with a 1M-token context window that could load a meaningful codebase in a single call. a year later, it's worth an actual assessment — not just a first impression.
setup and first run
installation is one command: npm install -g @google/gemini-cli or npx @google/gemini-cli if you prefer not to install globally. the first run walks you through authenticating with a personal google account (oauth) or an API key. with a personal account, you get the free tier immediately — no credit card.
the free tier runs gemini 2.5 pro at 60 requests per minute. for context: claude code's base plan runs claude sonnet, and cursor's free tier runs fast models with limited premium completions per month. gemini cli's free tier is, plainly, the most capable free model in a terminal agent we've used in this category.
the 1m-token context window
this is the feature that separates gemini cli from the field in a measurable way. claude code also has a 1M-token window (GA since march 2026), but getting there on claude code typically requires the higher-tier plans. on gemini cli, it's the default for the free tier.
in practice: you can point gemini cli at a repo with tens of thousands of lines and say “what's the authentication flow?” or “find all the places where we write to the database without a transaction” and it reads the actual code rather than a truncated summary. this is a different class of question than tools with smaller context windows can reliably answer.
gemini -p "read the entire src/ directory and explain the data flow"
that works. it's slow — loading a large context takes time — but it works, and the answer reflects the actual codebase rather than a guess.
the yolo flag and unattended runs
gemini cli has a --yolo flag (also -y) that skips the per-action confirmation prompts. you describe the task, the agent runs it, and you review the result — it doesn't pause to ask whether it's allowed to write the file.
this is useful for known-safe bulk operations: refactoring a naming pattern across a repo, adding a consistent docstring format, running a lint fix across files. it's dangerous for anything that touches infrastructure, deletes data, or has irreversible effects. the tool trusts your judgment on when to use it; you should too.
mcp: extending the tool
gemini cli supports the model context protocol (mcp), which lets it connect to external tools and data sources. in practice this means you can add a database MCP server and have the agent query real data while it's editing code, or add a web-search server and have it pull documentation before writing an integration.
the MCP ecosystem is shared across claude code, cursor, and gemini cli — servers you build for one typically work in the others. this is good: interoperability means your investment in tooling compounds across whichever agent you're using.
where it struggles
long-horizon agentic tasks — the kind where the agent needs to understand a problem, write a plan, execute across multiple files, run tests, fix the failures, and iterate — are still weaker here than on claude code. the free tier rate limits compound this: a complex agent session hits 60 requests per minute faster than you expect, and the pauses break the flow of a long task.
there's also no IDE integration. gemini cli is a terminal tool, full stop. cursor gives you the agent inside the editor, with inline diffs and visual context. claude code offers a desktop app, an IDE extension, and terminal access. gemini cli offers the terminal. if your workflow is editor-first, this is a meaningful constraint.
and google's product velocity in developer tools is fast in both directions. gemini cli has changed significantly since launch — new models, new flags, new default behaviors. that's mostly good, but it means you should expect the tool you use today to be different in two months. document your patterns.
who it's for
gemini cli is the right tool for three situations. first: you want to try a terminal coding agent for free before committing to anything. second: your primary need is codebase-wide reasoning — large-context questions where the 1M window is the differentiator. third: you build on google's ecosystem (cloud, vertex, firebase) and want native integrations without an extra subscription.
it is not a replacement for claude code on complex agentic tasks, and it's not a replacement for cursor if your workflow is editor-centric. it's a third option with a genuinely different cost structure and a real feature edge on large-context reasoning.
if you're evaluating tools: run the same four prompts in each tool and compare the outputs directly. the context-window advantage will be obvious or it won't be, depending on your codebase size.