跳到正文
← 文档

OpenCode 接入指南

1. 适用版本与验证日期

最近一次用版本 2.1.3 于 2026-10-26 实测。

2. 前置条件

需要账号、API key 和正余额。没有余额时请求返回 HTTP 402(insufficient_quota)。

3. 配置

~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "tokenwave": {
      "npm": "@ai-sdk/anthropic",
      "name": "TokenWave",
      "options": {
        "baseURL": "https://api.tokenwave.dev/v1",
        "apiKey": "{env:ATR_API_KEY}"
      },
      "models": {
        "claude-sonnet-5-5": {
          "name": "claude-sonnet-5-5",
          "limit": {
            "context": 1000000,
            "output": 128000
          }
        }
      }
    }
  }
}
~/.zshrc
export ATR_API_KEY=sk-atr-YOUR_KEY
~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "tokenwave": {
      "npm": "@ai-sdk/anthropic",
      "name": "TokenWave",
      "options": {
        "baseURL": "https://api.tokenwave.dev/v1",
        "apiKey": "{env:ATR_API_KEY}"
      },
      "models": {
        "claude-sonnet-5-5": {
          "name": "claude-sonnet-5-5",
          "limit": {
            "context": 1000000,
            "output": 128000
          }
        }
      }
    }
  }
}
~/.bashrc
export ATR_API_KEY=sk-atr-YOUR_KEY
%USERPROFILE%\.config\opencode\opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "tokenwave": {
      "npm": "@ai-sdk/anthropic",
      "name": "TokenWave",
      "options": {
        "baseURL": "https://api.tokenwave.dev/v1",
        "apiKey": "{env:ATR_API_KEY}"
      },
      "models": {
        "claude-sonnet-5-5": {
          "name": "claude-sonnet-5-5",
          "limit": {
            "context": 1000000,
            "output": 128000
          }
        }
      }
    }
  }
}
setx ATR_API_KEY "sk-atr-YOUR_KEY"

4. 选模型

这些模型能用于 OpenCode。上面的示例使用你在这里选的模型。

查看能用于 OpenCode 的模型

5. 自检

运行 opencode,打开模型选择器(/models),选 TokenWave 提供方下的模型。

6. 发第一条提示

发送这句提示:“Reply with the single word ready.”然后打开请求记录页:一分钟内会看到这条请求,含模型、token 数和费用。

打开请求记录

7. 已知限制

带 Messages 接口的模型用 Anthropic 包并保留提示缓存,其余用 OpenAI 兼容包。上下文与输出上限按目录填写。

8. 排错

症状原因修复
401 Unauthorizedkey 填错、已吊销,或带了多余空格。到 API keys 页重新复制完整的 key,并确认它是有效状态。
403 Forbidden这个 key 不能用该模型,或账户受限。到 API keys 页检查 key 允许的模型,或换一个 key。
404 Not Found基础地址不对:/v1 重复或缺失。原样使用示例里的地址。Claude Code 不带 /v1,其他工具带 /v1。
model not found模型 ID 写错,或你的 key 不能用它。从目录复制 ID,或用 GET /v1/models 查看 key 可用的模型。
400 Extra inputs are not permitted工具发了所选线路不接受的字段,多见于经转换的接口。选一个提供该工具原生接口的模型(见模型页的卡片),或升级工具。
返回 HTML 页面或 “Attention Required”,不是 JSON网关前面的网页防火墙拦截了请求体。重试一次。反复出现时,带上时间和请求 ID 联系支持。
我传的某个参数好像没有生效网关只转发该接口已知支持的字段,其余字段会被丢弃(不会报错)。查看响应头 x-atr-ignored-fields:它列出了没有被转发的顶层字段。去掉这些字段,确实需要时联系支持。

9. 还原

从 opencode.json 删除 tokenwave 提供方,并移除 ATR_API_KEY。