Originally published at terminalblog.com.
Google didn't just update Gemini CLI. They killed it.
On June 18, 2026, Gemini CLI stopped serving requests for anyone on the free tier, Google AI Pro, or Google AI Ultra. If you were one of the millions who built workflows around it — over 100,000 GitHub stars, 6,000 merged PRs — your terminal agent effectively went dark unless you pay for enterprise Gemini Code Assist.
The replacement? Google Antigravity 2.0 — a complete rebuild with a new desktop app, a Go-built CLI, a unified agent harness, and multi-agent orchestration baked in from day one.
This isn't a v1.1. It's a platform pivot. And it changes how Google fits into the terminal AI war against Claude Code, Codex CLI, and the open-source alternatives.
What Actually Happened
May 19, 2026 — Google I/O. The Antigravity team announced:
- Antigravity 2.0 — standalone desktop app (macOS, Linux, Windows)
- Antigravity CLI — new terminal interface, built in Go
- Antigravity SDK — for building your own agent surfaces
- Managed Agents API — cloud-deployed agents
June 18, 2026 — Hard cutoff. Gemini CLI + Gemini Code Assist IDE extensions stop serving free/Pro/Ultra users. Enterprise customers on Standard/Enterprise licenses keep access.
Now — Migration window is closed. You're either on Antigravity or you're shopping for a new terminal agent. (Enterprise and self-managed users still on Gemini CLI hit a fresh security-hardening wave in September — more below.)
Why Google Did This
The official line: "your workflows have simply outgrown those early days of 2025."
Translation: Single-agent chat in a terminal doesn't cut it anymore.
Claude Code proved developers want agents that act — run commands, edit files, spawn subagents, coordinate. Codex CLI doubled down. The open-source ecosystem (Aider, OpenCode, Kilo, opencode) moved even faster.
Gemini CLI was built for a world where "agent" meant "chat with tool access." That world is gone.
Google's answer: unify everything on one agent harness. The CLI, the desktop app, the enterprise platform, the cloud API — all share the same brain. Improve the harness once, every surface gets better.
Antigravity CLI: What You Actually Get
Built in Go — Finally Fast
Gemini CLI was TypeScript. Antigravity CLI is Go. The difference is visible immediately:
- Cold start: ~200ms vs ~2s
- Memory footprint: ~40MB vs ~150MB
- No Node runtime dependency — single binary
For terminal diehards, this matters. You feel it in every keystroke.
Multi-Agent Orchestration, Not Chat
The old model: you ask, agent answers, you ask again.
Antigravity model: you define a goal, agents coordinate.
# In Antigravity CLI
/goal "Refactor the auth module to use JWT, add tests, update docs"
The main agent spawns subagents:
- One reads the codebase, maps dependencies
- One writes the JWT implementation
- One generates test coverage
- One updates documentation
- Main agent reviews, merges, runs CI
All async. Your terminal isn't blocked. You can /schedule it to run tonight while you sleep.
Slash Commands That Actually Change Workflows
| Command | What It Does |
|---|---|
/goal |
Run until complete — no intermediate prompts |
/grill-me |
Agent asks clarifying questions before writing code |
/schedule |
One-time or cron-scheduled agent runs |
/browser |
Explicitly enable/disable web search per task |
@conversation |
Pull CLI conversations into Antigravity 2.0 desktop |
The /grill-me pattern alone prevents hours of wasted context. The agent forces alignment before burning tokens.
Scheduled Tasks = Agents That Work While You Don't
/schedule daily 02:00 "Review dependabot PRs, run tests, auto-merge green"
/schedule weekly monday 09:00 "Generate weekly changelog from merged PRs"
This is the feature that makes Antigravity feel like a platform instead of a tool. You're not babysitting the agent. You're managing a fleet.
Migration: What Carries Over, What Doesn't
✅ Carries Over (Mostly)
- Agent Skills → Now Antigravity Plugins (JSON format, same concept)
- Hooks → JSON hooks, more powerful, version-controlled
- MCP Servers — Full compatibility, same config format
- Subagents — Now "dynamic subagents" with better isolation
- Extensions → Plugins, same capability surface
❌ Breaking Changes
-
Config file location —
~/.gemini→~/.antigravity - Settings schema — New unified schema across CLI + desktop
-
Conversation history — Not auto-migrated. Export/import via
@conversationdropdown in desktop app - IDE extensions — Gemini Code Assist extensions deprecated. New Antigravity IDE extensions coming (VS Code, JetBrains, Antigravity IDE)
Migration Path (Do This Now)
# 1. Install Antigravity CLI
curl -fsSL https://antigravity.google/download/cli | sh
# 2. Run migration wizard (imports skills, MCP, hooks)
antigravity migrate --from-gemini-cli
# 3. Verify
antigravity doctor
# 4. Test a real task
antigravity run "/goal 'Add README to this repo'"
The wizard handles ~80% of configs automatically. The rest you'll tweak manually — mostly hook syntax changes.
Antigravity 2.0 Desktop: Why It Exists
The CLI is for operators. The desktop app is for orchestrators.
Key differences:
- Visual artifact review — See diffs, test output, browser screenshots in a review flow
- Project-based (not repo-based) — One project = multiple folders, custom permissions per folder
- Voice input with live transcription — Talk to agents, see text appear in real-time
- Standalone conversations — Detach a thread, hand it to a colleague, pick up later
- Scheduled Tasks UI — Visual cron builder, run history, notifications
Google's internal teams "dual-wield" — Antigravity 2.0 for planning/review, CLI for execution, IDE of choice for editing. That's the intended workflow.
How It Stacks Up (Sept 2026)
| Factor | Antigravity CLI | Claude Code | Codex CLI | OpenCode / Kilo / Aider |
|---|---|---|---|---|
| Multi-agent | Native (dynamic subagents) | Native (subagents) | Native (subagents) | Manual orchestration |
| Async/background | First-class (/goal, /schedule) |
Limited | Limited | Manual (tmux/scripts) |
| Harness unity | CLI + Desktop + Cloud + SDK | CLI only | CLI only | N/A (BYOH*) |
| Model lock-in | Gemini 3.5 Flash/Pro (default) | Opus 5 / Sonnet 5 | GPT-5.6 Sol/Terra/Luna | Any (BYOK) |
| Pricing (individual) | Free tier + Google AI Pro ($19.99/mo) | $17/mo Pro (annual) | $20/mo Plus + credits | Free (pay model provider) |
| Enterprise | Antigravity Enterprise Platform | Claude Enterprise | ChatGPT Enterprise | Self-host |
| Speed (cold start) | ~200ms (Go) | ~1.5s (Node) | ~1.8s (Node) | ~300ms (Go/Rust) |
| Extensibility | Plugins (JSON), MCP, SDK | Hooks, MCP, Skills | Skills, MCP | Plugins, MCP |
*BYOH = Bring Your Own Harness
The verdict: Antigravity CLI is the best pure terminal experience if you're all-in on Google's ecosystem. Unified harness across surfaces is a genuine differentiator — fix a hook once, works everywhere.
But — model lock-in is real. You get Gemini. Want Opus 5? GPT-5.6? Qwen3-Max? You're not getting them natively in Antigravity. The open-source CLIs (OpenCode, Kilo, Aider, opencode) win on model freedom.
The Strategic Picture: Google's Platform Play
This isn't really about a CLI. It's about owning the agent layer.
- Harness co-optimized with Gemini training — Google controls model + harness + eval. Faster iteration than anyone.
- Managed Agents API — Deploy agents to Google Cloud, call via API. No local compute needed.
- Antigravity SDK — Build your own agent surfaces (internal tools, customer-facing, whatever) on Google's harness.
- Enterprise lock-in — Standard/Enterprise customers stay on Gemini CLI for now, but migration path points to Antigravity Enterprise Platform.
Google is building the AWS for AI agents. The CLI is just the developer on-ramp.
Since the Cutoff: The Quiet Security Hardening (Sept 2026)
Gemini CLI might be "dead" for individuals, but the codebase is very much alive — and the releases since the June cutoff have become a security-hardening story worth reading even if you've switched agents. Between v0.58.0 (Sept 1) and v0.60.0-preview.0 (Sept 8) the team shipped fixes that read like a checklist of everything that can go wrong when an AI agent touches a real machine. If you run agents in CI or on servers — any agent — these are the failure modes to know:
1. The sandbox now blocks container escapes
v0.58.0 isolates Docker and container-runtime sockets and binaries inside the macOS Seatbelt sandbox (PR #28935). Why that's a big deal: a sandboxed agent is only as strong as its weakest boundary, and the classic escape is reaching the host's Docker socket — from there you have root on the machine. v0.60.0-preview.0 continues the theme: the temporary directory and the settings directory are now isolated in the container, and the Seatbelt sandbox gets its own tmpdir (PR #29171, PR #29216).
2. MCP OAuth is getting locked down
v0.60.0-preview.0 enforces RFC 9207 issuer identification in the MCP OAuth flow (PR #29117) — meaning the agent now verifies the token issuer instead of trusting whatever the OAuth endpoint says. For beginners: this kills a whole class of token-hijack attacks where a malicious MCP server answers an auth redirect and walks away with your credentials.
3. Files, symlinks, and path tricks are being closed
-
v0.58.0: consistent symlink evaluation in ignore-path handling (PR #28915) -
v0.60.0-preview.0: workspace path boundary checks + symlink resolution in command safety and file discovery (PR #29170); strict permission/ownership checks on system-wide config paths (PR #29115); and an NTFS 8.3 short-name (SFN) path mitigation for Windows (PR #29116) — an obscure but real way to slip past path allowlists on Windows. - The extension loader got hardened path resolution and boundary validation (PR #29169).
4. Untrusted tool output can't set the agenda
Two fixes target the "the tool's output is attacker-controlled" problem: envelope metadata provenance for untrusted tool outputs (PR #29215) and a consent prompt for environment changes that sanitizes runtime-altering env vars (PR #28863). This is the same attack family as the Comment-and-Control CI secret theft — the agent treating untrusted output as instructions.
5. A hardcoded API key got scrubbed
v0.60.0-preview.0 sanitized and removed a hardcoded Google CrUX API key from chrome-devtools-mcp (PR #29158). Hardcoded keys in agent tooling are the supply-chain version of a password on a Post-it: one leaked repo away from abuse.
What to do with this
- If you still run Gemini CLI (enterprise or self-managed): upgrade past v0.60.0-preview.0 — most of these are proactive hardening, not announced vulns, but the container-isolation and OAuth fixes are exactly the kind you want before an incident.
- If you're on another agent: this is the pattern to demand from your tool. Claude Code's worktree sandbox escapes and config-directory attack surface show the same battle. Any agent that touches files, runs commands, and talks to MCP servers needs: sandbox boundary isolation, OAuth issuer verification, symlink-aware path checks, and provenance handling for tool output.
- Check your own stack for the two boring-but-lethal classes: hardcoded keys in tooling, and permissive sandboxes that leave the Docker socket or settings dir reachable.
The takeaway is quietly reassuring: even a product Google "killed" spent September hardening exactly the boundaries security researchers keep finding in every agent. That's the direction the whole category is moving — and it's a good sign.
Should You Switch?
Stay with Antigravity if:
- You're already in Google Cloud / Gemini ecosystem
- You want the fastest, lightest terminal agent (Go binary wins)
- Multi-agent async workflows match how you work
- You want a path to cloud-deployed agents without rewriting
Look elsewhere if:
- You need model choice (Opus 5, GPT-5.6, local models)
- You're invested in Claude Code / Codex workflows that already work
- You refuse vendor lock-in on principle
- Your team uses mixed IDEs and you need universal IDE extensions (coming, not here)
The pragmatic middle:
Run Antigravity CLI alongside an open-source CLI. Use Antigravity for Google-integrated work (Cloud, Firebase, Workspace APIs). Use OpenCode/Kilo/Aider for everything else. They're all just terminals — run both.
What's Next
Google's roadmap (from I/O + blog posts):
- Remote control — Control desktop agents from CLI, vice versa
- Cloud-deployed agents — Managed Agents API GA
- IDE extensions — VS Code, JetBrains, Antigravity IDE plugins
- More model tiers — Gemini 3.5 Ultra, future Flash/Pro updates
- Agent marketplace — Share/install pre-built agent configurations
The platform is early. But the foundation — unified harness, Go CLI, async multi-agent — is solid.
TL;DR
- Gemini CLI is dead for free/Pro/Ultra users since June 18, 2026
- Antigravity CLI replaces it — Go binary, multi-agent, async, scheduled tasks
- Antigravity 2.0 desktop adds visual review, project-based workspaces, voice
- Unified harness across CLI, desktop, cloud, SDK = Google's moat
- Model lock-in to Gemini is the trade-off
- Migration is straightforward for skills/MCP/hooks; conversation history needs manual export
- Since the cutoff: Gemini CLI v0.58–v0.60 quietly hardened sandbox isolation, MCP OAuth issuer checks, symlink/path boundaries, and config-path permissions — the same security arc all agents are on
The terminal AI war just got a new front. Google isn't playing catch-up anymore — they're building the platform they should've built in 2025.
Related articles
- Claude Code Alternatives in 2026: 12 Options Compared
- Context Engineering for Coding Agents: How to Make Every Token Count
- Your AI Agents Config Directory Is Now the Most Dangerous Place on Your Machine
Migrated from Gemini CLI? Hit me up on X @terminalblog_en — collecting real migration stories for a follow-up.
Top comments (0)