Repository navigation
Releases: JoshRob297/opencode-antigravity-auth
Release list
v2.1.0
What's Changed
- ci: publicar la verificacion como comentario del PR y fallar si algo falla by @JoshRob297 in #40
- docs: AGENTS.md (reglas del repo para agentes de IA) by @JoshRob297 in #41
- docs: Argon status and stale model reference cleanup by @JoshRob297 in #45
- docs: label the two illustrative examples as jsonc by @JoshRob297 in #46
- feat(models): optional backend-driven model discovery by @JoshRob297 in #47
- fix(models): make model discovery forward-only by @JoshRob297 in #48
- docs: document model discovery, and fix the tiered-id gate behind it by @JoshRob297 in #53
- feat(models): extend forward-only discovery to Claude by @JoshRob297 in #54
- fix(request): resolve the CLI client-signature version at startup by @JoshRob297 in #55
- build(deps-dev): bump the vitest group with 3 updates by @dependabot[bot] in #49
- build(deps-dev): bump @types/node from 26.6.4 to 26.6.5 by @dependabot[bot] in #50
- build(deps): bump zod from 4.6.5 to 4.6.7 by @dependabot[bot] in #51
- build(deps): bump @opencode-ai/plugin from 1.18.35 to 1.19.0 by @dependabot[bot] in #52
- docs(readme): add Spanish translation (README.es.md) by @JoshRob297 in #56
- docs(es): Spanish translations of the operational docs by @JoshRob297 in #57
- feat: ocultar los modelos de Google ajenos al catalogo curado by @JoshRob297 in #58
Full Changelog: v2.0.5...v2.1.0
v2.0.5 - Fix thinking effort on wrapped requests (#37)
v2.0.5 - Fix: thinking effort ignored on wrapped requests (#37)
Fixed
- Thinking variant (effort) ignored on wrapped requests (closes #37). In
prepareAntigravityRequest, the backend model (gemini-3.8-flash-{low|medium|high}) was resolved from the name-derived tier before the variant/effort (providerOptions.google.thinkingLevel/generationConfig.thinkingConfig.thinkingLevel) was applied. As a result, wrapped requests — what OpenCode sends — always fell back to-lowregardless of the selected effort. The variant is now extracted and applied before any backend-model resolution, for both wrapped and unwrapped bodies.
| Case | Before | After |
|---|---|---|
wrapped + effort high (providerOptions) |
gemini-3.8-flash-low |
gemini-3.8-flash-high |
wrapped + effort high (generationConfig) |
gemini-3.8-flash-low |
gemini-3.8-flash-high |
| unwrapped + effort high | gemini-3.8-flash-high |
gemini-3.8-flash-high |
Tests
- 2 regression tests added. Full suite: 39/39 files, 1059 passed.
Credit
- Approach inspired by community PR #38 (@Atharva-G1205); landed as a minimal change that keeps the variants design.
What's Changed
- fix(request): apply thinking variant before backend model resolution (#37) by @JoshRob297 in #39
New Contributors
- @JoshRob297 made their first contribution in #39
Full Changelog: v2.0.4...v2.0.5
v2.0.4 - Prune dead consumer Gemini models
v2.0.4 - Prune dead consumer Gemini models
Removed
antigravity-gemini-3.7-flash,antigravity-gemini-3.6-flashandantigravity-gemini-3.1-proare now Google AI Ultra / Enterprise-only (plan change on 2026-10-13) and are no longer registered by the plugin. Selecting them previously failed with404 NOT_FOUND.- Same-day context: Gemini 4 ("Argon") released but restricted to Ultra / Enterprise; consumer plans are left with Gemini 3.8 Flash as the only Gemini model.
Changed
- Registered models are now exactly:
antigravity-gemini-3.8-flash(default)antigravity-claude-sonnet-4-6antigravity-claude-opus-4-6-thinkingantigravity-gpt-oss-120b-medium
- Whitelist and
/antigravity-setupreport updated to the trimmed catalog. - Docs (
README.md,docs/MODEL-VARIANTS.md) cleaned of dead model entries. - Backend resolvers for 3.7/3.6/3.1 Pro are retained internally (harmless) but not surfaced.
Note
- Claude 4.6 + GPT-OSS remain until 2026-11-02, when they are removed by Google; after that consumer plans are left with Gemini 3.8 Flash only.
- Validated:
tsc --noEmitclean, 39/39 test files (1057 passed).
v2.0.3 - Maintenance paused + dependency bumps
v2.0.3 - Maintenance paused + dependency bumps
Changed (docs)
- Maintenance paused pending a competitive Google model. Gemini 3.8 Flash is fast at code generation but still produces failures and does not reach parity with models such as DeepSeek, let alone frontier models.
- 2026-10-13: Google released Gemini 4 ("Argon") but restricted it to Google AI Ultra / Enterprise (not Google AI Pro). The same day, Gemini 3.7 Flash, 3.6 Flash and 3.1 Pro moved to Enterprise-only, leaving consumer plans with Gemini 3.8 Flash as the only Gemini model. Gemini 3.5 Pro has still not shipped.
- The Antigravity backend remains unreliable for paid plans (tier recognized but not applied), Claude 5.5 is unavailable, and Claude 4.6 + GPT-OSS-120b are removed on 2026-11-02.
Dependencies
@opencode-ai/plugin1.18.33 -> 1.18.35 (#36)@types/node26.6.3 -> 26.6.4 (#35)- vitest group (
vitest,@vitest/coverage-v8,@vitest/ui) 5.0.2 -> 5.0.3 (#34)
Fixed
- README: removed a dead link to an internal entitlement report no longer published here.
No functional changes. The plugin stays usable as-is; pin this release for a stable docs + deps state.
What's Changed
- build(deps-dev): bump the vitest group with 3 updates by @dependabot[bot] in #34
- build(deps-dev): bump @types/node from 26.6.3 to 26.6.4 by @dependabot[bot] in #35
- build(deps): bump @opencode-ai/plugin from 1.18.33 to 1.18.35 by @dependabot[bot] in #36
Full Changelog: v2.0.2...v2.0.3
v2.0.2 - OpenCode v2 OAuth integration + API alignment
v2.0.2 - OpenCode v2 OAuth integration + API alignment
Fixes the OpenCode v2 authentication gap (issue #30) and aligns every v2 registration with the real @opencode/plugin 2.0.24 contracts.
Fixed
- OAuth integration (#30):
setupV2now registers thegoogleAntigravity OAuth method viactx.integration.transform(id: antigravity-oauth).opencode auth loginand the TUI connect flow now offer OAuth with Google (Antigravity) instead of only the core API-key method. - Multi-account pool: each successful authorization is persisted through
persistAccountPool, appended/deduplicated intoantigravity-accounts.jsonand picked up by the rotation engine. Connecting again adds the 4th, 5th, ... account. - Model catalog: removed the non-existent
ModelEditor.addbranch; models register througheditor.update("google", modelID, draft => ...), which seedsModel.Info.defaultand adds the model under an available provider. Drafts setenabled,capabilitiesand map variants to the realModel.Variantshape{ id, settings }. - Tools:
ToolEditor.addno longer receives a bogusid(v2 derives it fromname). - Slash commands:
executenow delivers output viactx.session.synthetic; previously a returned string was silently ignored. - Types: replaced the hand-rolled
V2Contextwith typed local contracts mirroring@opencode/plugin@2.0.24(no new runtime dependency).
Added
- Regression test asserting the v2 OAuth method is registered.
Upgrade
opencode auth login # pick "OAuth with Google (Antigravity)"Restart OpenCode so the new plugin build is loaded. Existing antigravity-accounts.json accounts are preserved.
Full Changelog: v2.0.1...v2.0.2
v2.0.1
What's Changed
- build(deps-dev): bump @types/node from 26.6.1 to 26.6.3 by @dependabot[bot] in #33
- build(deps): bump @opencode-ai/plugin from 1.18.31 to 1.18.33 by @dependabot[bot] in #32
- build(deps-dev): bump the vitest group with 3 updates by @dependabot[bot] in #31
Full Changelog: v2.0.0...v2.0.1
What's Changed
- build(deps-dev): bump @types/node from 26.6.1 to 26.6.3 by @dependabot[bot] in #33
- build(deps): bump @opencode-ai/plugin from 1.18.31 to 1.18.33 by @dependabot[bot] in #32
- build(deps-dev): bump the vitest group with 3 updates by @dependabot[bot] in #31
Full Changelog: v2.0.0...v2.0.1
What's Changed
- build(deps-dev): bump @types/node from 26.6.1 to 26.6.3 by @dependabot[bot] in #33
- build(deps): bump @opencode-ai/plugin from 1.18.31 to 1.18.33 by @dependabot[bot] in #32
- build(deps-dev): bump the vitest group with 3 updates by @dependabot[bot] in #31
Full Changelog: v2.0.0...v2.0.1
v2.0.0
v1.19.0: Strict Tool Sanitization, Antigravity CLI 1.2.7 Parity & OpenCode v2 Dual Adapter
What's New in v1.19.0
Strict Tool Schema Sanitization (Fix HTTP 400 'property is not defined')
- Protobuf-backed Cloud Code API rejects tool calls when schema
requiredarrays contain keys not defined inproperties. - Implemented recursive normalizer that prunes orphan required keys, omits degenerate empty required arrays, and enforces validation across pre-wrapped
functionDeclarationstools.
Official Antigravity CLI v1.2.7 Signature Parity
- Sourced from reverse engineering Google's official
agyv1.2.7 Linux x64 binary. - Synchronized client signature headers and User-Agent:
antigravity/cli/1.2.7 (aidev_client; os_type=linux; arch=amd64; cl=962369648; auth_method=consumer). - Capped rate-limit retry backoffs to 30 seconds max for immediate multi-account rotation.
Model Catalog Addition
- Integrated Antigravity's native 120B model (
antigravity-gpt-oss-120b-medium) with 131k context window and full multi-account routing support.
OpenCode v2 Dual-Compatibility Architecture
- Polymorphic entrypoint compatible simultaneously with OpenCode v1 (
opencode-ai1.18.x) and OpenCode v2 (@opencode/cli2.0+). - OpenCode v1 executes
export default .server(ctx)returning{ auth, event, tool }. - OpenCode v2 executes
export default .setup(ctx)dispatching nativectx.tool.transform,ctx.command.transform,ctx.model.transform, and native session hooks (http.request,http.response,retry). - 1,048 automated tests in Vitest passing 100%.
Full Changelog: v1.18.0...v1.19.0
v1.18.0 — OPSEC Safety Shield & Account Rotation
🌟 What's New in v1.18.0
- 🛡️ OPSEC Safety Shield & Telemetry Engine (
safety_shield):- Real-Time Extraction: Captures per-chunk
safetyRatingsprobabilities (NEGLIGIBLE,LOW,MEDIUM,HIGH) across all harm categories from Gemini's streaming response. - OPSEC Notifications & Logs: Emits immediate warnings in debug logs and UI toasts when Google evaluates a response as
HIGHharm orMEDIUMjailbreak. - Preventive Multi-Account Rotation (Account Shield): Automatically tracks consecutive high-risk responses per account (
consecutiveHighRiskTriggers). When reaching the configured threshold (default2), the plugin proactively rotates to the next available Google account (advanceToNextAccount) to prevent suspicious telemetry clustering on any single personal account.
- Real-Time Extraction: Captures per-chunk
- ⚙️ Configurable Settings: Controlled via
~/.config/opencode/antigravity.json:{ "safety_level": "none", "safety_shield": { "enabled": true, "log_ratings": true, "show_toast": true, "auto_rotate_threshold": 2 } } - 🧪 1,046 passing tests across 38 test suites.
📦 Installation
Add this to your ~/.config/opencode/opencode.json:
{
"plugin": ["github:JoshRob297/opencode-antigravity-auth"]
}Full Changelog: v1.17.1...v1.18.0
Full Changelog: v1.17.1...v1.18.0
v1.17.1 — Strip x-goog-api-key & Fix 400 API_KEY_INVALID
🌟 What's New in v1.17.1
- 🔑 Strip
x-goog-api-keyHeader (Fix 400API_KEY_INVALID):- OpenCode automatically injects an AI Studio/Vertex API key via the
x-goog-api-keyheader when intercepting requests togenerativelanguage.googleapis.com. - The Antigravity backend (
cloudcode-pa.googleapis.com) prioritized this header overAuthorization: Bearer, rejecting requests with400 INVALID_ARGUMENT(details[0].reason: API_KEY_INVALID,"API key not valid. Please pass a valid API key."). - Stripped
x-goog-api-keyalongsidex-api-keyinprepareAntigravityRequest, allowing requests to authenticate cleanly with OAuth Bearer tokens.
- OpenCode automatically injects an AI Studio/Vertex API key via the
- 🧪 1,043 passing tests across 37 test suites.
📦 Installation
Add this to your ~/.config/opencode/opencode.json:
{
"plugin": ["github:JoshRob297/opencode-antigravity-auth"]
}Full Changelog: v1.17.0...v1.17.1
Full Changelog: v1.17.0...v1.17.1