cd /news/artificial-intelligence/gemini-cli-is-dead-here-s-the-better… · home topics artificial-intelligence article
[ARTICLE · art-11298] src=dev.to ↗ pub= topic=artificial-intelligence verified=true sentiment=· neutral

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

According to the article, Google replaced its Gemini CLI with Antigravity CLI at I/O 2026, shifting from a simple prompt-response interface to an agent harness that can spawn sub-tasks, use tools, and run tasks asynchronously in the background. The migration preserves existing features like Skills, Hooks, and Subagents, with Extensions renamed to Antigravity Plugins, and the CLI automatically imports configurations from the old `~/.gemini/` directory.

read5 min views22 publishedMay 23, 2026

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 .

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

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

agy agents list

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:

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

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @google 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/gemini-cli-is-dead-h…] indexed:0 read:5min 2026-05-23 ·