> ## Documentation Index
> Fetch the complete documentation index at: https://continuum-three-olive.vercel.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Antigravity / Gemini

> Headless agy harness sessions with a three-tier Gemini quota probe, conversation-DB analytics, and brain-dir plan snapshots.

Continuum runs Google Antigravity (Gemini) sessions through the headless `agy` CLI. The user-facing label in the Code tab is **Antigravity**; the Usage tab shows the same spend under Gemini, and the wire keeps the `gemini` provider id for back-compat with older clients.

## Requirements

The `agy` CLI (Antigravity 2, GA at Google I/O 2026) must be on your `PATH`. If it isn't found, the session fails with an "Install Antigravity 2 (agy CLI) first" error, and **Settings → Providers** offers an installer that downloads and runs `https://antigravity.google/cli/install.sh` in an embedded terminal. No credential is configured inside Continuum — `agy` carries its own Google sign-in, and `gemini` in a terminal completes the login.

## How it integrates

Live Antigravity sessions run on a headless driver that plugs into the shared harness. Each turn spawns:

```bash theme={"dark"}
agy --dangerously-skip-permissions [--continue] --print -- "<prompt>"
```

`agy --print` runs one prompt non-interactively and streams the response as plain text to stdout. The `--` before the prompt terminates flag parsing, so a prompt that starts with `-` can't be smuggled in as an `agy` flag. Multi-turn continuity comes from `--continue`, which resumes the most recent conversation for the session's working directory — each workspace has its own cwd, so turns chain correctly.

Because Antigravity is a non-Anthropic agent, Continuum strips Anthropic and Claude credentials from the child process environment so they never reach it.

## Models

The bundled catalog ships Gemini 3.5 Flash (Antigravity 2's default, and the default a fresh session resolves to), Gemini 3.5 Flash (Thinking), Gemini 3 Pro, Gemini 3.1 Pro in High and Low flavors, Gemini 3 Flash, and Gemini 3 Flash (Thinking).

The Thinking variants are the same base models with the CLI's `-thinking` alias, which enables Google's higher thinking-budget configuration — the Standard/Extended split Google ships in the Antigravity UI.

## Effort

Antigravity has no reasoning-effort control. You choose a model (including a Thinking variant); there is no low/medium/high ramp, and the headless driver passes no effort value.

## Quota gauge

Gemini quota appears in the Usage tab alongside the other gauges. It is **not** read from API rate-limit headers. Continuum probes it in three tiers:

<Steps>
  <Step title="Local language server">
    The Antigravity 2 desktop app runs a localhost service, discovered by `lsof`. Continuum asks it for the plan name, cap, used, and remaining counts. This is the only source that works when you signed in through the Antigravity GUI, which never writes an OAuth file.
  </Step>

  <Step title="Google quota API">
    When the language server isn't reachable, Continuum calls `cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota` — the same call the open-source `gemini` CLI makes. It needs `~/.gemini/oauth_creds.json`, written by signing in with `gemini` from a terminal.
  </Step>

  <Step title="Cached fallback">
    Neither tier succeeded: the gauge holds its last reading and shows an "Open Antigravity 2 to see usage" prompt rather than inventing a number.
  </Step>
</Steps>

## Usage analytics

Token events are parsed from Antigravity's conversation corpus under `~/.gemini/`, which ships in two layouts backed by the same agent:

* **Desktop IDE** — `~/.gemini/antigravity/conversations/<uuid>`
* **`agy` CLI** — `~/.gemini/antigravity-cli/conversations/<uuid>`

Each conversation pairs with a `brain/<uuid>/` artifact directory. Continuum derives the turn count from that directory's metadata files and buckets each conversation to a repo through a conversation-to-cwd index. Current SQLite-backed conversations carry real token counts, which Continuum extracts directly; older encrypted files (and any whose format doesn't match) fall back to a coarse per-turn byte estimate and are surfaced with a provisional `~` marker.

<Note>
  Antigravity's billing confidence is **estimated**. Token counts come from on-disk conversation data rather than a precise per-turn meter, so the cost figure is a close approximation, not an exact reading.
</Note>

<Note>
  The precise extractor needs SQLite, which isn't available on watchOS, so that code path is compiled out there. In practice the Watch reads aggregated usage from the paired iPhone rather than ingesting Antigravity conversations itself.
</Note>

## Plan snapshots

Antigravity creates a `brain/<uuid>/` directory the moment a session starts, before the first turn. Once the agent writes `task.md` and `implementation_plan.md`, Continuum parses them as CommonMark — so nested checklists and fenced code blocks survive — and renders the plan in the Mac Plan pane and the iOS Plan tab. Approving routes through the same daemon handler as Claude and Codex plan approvals.

## Multiple accounts

Antigravity supports more than one Google account, with one wrinkle the other providers don't have: unlike Google's separate `gemini` CLI, `agy` resolves `.gemini` strictly from `HOME` and ignores any config-directory override. A secondary account therefore gets a small isolated `HOME` — seeded with developer-tool passthroughs by the Mac runtime — so the OAuth bundle `agy` reads is the one you picked. Because the quota API answers for the signed-in Google identity rather than per-config-root, secondary Antigravity accounts don't get independent usage readings.

## Broadcast

Antigravity can participate in the Chat surface's multi-provider [broadcast](/docs/features/broadcast) mode — one prompt to several providers, answers side by side.

<Note>
  The Chat tab is hidden by default across every client while the product is focused on Code, so broadcast is not reachable from the default UI. See [Chat](/docs/surfaces/chat).
</Note>
