OpenCode 接入 Antigravity:用 CLIProxyAPI 搭本地转发
为什么要这么做
OpenCode 官方接口有时候不稳定,或者你想用 antigravity 的账号额度。最直接的办法是搭个本地代理,让 OpenCode 的请求转发到 antigravity。
用 CLIProxyAPI 这个项目可以快速实现,本质上就是在本地起个服务,监听 8317 端口,把请求转发到 antigravity 的 API。
CLIProxyAPI 配置
安装与启动
# 克隆项目
git clone https://github.com/router-for-me/CLIProxyAPI
cd CLIProxyAPI
# 安装依赖
npm install
# 启动服务
npm start
配置说明
CLIProxyAPI 的配置比较简单,主要是这几个参数:
- 监听端口:默认
8317,可以改,但要和后面 OpenCode 配置对应 - API Key:填你 antigravity 账号的 API Key
- 转发地址:antigravity 的 API 端点
- 模型映射:把 antigravity 的模型名映射成 OpenCode 认识的格式
- 管理界面:启动后访问
http://localhost:8317/management.html#/quota查看配额和使用情况
配置文件大概长这样:
{
"port": 8317,
"apiKey": "your-antigravity-api-key",
"baseURL": "https://api.antigravity.com/v1",
"models": {
"claude-sonnet-4-5": "claude-sonnet-4-5-20250929",
"claude-opus-4-5": "claude-opus-4-5-20251101",
"gemini-2.5-flash": "gemini-2.5-flash"
}
}
具体配置界面可以参考下面这张截图(已脱敏):

OpenCode 本地配置
OpenCode 的配置文件在 ~/.config/opencode/opencode.json,需要改两个地方:
- baseURL:指向本地 CLIProxyAPI 的地址
http://127.0.0.1:8317/v1 - apiKey:填 CLIProxyAPI 生成的本地 Key(格式:
quotio-local-********)
完整配置示例(已脱敏):
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"quotio": {
"name": "Quotio",
"npm": "@ai-sdk/anthropic",
"options": {
"apiKey": "quotio-local-********",
"baseURL": "http://127.0.0.1:8317/v1"
},
"models": {
"claude-sonnet-4-5-20250929": {
"name": "Claude Sonnet 4 5 20250929",
"limit": {
"context": 200000,
"output": 64000
}
},
"claude-opus-4-5-20251101-thinking": {
"name": "Claude Opus 4 5 20251101 Thinking",
"limit": {
"context": 200000,
"output": 64000
},
"reasoning": true,
"options": {
"thinking": {
"type": "enabled",
"budgetTokens": 10000
}
}
},
"gemini-2.5-flash": {
"name": "Gemini 2.5 Flash",
"limit": {
"context": 1048576,
"output": 65536
}
}
}
}
}
}
几个要注意的点:
- 模型名称:必须和 CLIProxyAPI 配置里的映射对应,否则调用会失败
- context/output 限制:根据实际模型能力设置,Claude 是 200k,Gemini 能到 1M
- thinking 模式:Opus 支持思维链,需要单独配置
budgetTokens
验证与测试
配置完成后,先确认 CLIProxyAPI 服务正常运行:
# 查看服务日志
tail -f CLIProxyAPI/logs/proxy.log
# 测试 API 连通性
curl http://127.0.0.1:8317/v1/models
如果返回模型列表,说明代理服务正常。然后测试 OpenCode:
# 启动 OpenCode
opencode
# 测试模型调用
opencode chat "测试连接"
如果能正常返回,说明整个链路打通了。
常见问题
连接失败
先检查 CLIProxyAPI 服务有没有起来,用 ps aux | grep CLIProxyAPI 看一下。如果端口 8317 被占用,换个端口,记得同步改 OpenCode 配置。
模型调用报错
多半是模型名称没对上。检查 opencode.json 里的模型名和 CLIProxyAPI 配置里的映射是否一致。另外确认你的 antigravity 账号有没有对应模型的权限。
API Key 无效
重新生成 CLIProxyAPI 的本地 Key,更新到 opencode.json 的 apiKey 字段。注意格式是 quotio-local- 开头。
优势与局限
优势
- 所有请求走本地代理,方便调试和监控流量
- 可以自定义模型映射,灵活切换不同 API 源
- 同时支持 Claude、Gemini 等多个模型
局限
- 需要保持 CLIProxyAPI 服务一直运行,关机就断了
- 要维护两份配置文件(CLIProxyAPI + OpenCode),改起来麻烦
- 多一层本地转发,响应时间会慢一点点
参考资源
- CLIProxyAPI GitHub – 本地代理工具源码
- OpenCode 官方文档 – OpenCode 配置说明
- Antigravity API 文档 – Antigravity API 接口文档
注意:文中的 API Key 已脱敏,实际使用时替换成你自己的凭证。





AI周刊:大模型、智能体与产业动态追踪
程序员数学扫盲课
冲浪推荐:AI工具与技术精选导航
Claude Code 全体系指南:AI 编程智能体实战
最新评论
开源的AI对话监控面板很实用,正好团队在找这类工具。准备试用一下。
折叠屏市场确实在升温,不过售罄也可能是备货策略。期待看到实际销量数据。
从磁盘I/O角度解释B树的设计动机,这个切入点很好。终于理解为什么数据库不用二叉树了。
IT术语转换确实是个痛点,之前用搜狗总是把技术词汇转成奇怪的词。智谱这个方向值得期待。
这个工具结合LLM和搜索API的思路很有意思,正好解决了我在做知识管理时遇到的问题。请问有没有部署文档?
这个漏洞确实严重,我们团队上周刚遇到类似问题。建议补充一下如何检测现有项目是否受影响的方法。
从简单规则涌现复杂性这个思路很有意思,让我想起元胞自动机。不过数字物理学在学术界争议还挺大的。
我也遇到了指令跟随变差的问题,特别是多轮对话时容易跑偏。不知道是模型退化还是负载优化导致的。