跳转到内容
控制台

编程 Agent

OpenCode

开源终端 AI Agent 接入 VisionCoder:项目级 opencode.json 多模型切换

OpenCode 是开源的终端 AI Agent,支持自定义 provider,可以同时挂载多个模型按需切换。VisionCoder 的 OpenAI 兼容端点直接被 OpenCode 当成 provider 使用 —— 一份 opencode.json,OpenAI / Anthropic / 开源模型随便挑

  • API Key 管理 创建 API Key
  • 已装 Node.js 18+
  • Windows 用户:推荐在 WSL 里跑 OpenCode,原生 Windows 偶有 IO 问题

官方脚本(推荐):

Terminal window
curl -fsSL https://opencode.ai/install | bash

或者用 npm:

Terminal window
npm install -g opencode-ai

检查:

Terminal window
opencode --version

OpenCode 不读环境变量,直接读项目根目录的 opencode.json。这意味着每个项目可以配不同的模型组合

{
"$schema": "https://opencode.ai/config.json",
"provider": {
"visioncoder": {
"npm": "@ai-sdk/openai-compatible",
"name": "VisionCoder",
"options": {
"baseURL": "https://coder.api.visioncoder.cn/v1",
"apiKey": "YOUR_API_KEY"
},
"models": {
"gpt-5.4": { "name": "GPT-5.4(通用)" },
"gpt-5.5": { "name": "GPT-5.5(最强)" },
"gpt-5.3-codex-spark": { "name": "GPT-5.3 Codex Spark(长会话)" },
"claude-sonnet-5": { "name": "Claude Sonnet 5" },
"claude-opus-5": { "name": "Claude Opus 5" },
"deepseek-v4-pro": { "name": "DeepSeek v4 Pro" },
"qwen3.6-35b-a3b": { "name": "Qwen 3.6" }
}
}
},
"model": "visioncoder/gpt-5.4"
}

切换默认模型,只改最后一行 model 的值即可:

模型 适合场景
visioncoder/gpt-5.4 日常代码任务
visioncoder/gpt-5.5 复杂推理 / 大重构
visioncoder/gpt-5.3-codex-spark 长会话 / Codex 优化
visioncoder/claude-sonnet-5 偏好 Claude 风格,性价比高
visioncoder/claude-opus-5 Claude 最强推理

会话中也可以用 /model 命令实时切换。

在项目根目录:

Terminal window
touch opencode.json

然后用任意编辑器贴入上面配置。

Terminal window
opencode

进入后输入 /model,应该看到所有你在 opencode.json 里配的模型列表。选一个开聊。

不想让 Key 出现在 opencode.json 里?OpenCode 支持读环境变量:

{
"provider": {
"visioncoder": {
"npm": "@ai-sdk/openai-compatible",
"options": {
"baseURL": "https://coder.api.visioncoder.cn/v1",
"apiKey": "{env:VISIONCODER_API_KEY}"
}
}
}
}

export VISIONCODER_API_KEY="YOUR_API_KEY",配置文件可以放心 commit。

OpenCode 也支持类 OpenAI 的登录流程:

Terminal window
opencode auth login

但 VisionCoder 走的是 opencode.json 里的自定义 provider,不需要也不要用这个命令(会跳到 OpenCode 官方 OAuth)。

启动后只看到 1 个模型,配的其它模型不显示

opencode.jsonmodels 字段的 key 名拼错了,或者那个模型 ID 当前不在 VisionCoder 开放列表里。先 curl https://coder.api.visioncoder.cn/v1/models 确认 ID。

切换 Claude 模型后回答异常

OpenCode 通过 @ai-sdk/openai-compatible 调用,走的是 OpenAI Chat Completions 协议(/v1/chat/completions),不是 Anthropic 原生协议。VisionCoder 内部会做转换 —— Claude 模型可用,但少数 Anthropic 独有字段(如 system 数组结构)可能差异。如需 100% 原生体验,用 Claude Code

401 / 403
  • apiKey 是不是完整的 VisionCoder Key
  • baseURL 必须/v1 后缀
  • opencode.json 在不在你启动 opencode 的目录里

加群 & 客服

AI 技术交流群二维码
AI 技术交流群
专属客服二维码
专属客服