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

> Source: <https://dev.to/pulkitgovrani/gemini-cli-is-dead-heres-the-better-thing-that-replaced-it-272e>
> Published: 2026-05-23 11:43:44+00:00

*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
```

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
```

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
```

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
php
<!-- .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.
```

Invoke it:

```
agy run --skill ux-review "Review the checkout flow in checkout.png"
```

Skills in `.agents/skills/`

travel with the project. Skills in `~/.antigravity/skills/`

are global. The community [Antigravity Awesome Skills](https://github.com/sickn33/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" }
    ]
  }
}
```

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.
```

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>
```

## 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:

``` python
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)
```

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`
