Skip to content

Instantly share code, notes, and snippets.

@edxeth
Last active December 28, 2025 12:05
Show Gist options
  • Select an option

  • Save edxeth/2561e0cc273cc98c1e3b5c898d3ea237 to your computer and use it in GitHub Desktop.

Select an option

Save edxeth/2561e0cc273cc98c1e3b5c898d3ea237 to your computer and use it in GitHub Desktop.
Custom OpenCode config file with support to Antigravity and OpenAI's models
{
"$schema": "https://opencode.ai/config.json",
"plugin": [
"oh-my-opencode@latest",
"@franlol/opencode-md-table-formatter@latest"
],
"enabled_providers": [
"antigravity-claude",
"antigravity-gemini",
"openai-codex",
"x2n-claude"
],
"provider": {
"antigravity-claude": {
"npm": "@ai-sdk/anthropic",
"name": "Anthropic on Antigravity",
"options": {
"baseURL": "http://localhost:8317/v1",
"apiKey": "dummy"
},
"models": {
"claude-opus-4-5-thinking": {
"id": "gemini-claude-opus-4-5-thinking",
"name": "Claude Opus 4.5 (Thinking)",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": true,
"options": {
"thinkingConfig": {
"thinkingBudget": 32000,
"includeThoughts": true
}
},
"cost": {
"input": 5,
"output": 25,
"cache_read": 0.5
},
"modalities": {
"input": ["text", "image", "pdf"],
"output": ["text"]
}
},
"claude-sonnet-4-5-thinking": {
"id": "gemini-claude-sonnet-4-5-thinking",
"name": "Claude Sonnet 4.5 (Thinking)",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": true,
"options": {
"thinkingConfig": {
"thinkingBudget": 32000,
"includeThoughts": true
}
},
"cost": {
"input": 3,
"output": 15,
"cache_read": 0.3
},
"modalities": {
"input": ["text", "image", "pdf"],
"output": ["text"]
}
},
"claude-sonnet-4-5": {
"id": "gemini-claude-sonnet-4-5",
"name": "Claude Sonnet 4.5",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": false,
"cost": {
"input": 3,
"output": 15,
"cache_read": 0.3
},
"modalities": {
"input": ["text", "image", "pdf"],
"output": ["text"]
}
}
}
},
"antigravity-gemini": {
"npm": "@ai-sdk/google",
"name": "Google on Antigravity",
"options": {
"baseURL": "http://localhost:8317/v1beta",
"apiKey": "dummy"
},
"models": {
"gemini-3-pro-preview": {
"id": "gemini-3-pro-preview",
"name": "Gemini 3 Pro (Preview)",
"limit": { "context": 1048576, "output": 65536 },
"reasoning": true,
"options": {
"thinkingConfig": {
"thinkingLevel": "high",
"includeThoughts": true
}
},
"cost": {
"input": 2,
"output": 12,
"cache_read": 0.2
},
"modalities": {
"input": ["text", "image", "video", "audio", "pdf"],
"output": ["text"]
}
},
"gemini-3-flash-preview": {
"id": "gemini-3-flash-preview",
"name": "Gemini 3 Flash (Preview)",
"limit": { "context": 1048576, "output": 65536 },
"reasoning": true,
"options": {
"thinkingConfig": {
"thinkingLevel": "high",
"includeThoughts": true
}
},
"cost": {
"input": 0.5,
"output": 3,
"cache_read": 0.05
},
"modalities": {
"input": ["text", "image", "video", "audio", "pdf"],
"output": ["text"]
}
},
"gemini-3-pro-image-preview": {
"id": "gemini-3-pro-image-preview",
"name": "Gemini 3 Pro Image (Preview)",
"limit": {
"context": 65536,
"output": 32768
},
"modalities": {
"input": ["image", "text", "pdf"],
"output": ["text"]
}
},
"gemini-2.5-computer-use-preview-10-2025": {
"id": "gemini-2.5-computer-use-preview-10-2025",
"name": "Gemini 2.5 Computer Use",
"limit": {
"context": 1048576,
"output": 65536
},
"modalities": {
"input": ["image", "text"],
"output": ["text"]
}
}
}
},
"openai-codex": {
"npm": "@ai-sdk/openai-compatible",
"name": "OpenAI",
"options": {
"baseURL": "http://localhost:8317/v1",
"apiKey": "dummy"
},
"models": {
"gpt-5.2": {
"id": "gpt-5.2",
"name": "GPT-5.2 (Extra High)",
"limit": { "context": 272000, "output": 128000 },
"options": {
"reasoningEffort": "xhigh",
"textVerbosity": "high",
"reasoningSummary": "detailed",
"include": ["reasoning.encrypted_content"],
"store": false
},
"cost": {
"input": 1.75,
"output": 14,
"cache_read": 0.175
},
"modalities": {
"input": ["text", "image"],
"output": ["text"]
}
},
"gpt-5.2-codex": {
"id": "gpt-5.2-codex",
"name": "GPT-5.2-Codex (Extra High)",
"limit": { "context": 272000, "output": 128000 },
"options": {
"reasoningEffort": "xhigh",
"textVerbosity": "medium",
"reasoningSummary": "detailed",
"include": ["reasoning.encrypted_content"],
"store": false
},
"cost": {
"input": 1.25,
"output": 10,
"cache_read": 0.125
},
"modalities": {
"input": ["text", "image"],
"output": ["text"]
}
}
}
},
"x2n-claude": {
"npm": "@ai-sdk/anthropic",
"name": "X2N",
"options": {
"baseURL": "http://localhost:8787/v1",
"apiKey": "dummy"
},
"models": {
"claude-opus-4-5-thinking": {
"id": "gemini-claude-opus-4-5-thinking",
"name": "Claude Opus 4.5 (Thinking)",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": true,
"options": {
"thinkingConfig": {
"thinkingBudget": 32000,
"includeThoughts": true
}
},
"cost": {
"input": 5,
"output": 25,
"cache_read": 0.5
},
"modalities": {
"input": ["text", "image", "pdf"],
"output": ["text"]
}
},
"claude-opus-4-5": {
"id": "gemini-claude-opus-4-5",
"name": "Claude Opus 4.5",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": false,
"cost": {
"input": 5,
"output": 25,
"cache_read": 0.5
},
"modalities": {
"input": ["text", "image", "pdf"],
"output": ["text"]
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment