brainstate

NoeFabris/opencode-antigravity-auth · source

Snapshot 0 · 2026-11-04T12:47:28Z · TypeScript · MIT

Content fingerprintd97a3439474b5f52ca1bf1ca7ae162dc5136385c963e8fe34274800c8d7debb4

GitHub description at capture

Enable Opencode to authenticate against Antigravity (Google's IDE) via OAuth so you can use Antigravity rate limits and access models like gemini-3-pro and claude-opus-4-5-thinking with your Google credentials.

README at capture

# Antigravity + Gemini CLI OAuth Plugin for Opencode

[![npm version](https://img.shields.io/npm/v/opencode-antigravity-auth.svg)](https://www.npmjs.com/package/opencode-antigravity-auth)
[![npm beta](https://img.shields.io/npm/v/opencode-antigravity-auth/beta.svg?label=beta)](https://www.npmjs.com/package/opencode-antigravity-auth)
[![npm downloads](https://img.shields.io/npm/dw/opencode-antigravity-auth.svg)](https://www.npmjs.com/package/opencode-antigravity-auth)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![X (Twitter)](https://img.shields.io/badge/X-@dopesalmon-000000?style=flat&logo=x)](https://x.com/dopesalmon)

Enable Opencode to authenticate against **Antigravity** (Google's IDE) via OAuth so you can use Antigravity rate limits and access models like `gemini-3.1-pro` and `claude-opus-4-6-thinking` with your Google credentials.

Unofficial plugin. Google may restrict accounts using third-party clients.

## Setup

Requires OpenCode **2.1.2+** and Node.js **20+**.

Add to `~/.config/opencode/opencode.json`:

```json
{
  "$schema": "https://opencode.ai/config.json",
  "plugins": ["opencode-antigravity-auth@2.1.2"]
}
```

Then run:

```sh
opencode auth login google
```

Choose **Google OAuth (Antigravity)**. Existing accounts are reused.

To use a local checkout, run `npm ci && npm run build` and replace the package name above with the checkout's absolute path.

## Use

```sh
opencode models
opencode run --model=google/antigravity-gemini-3.8-flash-high "Hello"
opencode run --model=google/antigravity-claude-opus-4-6-thinking#max "Hello"
```

Models are discovered from your enabled accounts and cached for an hour. Availability depends on your Google plan. Select an `antigravity-*` model for Google OAuth. Native Google API-key models are hidden while Antigravity OAuth is selected and return when you switch to an API-key connection.

Inside OpenCode, open **`/antigravity`** (or **`/ag`**) to:

- See logged-in accounts, the current selection, and cached quota percentages and reset times.
- Switch to an enabled account by selecting its row.
- Check Antigravity and Gemini CLI quotas and reset times.
- Add an account, or use **Manage account…** to verify, enable, disable, re-authenticate, or delete one.
- Refresh the model list.

The account list shows the lowest cached quota across Claude, Gemini Pro, and Gemini Flash. Choose **Check quotas / verify enabled accounts** to refresh the saved quota data. Refresh quotas if an older cache shows a percentage without a reset time.

Accounts are stored in `~/.config/opencode/antigravity-accounts.json`. Back up this file before moving machines; it contains credentials. Disabling an account excludes it from rotation and routine quota checks.

## Development

```sh
npm ci
npm run typecheck
npm test
npm run build
OPENCODE_BIN=/path/to/opencode npm run test:e2e:v2
```

The runtime test uses synthetic credentials. Authenticated model and menu checks require a logged-in Google account.

[V2 migration and verification](docs/OPENCODE-V2.md) · [Configuration](docs/CONFIGURATION.md) · [Troubleshooting](docs/TROUBLESHOOTING.md)

OpenCode 1.18.29+ remains supported through the legacy entrypoint; its account menu opens from `opencode auth login`.