Some checks failed
Semantic Release / release (push) Has been cancelled
Implements a new provider that uses Google's Antigravity unified gateway API to access Claude, Gemini, and other models through a single OAuth2-authenticated endpoint. Features: - OAuth2 token management with automatic refresh - Multi-account rotation for rate limit distribution - Support for Claude Opus/Sonnet 4.5 (with/without thinking) - Support for Gemini 2.5/3 models (Pro/Flash variants) - Thinking mode support with configurable tokens - Image processing support - Dual quota pool tracking (antigravity vs gemini-cli) - Gemini-style API request format Authentication: - Reads from ANTIGRAVITY_REFRESH_TOKEN env var (priority) - Falls back to ~/.config/opencode/antigravity-accounts.json - Automatic token refresh with retry logic - Rate limit tracking per account and quota pool Files added: - providers/antigravity.py - Main provider implementation - providers/antigravity_auth.py - OAuth token manager - providers/registries/antigravity.py - Model registry - conf/antigravity_models.json - Model definitions (11 models) - docs/antigravity_provider.md - Setup and usage docs - tests/test_antigravity_provider.py - Unit tests (14 pass) Integration: - Added to provider priority order after ZEN - Registered in server.py with auto-detection - ToS warning logged on first use
141 lines
4.7 KiB
JSON
141 lines
4.7 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"description": "Antigravity model configurations for the PAL MCP server",
|
|
"models": [
|
|
{
|
|
"model_name": "claude-opus-4-5-thinking",
|
|
"friendly_name": "Claude Opus 4.5 Thinking (Antigravity)",
|
|
"aliases": ["antigravity-claude-opus-4-5-thinking", "ag-opus-thinking"],
|
|
"context_window": 200000,
|
|
"max_output_tokens": 64000,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 32768,
|
|
"supports_images": true,
|
|
"intelligence_score": 20,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "claude-sonnet-4-5-thinking",
|
|
"friendly_name": "Claude Sonnet 4.5 Thinking (Antigravity)",
|
|
"aliases": ["antigravity-claude-sonnet-4-5-thinking", "ag-sonnet-thinking"],
|
|
"context_window": 200000,
|
|
"max_output_tokens": 64000,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 32768,
|
|
"supports_images": true,
|
|
"intelligence_score": 19,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "claude-sonnet-4-5",
|
|
"friendly_name": "Claude Sonnet 4.5 (Antigravity)",
|
|
"aliases": ["antigravity-claude-sonnet-4-5", "ag-sonnet"],
|
|
"context_window": 200000,
|
|
"max_output_tokens": 64000,
|
|
"supports_extended_thinking": false,
|
|
"supports_images": true,
|
|
"intelligence_score": 18,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "gemini-3-pro-high",
|
|
"friendly_name": "Gemini 3 Pro High (Antigravity)",
|
|
"aliases": ["antigravity-gemini-3-pro", "ag-gemini-3-pro"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65535,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 65535,
|
|
"supports_images": true,
|
|
"intelligence_score": 20,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "gemini-3-pro-low",
|
|
"friendly_name": "Gemini 3 Pro Low (Antigravity)",
|
|
"aliases": ["ag-gemini-3-pro-low"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65535,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 16384,
|
|
"supports_images": true,
|
|
"intelligence_score": 19,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "gemini-3-flash",
|
|
"friendly_name": "Gemini 3 Flash (Antigravity)",
|
|
"aliases": ["antigravity-gemini-3-flash", "ag-gemini-3-flash"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65536,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 32768,
|
|
"supports_images": true,
|
|
"intelligence_score": 17,
|
|
"temperature_constraint": "range"
|
|
},
|
|
{
|
|
"model_name": "gemini-3-flash-preview",
|
|
"friendly_name": "Gemini 3 Flash Preview (Gemini CLI)",
|
|
"aliases": ["ag-gemini-3-flash-preview"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65536,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 32768,
|
|
"supports_images": true,
|
|
"intelligence_score": 17,
|
|
"temperature_constraint": "range",
|
|
"quota_pool": "gemini-cli"
|
|
},
|
|
{
|
|
"model_name": "gemini-3-pro-preview",
|
|
"friendly_name": "Gemini 3 Pro Preview (Gemini CLI)",
|
|
"aliases": ["ag-gemini-3-pro-preview"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65535,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 65535,
|
|
"supports_images": true,
|
|
"intelligence_score": 19,
|
|
"temperature_constraint": "range",
|
|
"quota_pool": "gemini-cli"
|
|
},
|
|
{
|
|
"model_name": "gemini-2.5-pro",
|
|
"friendly_name": "Gemini 2.5 Pro (Gemini CLI)",
|
|
"aliases": ["ag-gemini-2.5-pro"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65536,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 32768,
|
|
"supports_images": true,
|
|
"intelligence_score": 18,
|
|
"temperature_constraint": "range",
|
|
"quota_pool": "gemini-cli"
|
|
},
|
|
{
|
|
"model_name": "gemini-2.5-flash",
|
|
"friendly_name": "Gemini 2.5 Flash (Gemini CLI)",
|
|
"aliases": ["ag-gemini-2.5-flash"],
|
|
"context_window": 1048576,
|
|
"max_output_tokens": 65536,
|
|
"supports_extended_thinking": true,
|
|
"max_thinking_tokens": 16384,
|
|
"supports_images": true,
|
|
"intelligence_score": 16,
|
|
"temperature_constraint": "range",
|
|
"quota_pool": "gemini-cli"
|
|
},
|
|
{
|
|
"model_name": "gpt-oss-120b-medium",
|
|
"friendly_name": "GPT-OSS 120B Medium (Antigravity)",
|
|
"aliases": ["ag-gpt-oss"],
|
|
"context_window": 128000,
|
|
"max_output_tokens": 16384,
|
|
"supports_extended_thinking": false,
|
|
"supports_images": false,
|
|
"intelligence_score": 15,
|
|
"temperature_constraint": "range"
|
|
}
|
|
]
|
|
}
|