DEV Community

Cover image for Gemini CLI Is Dead. Here's the Better Thing That Replaced It
pulkitgovrani
pulkitgovrani Subscriber

Posted on

Gemini CLI Is Dead. Here's the Better Thing That Replaced It

Google I/O Writing Challenge Submission

This is a submission for the Google I/O Writing Challenge


I opened my terminal on May 20th, ran gemini, and got a deprecation notice.

Google shipped Antigravity CLI at I/O 2026 — and killed Gemini CLI the same day. If you use Gemini CLI in your workflow, this already affects you. If you've never touched either, stick around anyway. The mental model shift here is worth understanding before you need it.


Why Replace Gemini CLI at All?

Gemini CLI was a prompt interface. You send a prompt, you get a response. That's the whole model.

Antigravity CLI is an agent harness. The primitive isn't a prompt — it's a running agent that can spawn sub-tasks, use tools, and keep working while you do something else.

That's not a rename. That's a different abstraction.

The migration is clean though: everything that mattered in Gemini CLI carries over. Skills, Hooks, Subagents — all preserved. Extensions are now called Antigravity Plugins, but the concept is identical. If you had Gemini CLI workflows, the port is mechanical.


Install in 30 Seconds

curl -fsSL https://antigravity.google/cli/install.sh | bash
agy --version
Enter fullscreen mode Exit fullscreen mode

No API key prompt during install. Auth happens the first time you invoke an agent. If you have an existing ~/.gemini/ directory, the CLI detects it and imports your Skills automatically.


First Command: agy inspect

Before you run anything, run this:

agy inspect
Enter fullscreen mode Exit fullscreen mode

It shows you everything the CLI sees — config files loaded, Skills available (global and workspace), Hooks wired up, plugins installed. Think of it as git status for your agent environment.

Antigravity CLI v2.0.1

Configuration
  Global config:    ~/.antigravity/config.json
  Workspace config: .agents/config.json (not found)

Skills (global)
  code-review        ~/.antigravity/skills/code-review.md
  commit-message     ~/.antigravity/skills/commit-message.md

Skills (workspace)
  None

Hooks
  None configured
Enter fullscreen mode Exit fullscreen mode

Run it first in any new project. It'll save you 20 minutes of debugging why a Skill isn't loading.


Skills: Saved Agent Roles

A Skill is a markdown file that gives the agent a role, tool access, and task framing. A saved system prompt, with metadata.

Create a workspace Skill:

mkdir -p .agents/skills
Enter fullscreen mode Exit fullscreen mode
<!-- .agents/skills/ux-review.md -->
---
name: ux-review
description: Reviews a UI screenshot against Nielsen's heuristics
tools: [read_file]
---

You are a UX analyst. Analyze any UI screenshot against:
- Nielsen's 10 Usability Heuristics
- WCAG 2.1 accessibility guidelines
- Cognitive load principles

Return structured findings: what's working, what's broken, and the specific heuristic being violated.
Enter fullscreen mode Exit fullscreen mode

Invoke it:

agy run --skill ux-review "Review the checkout flow in checkout.png"
Enter fullscreen mode Exit fullscreen mode

Skills in .agents/skills/ travel with the project. Skills in ~/.antigravity/skills/ are global. The community Antigravity Awesome Skills repo has 1,400+ pre-built ones if you'd rather not start from scratch.

Bold opinion: The community Skills library is actually the most underrated thing about this ecosystem. You can drop in a production-grade code-review workflow in 90 seconds. Most people skip it and hand-write prompts forever.


Hooks: Intercept the Agent Loop

Hooks let you fire shell commands at lifecycle moments. Config is JSON:

// .agents/config.json
{
  "hooks": {
    "before_tool_call": [
      { "command": "echo '$TOOL_NAME' >> .agents/tool-log.txt" }
    ],
    "on_loop_stop": [
      { "command": "node scripts/notify.js" }
    ]
  }
}
Enter fullscreen mode Exit fullscreen mode

Available hook points: before_tool_call, after_model_call, on_loop_stop, on_error.

The pattern I use on every project: on_loop_stop writes a summary to a log file, before_tool_call audits tool use so I can see what the agent actually did. Thirty lines of config, total.


Subagents: The Part Gemini CLI Couldn't Do

This is the actual upgrade.

Gemini CLI was synchronous. You waited. The agent finished. You moved on. Antigravity CLI ships async subagents — dispatch a long-running task to a background agent and keep prompting in the foreground, same session.

From inside the TUI:

> Refactor the auth module to use the new token schema.
  [Dispatching to subagent...]

> While that runs — write a changelog entry for the last 10 commits.
Enter fullscreen mode Exit fullscreen mode

Both run in parallel. The subagent reports back when it's done.

From the CLI:

# Dispatch a background agent
agy dispatch "Run the full test suite and write a summary to test-report.md"

# Check active subagents
agy agents list

# Pull output from a specific agent
agy agents output <agent-id>
Enter fullscreen mode Exit fullscreen mode

I Tried It: Parallelizing a Real Refactor

Here's what I actually tested. I had a Next.js project with a type refactor that touched ~40 files.

I dispatched the refactor to a background subagent, then used the foreground agent to write the PR description and update the changelog — simultaneously.

The refactor completed in about 4 minutes. The PR description and changelog were ready before the refactor finished. Total wall-clock time: 4 minutes instead of 8–10 in sequence.

That's not a benchmark. That's just what parallel async agents feel like in practice.


Managed Agents: Serverless Version

Don't want the CLI? There's an API:

import google.generativeai as genai

genai.configure(api_key="YOUR_API_KEY")

agent = genai.create_agent(
    model="gemini-3.5-flash",
    instructions="You are a code reviewer. Review the diff for correctness and security issues.",
    tools=["code_execution"],
)

result = agent.run("Review this diff:\n" + open("changes.diff").read())
print(result.output)
Enter fullscreen mode Exit fullscreen mode

Same agent harness. Same Gemini 3.5 Flash intelligence. Zero local setup. The agent runs in an isolated Linux environment on Google's infrastructure.


Migration Cheat Sheet

Gemini CLI Antigravity CLI
gemini run agy run
~/.gemini/skills/ ~/.antigravity/skills/
Extensions Plugins (same concept)
gemini inspect agy inspect
Synchronous only agy dispatch for async

Skills files don't need to change. The biggest behavioral win: agy is built in Go. Startup is noticeably faster than the old CLI.

Bold opinion: The deprecation of Gemini CLI felt abrupt. But Google made the right call — maintaining two separate CLIs with diverging capability models would have been worse for the ecosystem than a clean cut.


What This Is Really About

Gemini CLI was a terminal wrapper around a language model.

Antigravity CLI is a terminal interface for an agent harness. The Skills/Hooks/Plugins model is also cross-compatible with Claude Code, Cursor, and Codex CLI — a Skill you write here works elsewhere.

The transition was abrupt. The thing that replaced it is better.


Antigravity CLI at antigravity.google. Codelabs at codelabs.developers.google.com.

Tags: googleio ai productivity devtools

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.