Skip to content

OpenCode 部署

OpenCode 是 SST 团队的开源 AI 编码 agent——形态类似 Claude Code / Codex,但 provider 选型更开放:原生支持任意 OpenAI 协议兼容 endpoint,本站可以作为其中一个 provider 直接接入。

前置条件

1. 安装

bash
npm install -g opencode-ai@latest
bash
curl -fsSL https://opencode.ai/install | bash

验证:

bash
opencode --version

装好后启动会看到:

OpenCode 安装成功

2. 配置 provider 指向 why01

OpenCode 通过 opencode.json 配置 provider。三处任选一个放配置:

位置用途
./opencode.json(当前项目根)项目级,进入此目录用本配置
~/.config/opencode/opencode.json用户级,所有项目默认
$OPENCODE_CONFIG 指向的路径自定义

添加自定义供应商的界面参考(上游 ikuncode 截图,配置字段一致):

OpenCode 添加供应商界面

最小可用配置:

json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "why01": {
      "options": {
        "apiKey": "{env:OPENAI_API_KEY}",
        "baseURL": "https://s1.why01.top/v1"
      }
    }
  },
  "model": "why01/gpt-5-mini"
}

TIP

  • apiKey{env:VAR_NAME} 占位符引用环境变量,不要直接写明文 Key 进 opencode.json(容易被 git 跟踪泄露)
  • model 字段格式是 <provider 名>/<模型名>,模型名按 控制台模型页 实际可用名填

3. 设环境变量

bash
# 加到 ~/.zshrc 或 ~/.bashrc
export OPENAI_API_KEY=sk-你的why01-key
source ~/.zshrc
powershell
[Environment]::SetEnvironmentVariable("OPENAI_API_KEY", "sk-你的why01-key", "User")
# 重开终端生效

如果你已经按 一键配置脚本 设过,跳过这一步。

4. 启动

进入项目目录:

bash
cd ~/your-project
opencode

OpenCode 还提供 serve(HTTP API 模式)和 web(Web Dashboard 模式)子命令,按需选用。

5. 验证走 why01

启动后能在客户端里看到模型列表 = 配置成功的第一个信号:

OpenCode 模型列表验证

实际对话界面:

OpenCode 对话界面

跑完一次任务后到 why01 控制台 → 日志 查最近几分钟有没有对应模型的调用——有 = 接通。

同时配多个 provider

OpenCode 支持把官方 OpenAI / Anthropic / Google / why01 等同时放进 opencode.json,用 --provider 或运行时切换:

json
{
  "provider": {
    "why01": { "options": { "apiKey": "{env:OPENAI_API_KEY}", "baseURL": "https://s1.why01.top/v1" } },
    "anthropic-official": { "options": { "apiKey": "{env:ANTHROPIC_API_KEY}" } }
  },
  "model": "why01/gpt-5-mini"
}

顶层 model 字段决定默认;命令行可临时覆盖。

常见问题

启动报 401

  • 检查 OPENAI_API_KEY 真的设进去了:echo $OPENAI_API_KEY
  • opencode.jsonapiKey{env:OPENAI_API_KEY} 占位符,不是直接写 sk- 开头的字符串
  • Key 未禁用 / 未过期(控制台「令牌管理」

启动报 model not found

model 字段的模型名按 控制台模型页 实际可用名填。注意 <provider>/<model> 的两段格式不要漏 provider/ 前缀。

Tools / shell 等高级特性是否可用

OpenCode 支持工具调用和 shell 执行,本站作为 OpenAI 协议透传 endpoint,工具调用部分由上游模型决定能力——当前主流的 OpenAI 主力档 / Claude Sonnet 系列支持良好。

下一步