在 opencode 中使用 CLIProxyAPI 的配置教程,享受模型自由。(首发、含推荐配置)
OpenCode 使用 CLIProxyAPI 作为模型提供商的步骤
写在前面:不要质疑我的某些操作,虽然繁琐,但自有深意。例如为什么我要将 CPA 的提供商分为 4 个,以及为什么要这样配置常用模型。如果存在意见不合,那就是你对。
opencode 作为开源的终端代理,配合 ohmyopencode 使用,是目前十分推荐且前沿的玩法,核心是异步子代理协作(也就是十分烧钱),虽然官方提供了免费的 minimax2.1 和其他几个模型,但使用高级子代理完成前端设计、审查时,仍然需要用高级模型,为此特意写了这个教程,供佬们参考。
难点:opencode 将 key 和 Provider 配置分离储存,且需要自行选择对应的 sdk,避免格式问题,以下配置中已包含推荐用法。
1. 绑定 API 密钥
在 OpenCode 终端执行以下操作,为四个自定义 ID 注册凭据:
- 终端执行命令:
opencode auth login注意不是在 opencode 里执行 - 选择 Other(这里不需要手动滚动,很累,直接输入 other,会自动列出)
- 依次创建以下 ID 并粘贴 API Key:
cpacpa-oaicpa-claudecpa-gemini
2. 修改配置文件
编辑全局的 opencode.json( macOS / Linux: ~/.config/opencode/ Windows: Users\你的用户名\ .config\opencode),将以下内容整合进 provider 字段,我给出的仅供参考,不会就直接复制,删掉自己不要的模型即可。所有模型已开启 thinking 模式 (未来官方可能会弃用该字段) ,并按协议类型匹配了 SDK。
{ "$schema": "https://opencode.ai/config.json", "plugin": [ "oh-my-opencode"], "provider": { "cpa": { "npm": "@ai-sdk/openai-compatible", "name": "cpa", "options": { "baseURL": "https://<YOUR_ENDPOINT>/v1" }, "models": { "kimi-k2-thinking": { "name": "kimi-k2-thinking", "thinking": true }, "glm-4.7": { "name": "glm-4.7", "thinking": true } } }, "cpa-oai": { "npm": "@ai-sdk/openai", "name": "cpa-oai", "options": { "baseURL": "https://<YOUR_ENDPOINT>/v1" }, "models": { "gpt-5.2": { "name": "gpt-5.2", "thinking": true }, "gpt-5.1-codex-max": { "name": "gpt-5.1-codex-max", "thinking": true } } }, "cpa-claude": { "npm": "@ai-sdk/anthropic", "name": "cpa-claude", "options": { "baseURL": "https://<YOUR_ENDPOINT>/v1" }, "models": { "gemini-claude-opus-4-5-thinking": { "name": "gemini-claude-opus-4-5-thinking", "thinking": true }, "gemini-claude-sonnet-4-5-thinking": { "name": "gemini-claude-sonnet-4-5-thinking", "thinking": true }, "claude-opus-4-5-20251101": { "name": "claude-opus-4-5-20251101", "thinking": true }, "claude-sonnet-4-5-20250929": { "name": "claude-sonnet-4-5-20250929", "thinking": true }, "claude-haiku-4-5-20251001": { "name": "claude-haiku-4-5-20251001", "thinking": true }, "claude-kimi": { "name": "claude-kimi", "thinking": true } } }, "cpa-gemini": { "npm": "@ai-sdk/google", "name": "cpa-gemini", "options": { "baseURL": "https://<YOUR_ENDPOINT>/v1beta" }, "models": { "gemini-3-pro-preview": { "name": "gemini-3-pro-preview", "thinking": true }, "gemini-3-flash-preview": { "name": "gemini-3-flash-preview", "thinking": true }, "gemini-2.5-flash-lite": { "name": "gemini-2.5-flash-lite", "thinking": true } } } } } 3. 切换模型
- 重载:保存文件,OpenCode 自动生效。
- 选择:输入
/models弹出列表。 - 识别:根据
cpa-*前缀找到对应模型,回车确认。
(PS:模型回复为 3.7 模型,是因为 CPA 内置了一部分提示词的干扰,无影响)
额外补充
不建议通过 cpa 反代 codex 再接入 opencode,当前版本的 cpa 和 opencode 似乎有兼容性问题,会导致模型列表消失,需要重新登录凭证。(多个群友复现)
建议使用 ohmyopencode 直接 oauth 登录 codex
