OpenCode 配置教程

官方入口:OpenCode 官网

更新于

适用范围:OpenCode v1 1.2.15;原生 Responses 提供商,v2 格式另查官方文档。

版本与验证:2026-09-28,macOS 26.3,/opt/homebrew/bin/opencode 1.2.15,gpt-6-sol / Responses 的单轮文本真实调用通过;工具未验证。

配置速查

配置项填写内容注意事项
提供商 IDapizt凭据记录和配置中的 ID 一致。
Base URLhttps://api.apizt.com/v1@ai-sdk/openai 的 Responses 基址。
模型 IDgpt-6-sol在自定义 models 中声明。
运行时包@ai-sdk/openai此主流程走 Responses;Chat 使用独立兼容包。

还没有 API Key?注册获取免费体验额度 · 已注册:进入控制台创建 API Key

为此工具单独创建令牌,并设置合理额度和模型权限。截图中的模型仅作示例,以账号当前可用模型为准;不要公开密钥或上传含密钥的配置文件。

第 1 步:记录正在运行的版本

command -v opencode
opencode --version

本机有两个安装:Homebrew 路径为 1.2.15,用户目录另有 1.3.13。下面只绑定 /opt/homebrew/bin/opencode 1.2.15;不能把公开包最新版当成实测版。

第 2 步:创建令牌并选择 Responses 提供商

进入 apizt 控制台 → API 令牌 → 新建,选择支持目标模型及协议的分组,设置额度后复制令牌。已有令牌可继续使用;模型目录和权限不是同一回事。查看创建分组令牌的图文步骤。

v1 合并到 ~/.config/opencode/opencode.json 或测试项目 opencode.json。本次用 @ai-sdk/openai 走 Responses,避免把 Chat 与 Responses 返回格式混用。

{
  "$schema": "https://opencode.ai/config.json",
  "model": "apizt/gpt-6-sol",
  "provider": {
    "apizt": {
      "npm": "@ai-sdk/openai",
      "name": "apizt",
      "options": {
        "baseURL": "https://api.apizt.com/v1",
        "apiKey": "{env:tokenba_API_KEY}"
      },
      "models": {
        "gpt-6-sol": {
          "name": "gpt-6-sol"
        }
      }
    }
  }
}

第 3 步:设置环境变量并核对模型

export tokenba_API_KEY="YOUR_tokenba_API_KEY"
/opt/homebrew/bin/opencode models apizt
/opt/homebrew/bin/opencode run --model apizt/gpt-6-sol "Reply exactly tokenba_OK. Do not use tools."

提供商 ID、models 内部 ID 与 apizt/gpt-6-sol 三处对应。只列出模型不能证明调用成功;用户配置、项目配置和 OPENCODE_CONFIG_CONTENT 会合并,检查覆盖来源。

第 4 步:按协议选择包与鉴权

协议v1 运行时包基址 / 最终路径
Responses@ai-sdk/openaihttps://api.apizt.com/v1 → /responses
Chat Completions@ai-sdk/openai-compatiblehttps://api.apizt.com/v1 → /chat/completions
Anthropic Messages@ai-sdk/anthropic按包要求设置 /v1 基址 → /messages

切换包时同步更换支持该协议的模型。v2 使用 providers/package/settings,必须按独立 v2 官方文档;不要把这些字段混进本机 v1 配置。

真实调用记录与验证范围

测试日期:2026-09-28(Asia/Shanghai);macOS 26.3。查看脱敏记录、软件版本和真实生成图片。一次文本成功仅证明本次请求,不代表其他模型、工具执行、多轮上下文或桌面版均已通过。

OpenCode 1.2.15
provider: apizt
npm: @ai-sdk/openai
model: gpt-6-sol
{"type":"text","part":{"text":"tokenba_OK"}}
{"type":"step_finish","part":{"reason":"stop"}}

本次真实运行使用测试目录,关闭工具权限;验证了文本生成与客户端响应解析。代码读写、MCP、长会话未验证。能列出模型但调用失败时的检查步骤。

接下来:核对模型 ID 与支持协议 · 计算费用 · 创建令牌。

历史界面参考

打开终端
历史界面参考,截图版本未核实;提供商、模型与协议按本文实测 v1 配置填写。
输入 /models
历史界面参考,截图版本未核实;提供商、模型与协议按本文实测 v1 配置填写。
选择模型
历史界面参考,截图版本未核实;提供商、模型与协议按本文实测 v1 配置填写。
开始使用
历史界面参考,截图版本未核实;提供商、模型与协议按本文实测 v1 配置填写。

连接失败时按这几步排查

Base URL 为 https://api.apizt.com/v1;@ai-sdk/openai-compatible 使用 Chat Completions,@ai-sdk/openai 的 Responses 用法需要服务端支持 Responses;不能仅改模型 ID 就切换协议。

  1. 先运行 opencode --version,按该版本 schema 检查配置。使用 provider/npm/options 的配置,不混入其他版本字段。
  2. 核对 provider ID、SDK 包、options.baseURL 和 models 键;当前模型引用使用 provider ID/模型 ID。
  3. 检查全局、项目配置及 OPENCODE_CONFIG_CONTENT 的覆盖关系,保留备份,仅修改实际生效的条目。

容易混淆的情况

  • provider package error 先查依赖和配置加载;请求尚未发出时更换 API Key 没有帮助。
  • AI_APICallError 是外层错误,需展开 HTTP 状态和正文;auth.json 存有凭据不等于当前 provider 正在使用它。

怎样确认修复成功

启动新会话先测试短文本,核对实际 endpoint 和 provider;随后在测试目录授权读取 README,分别记录两项结果。

记录所装客户端版本、模型 ID、请求时间、最终路径与脱敏状态。本节为配置核对指南,未新增客户端付费调用实测;保留原文已有验证记录的适用范围。

打开 OpenCode 交互排错并下载检查记录 · 官方配置参考

怎样确认配置已生效

  1. /models 可选到 apizt 模型。
  2. 短消息和代码读取分别验证成功。

接入失败时逐项检查

现象检查与处理
No model is available先声明 models,保存配置后重新进入 /models 选择。
API key 未找到/connect 中的提供商 ID 须与配置 key 相同。
配置报未知字段确认主版本,v1 使用 provider/npm/options,v2 使用 providers/package/settings。

资料与下一步

遇到问题时保留软件版本、请求时间、模型 ID、错误码和请求 ID,联系支持时先隐藏 API Key。