OpenCode

通过凭证存储与 OpenAI 兼容自定义 Provider,将 OpenCode 接入 CoffeeRouter。

接入前准备

  • 在 CoffeeRouter 控制台创建可用令牌,并记录令牌允许使用的模型 ID。
  • 本页使用 OpenAI Chat Completions 格式,基础地址为 https://www.coffeerouter.ai/v1
  • Windows 用户可以使用 npm、Chocolatey 或 Scoop 安装;OpenCode 官方更推荐在 WSL 中使用。

配置步骤

1. 安装 OpenCode

macOS 或 Linux 可以使用官方安装脚本:

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

也可以通过 npm、Bun 或 pnpm 安装:

npm install -g opencode-ai
bun install -g opencode-ai
pnpm install -g opencode-ai

安装完成后运行 opencode 进入终端界面。

2. 保存 CoffeeRouter 凭证

在 OpenCode 中输入:

/connect

滚动到服务商列表底部并选择 Other,然后依次填写:

配置项填写内容
Provider IDcoffeerouter
API Keysk-your-api-key

Provider ID 必须与下一步 opencode.json 中的键完全一致。/connect 只负责将凭证保存到 ~/.local/share/opencode/auth.json,不会自动配置 CoffeeRouter 地址或模型。

3. 配置 CoffeeRouter 服务商

如果希望所有项目都能使用,在 ~/.config/opencode/opencode.json 中添加配置;如果只想在当前项目使用,则在项目根目录创建 opencode.json。项目配置的优先级高于全局配置。

{
    "$schema": "https://opencode.ai/config.json",
    "provider": {
        "coffeerouter": {
            "npm": "@ai-sdk/openai-compatible",
            "name": "CoffeeRouter",
            "options": {
                "baseURL": "https://www.coffeerouter.ai/v1"
            },
            "models": {
                "your-model-id": {
                    "name": "Your Model"
                }
            }
        }
    }
}

your-model-id 替换为 CoffeeRouter 中显示的完整模型 ID。@ai-sdk/openai-compatible 使用 /v1/chat/completions;如果某个模型明确要求 /v1/responses,应改用 @ai-sdk/openai,不要混用两种 API 格式。

4. 选择 CoffeeRouter 模型

重新启动 OpenCode,在终端界面输入:

/models

选择 CoffeeRouter 下的 your-model-id。服务商 ID、凭证 ID 和配置中的 coffeerouter 必须保持一致。

验证接入

先检查凭证是否已保存:

opencode auth list

确认列表中存在 coffeerouter 后,启动 OpenCode,选择 CoffeeRouter 模型并发送一条测试请求。若模型能正常读取项目上下文并回复,即表示接入成功。

常见问题

为什么完成 /connect 后仍看不到 CoffeeRouter?

/connect 只保存凭证。还必须在全局或项目 opencode.json 中添加 provider.coffeerouter、基础地址和模型列表,然后重启 OpenCode。

为什么提示找不到凭证?

检查 /connect 时输入的 Provider ID 是否与配置中的 coffeerouter 完全一致,并运行 opencode auth list 确认凭证已经保存。

为什么 Base URL 要带 /v1?

@ai-sdk/openai-compatible 需要 OpenAI Compatible 基础地址,并在其下调用 Chat Completions。CoffeeRouter 对应地址是 https://www.coffeerouter.ai/v1

为什么模型没有出现在 /models 中?

检查 models 对象中的模型 ID、JSON 语法和配置文件位置。模型 ID 必须与 CoffeeRouter 令牌可用模型列表完全一致。

安全提示

请优先使用 /connect 保存凭证,不要手动把真实令牌写入可提交的项目配置。不要分享 auth.json、配置截图或日志;建议为 OpenCode 创建独立令牌,并设置模型、额度和 IP 限制。

官方资料