opencode系列教程2:基本使用

4 阅读1分钟

OpenCode 配置文件支持 JSON 和 JSONC(带注释的 JSON)格式,不过还是建议直接用JSON

提供商

/connect 如果要指定自定义的,需要先自己写个opencode.json配置好,才能在connect的other里面选自己的供应商

vim  ~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "myprovider": {                  // 随便取个唯一英文id,后面 /connect 和选模型会用到
      "npm": "@ai-sdk/openai-compatible",
      "name": "我的自定义中转",       // 在界面显示的名字
      "options": {
        "baseURL": "https://api.your-domain.com/v1",   // 这里填你的 baseURL
        "apiKey": "{env:MY_API_KEY}"   // 推荐用环境变量,也可直接写 "sk-xxx"
        // 可选:加自定义 header
        // "headers": {
        //   "X-Custom-Header": "value"
        // }
      },
      "models": {                      // 强烈建议列出你能用的模型,否则可能无法选择
        "qwen-max": {
          "name": "通义千问-Max"
        },
        "deepseek-chat": {
          "name": "DeepSeek V3"
        },
        "claude-3-5-sonnet-20241022": {
          "name": "Claude 3.5 Sonnet (中转)"
        }
        // ... 继续加你支持的模型
      }
    }
  }
}

后续的授权也会保存在~/.local/share/opencode/auth.json 里面

使用

进入项目 /init

使用 Tab 键切换到计划模式

配置

所有地方的配置文件是合并在一起的,而不是替换

全局配置(~/.config/opencode/opencode.json)可以放用户偏好

项目中的 opencode.json放项目特定设置

.opencode 目录,放代理、命令、插件

模型

"model": "anthropic/claude-sonnet-4-5", #默认模型
"small_model": "anthropic/claude-haiku-4-5" #轻量级任务配置单独的模型

执行 /models 命令选择你想要的模型。

代理

可以通过 agent 选项为特定任务配置专用代理,是配置一个agent,不是切换agent

还可以使用 ~/.config/opencode/agents/ 或 .opencode/agents/ 中的 Markdown 文件定义agent

自定义命令

可以通过 command 选项为重复任务配置自定义命令

还可以使用 ~/.config/opencode/commands/ 或 .opencode/commands/ 中的 Markdown 文件定义命令