想用 OpenCode 這款開源 AI 編程助手,卻苦於官方 API 價格太貴或者網絡不穩定?API 中轉站是你的最佳解決方案。本文將手把手教你 3 步完成 OpenCode 接入 API易、OpenRouter 等中轉服務,讓你用更低的成本訪問 Claude、GPT-4、Gemini 等 75+ 主流 AI 模型。
核心價值: 讀完本文,你將學會配置 OpenCode 使用任意 OpenAI 兼容 API,實現模型自由切換和成本優化。

OpenCode 是什麼?爲什麼要接入 API 中轉站
OpenCode 是一款開源的終端 AI 編程助手,被稱爲 Claude Code 的開源替代品。它基於 Go 語言開發,提供精美的 TUI 界面、多會話管理、LSP 集成等專業功能。
OpenCode 核心特性一覽
| 特性 | 說明 | 價值 |
|---|---|---|
| 75+ 模型支持 | 支持 OpenAI、Claude、Gemini、Bedrock 等 | 不鎖定單一供應商 |
| 終端原生 | Bubble Tea 構建的精美 TUI | 開發者友好的操作體驗 |
| 開源免費 | 代碼完全開源,無訂閱費用 | 按 API 調用付費,成本可控 |
| LSP 集成 | 自動檢測語言服務器 | 代碼智能補全和診斷 |
| 多會話管理 | 並行運行多個 Agent | 複雜任務分解協作 |
| Vim 模式 | 內置 Vim 風格編輯器 | 終端用戶無縫切換 |
爲什麼要用 API 中轉站?
直接使用官方 API 可能面臨以下問題:
| 問題 | API 中轉站的解決方案 |
|---|---|
| 價格昂貴 | 中轉站提供更優惠的價格,適合個人開發者 |
| 網絡不穩定 | 中轉站優化了國內訪問線路 |
| 計費複雜 | 統一計費接口,多模型一站式管理 |
| 額度限制 | 中轉站可提供更靈活的配額 |
| 註冊門檻 | 無需海外手機號或信用卡 |
🚀 快速開始: 推薦使用 API易 apiyi.com 作爲中轉站,提供開箱即用的 OpenAI 兼容接口,註冊即送免費測試額度,5 分鐘完成 OpenCode 配置。
OpenCode 接入 API 中轉站核心要點
在開始配置前,先了解 OpenCode 的 API 接入原理:

配置架構說明
OpenCode 採用統一的配置管理體系,支持多層配置覆蓋:
| 配置層級 | 文件位置 | 優先級 | 適用場景 |
|---|---|---|---|
| 遠程配置 | .well-known/opencode |
最低 | 團隊統一配置 |
| 全局配置 | ~/.config/opencode/opencode.json |
中 | 個人默認設置 |
| 環境變量 | OPENCODE_CONFIG 指向的文件 |
中高 | 臨時覆蓋 |
| 項目配置 | 項目根目錄 opencode.json |
高 | 項目特定設置 |
| 內聯配置 | OPENCODE_CONFIG_CONTENT |
最高 | CI/CD 場景 |
API 中轉站接入原理
OpenCode 通過 @ai-sdk/openai-compatible 適配器支持任何 OpenAI 兼容 API。關鍵配置項:
- baseURL: API 中轉站的接口地址
- apiKey: 中轉站提供的 API 密鑰
- models: 可用模型列表
這意味着只要中轉站提供標準的 /v1/chat/completions 接口,就能直接接入 OpenCode。
OpenCode 快速上手配置
第一步: 安裝 OpenCode
OpenCode 提供多種安裝方式,選擇最適合你的:
一鍵安裝腳本 (推薦):
curl -fsSL https://opencode.ai/install | bash
Homebrew 安裝 (macOS/Linux):
brew install opencode-ai/tap/opencode
npm 安裝:
npm i -g opencode-ai@latest
Go 安裝:
go install github.com/opencode-ai/opencode@latest
驗證安裝成功:
opencode --version
第二步: 配置 API 中轉站密鑰
OpenCode 支持兩種認證方式:
方式一: 使用 /connect 命令 (推薦)
啓動 OpenCode 後,輸入 /connect 命令:
opencode
# 在 TUI 界面中輸入
/connect
選擇 Other 添加自定義 Provider,輸入你的 API 密鑰。密鑰會安全存儲在 ~/.local/share/opencode/auth.json。
方式二: 環境變量配置
在 ~/.zshrc 或 ~/.bashrc 中添加:
# API易 中轉站配置
export OPENAI_API_KEY="sk-your-apiyi-key"
export OPENAI_BASE_URL="https://api.apiyi.com/v1"
使配置生效:
source ~/.zshrc
第三步: 創建 opencode.json 配置文件
這是最關鍵的一步,創建配置文件來指定 API 中轉站:
全局配置 (適用於所有項目):
mkdir -p ~/.config/opencode
touch ~/.config/opencode/opencode.json
項目配置 (僅當前項目生效):
touch opencode.json # 在項目根目錄
極簡配置示例
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"apiyi": {
"npm": "@ai-sdk/openai-compatible",
"name": "API易",
"options": {
"baseURL": "https://api.apiyi.com/v1",
"apiKey": "{env:OPENAI_API_KEY}"
},
"models": {
"claude-sonnet-4-20250514": {
"name": "Claude Sonnet 4"
},
"gpt-4o": {
"name": "GPT-4o"
}
}
}
},
"model": "apiyi/claude-sonnet-4-20250514"
}
配置說明:
{env:OPENAI_API_KEY}語法會自動讀取環境變量,避免在配置文件中硬編碼密鑰。通過 API易 apiyi.com 獲取的 API Key 兼容 OpenAI 格式,可直接使用。
查看完整配置示例 (含多 Provider)
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"apiyi": {
"npm": "@ai-sdk/openai-compatible",
"name": "API易 (推薦)",
"options": {
"baseURL": "https://api.apiyi.com/v1",
"apiKey": "{env:APIYI_API_KEY}"
},
"models": {
"claude-sonnet-4-20250514": {
"name": "Claude Sonnet 4",
"limit": {
"context": 200000,
"output": 65536
}
},
"claude-opus-4-20250514": {
"name": "Claude Opus 4",
"limit": {
"context": 200000,
"output": 32000
}
},
"gpt-4o": {
"name": "GPT-4o",
"limit": {
"context": 128000,
"output": 16384
}
},
"gpt-4o-mini": {
"name": "GPT-4o Mini",
"limit": {
"context": 128000,
"output": 16384
}
},
"gemini-2.5-pro": {
"name": "Gemini 2.5 Pro",
"limit": {
"context": 1000000,
"output": 65536
}
},
"deepseek-chat": {
"name": "DeepSeek V3",
"limit": {
"context": 64000,
"output": 8192
}
}
}
},
"openrouter": {
"npm": "@ai-sdk/openai-compatible",
"name": "OpenRouter",
"options": {
"baseURL": "https://openrouter.ai/api/v1",
"apiKey": "{env:OPENROUTER_API_KEY}",
"headers": {
"HTTP-Referer": "https://your-site.com",
"X-Title": "OpenCode Client"
}
},
"models": {
"anthropic/claude-sonnet-4": {
"name": "Claude Sonnet 4 (OpenRouter)"
},
"openai/gpt-4o": {
"name": "GPT-4o (OpenRouter)"
}
}
}
},
"model": "apiyi/claude-sonnet-4-20250514",
"small_model": "apiyi/gpt-4o-mini",
"agent": {
"coder": {
"model": "apiyi/claude-sonnet-4-20250514",
"maxTokens": 8000
},
"planner": {
"model": "apiyi/gpt-4o",
"maxTokens": 4000
}
},
"tools": {
"write": true,
"bash": true,
"glob": true,
"grep": true
}
}
OpenCode 支持的 API 中轉站對比

主流 API 中轉站配置參數
| 中轉站 | baseURL | 特點 | 推薦場景 |
|---|---|---|---|
| API易 | https://api.apiyi.com/v1 |
中文支持好,價格優惠,響應快 | 國內開發者首選 |
| OpenRouter | https://openrouter.ai/api/v1 |
模型最全,400+ 模型 | 需要多模型切換 |
| Together AI | https://api.together.xyz/v1 |
開源模型豐富 | Llama、Mistral 用戶 |
| Groq | https://api.groq.com/openai/v1 |
速度極快,免費額度 | 對延遲敏感的場景 |
API易配置詳解
API易 是專爲國內開發者優化的 AI API 中轉平臺,提供:
- 統一的 OpenAI 兼容接口
- 支持 Claude、GPT、Gemini、DeepSeek 等主流模型
- 按量計費,無月費
- 免費測試額度
- 中文客服支持
{
"provider": {
"apiyi": {
"npm": "@ai-sdk/openai-compatible",
"name": "API易",
"options": {
"baseURL": "https://api.apiyi.com/v1"
},
"models": {
"claude-sonnet-4-20250514": { "name": "Claude Sonnet 4" },
"claude-opus-4-20250514": { "name": "Claude Opus 4" },
"gpt-4o": { "name": "GPT-4o" },
"gpt-4o-mini": { "name": "GPT-4o Mini" },
"gemini-2.5-pro": { "name": "Gemini 2.5 Pro" },
"deepseek-chat": { "name": "DeepSeek V3" }
}
}
}
}
OpenRouter 配置詳解
OpenRouter 聚合了 400+ AI 模型,適合需要頻繁切換模型的場景:
{
"provider": {
"openrouter": {
"npm": "@ai-sdk/openai-compatible",
"name": "OpenRouter",
"options": {
"baseURL": "https://openrouter.ai/api/v1",
"apiKey": "{env:OPENROUTER_API_KEY}",
"headers": {
"HTTP-Referer": "https://your-app.com",
"X-Title": "My OpenCode App"
}
},
"models": {
"anthropic/claude-sonnet-4": {
"name": "Claude Sonnet 4"
},
"google/gemini-2.5-pro": {
"name": "Gemini 2.5 Pro"
},
"meta-llama/llama-3.1-405b": {
"name": "Llama 3.1 405B"
}
}
}
}
}
💡 選擇建議: 如果你主要使用 Claude 和 GPT 系列模型,推薦 API易 apiyi.com,價格更優惠且響應速度快。如果需要使用開源模型或小衆模型,OpenRouter 覆蓋更全。
OpenCode 進階配置技巧
Agent 模型分配策略
OpenCode 內置 Coder 和 Planner 兩個 Agent,可以爲它們分配不同模型:
{
"agent": {
"coder": {
"model": "apiyi/claude-sonnet-4-20250514",
"maxTokens": 8000,
"description": "主要編碼任務,使用強模型"
},
"planner": {
"model": "apiyi/gpt-4o-mini",
"maxTokens": 4000,
"description": "規劃分析,使用輕量模型節省成本"
}
}
}
多 Provider 切換
配置多個 Provider 後,可以在 OpenCode 中使用 /models 命令隨時切換:
# 啓動 OpenCode
opencode
# 在 TUI 中切換模型
/models
# 選擇 apiyi/claude-sonnet-4-20250514 或其他模型
環境變量最佳實踐
推薦在 .env 文件中管理 API 密鑰:
# .env 文件
APIYI_API_KEY=sk-your-apiyi-key
OPENROUTER_API_KEY=sk-or-your-openrouter-key
然後在 opencode.json 中引用:
{
"provider": {
"apiyi": {
"options": {
"apiKey": "{env:APIYI_API_KEY}"
}
}
}
}
Token 限制配置
爲模型指定上下文和輸出限制,避免超限錯誤:
{
"models": {
"claude-sonnet-4-20250514": {
"name": "Claude Sonnet 4",
"limit": {
"context": 200000,
"output": 65536
}
}
}
}
OpenCode 常見問題排查
在配置過程中可能遇到的問題及解決方案:
Q1: 配置後提示 “Route /api/messages not found” 錯誤?
這通常是 baseURL 配置不正確導致的。檢查以下幾點:
- 確保 baseURL 以
/v1結尾,而不是/v1/chat/completions - 確認中轉站支持標準 OpenAI 接口格式
- 驗證 API 密鑰是否有效
正確格式:
"baseURL": "https://api.apiyi.com/v1"
錯誤格式:
"baseURL": "https://api.apiyi.com/v1/chat/completions"
通過 API易 apiyi.com 獲取的接口地址已經過驗證,可直接使用。
Q2: 提示 “ProviderModelNotFoundError” 找不到模型?
這是因爲配置的模型 ID 與 Provider 中定義的不匹配。解決方法:
- 檢查
model字段格式:provider-id/model-id - 確保
models對象中定義了該模型
示例:
{
"provider": {
"apiyi": {
"models": {
"claude-sonnet-4-20250514": { "name": "Claude Sonnet 4" }
}
}
},
"model": "apiyi/claude-sonnet-4-20250514"
}
Q3: 如何驗證配置是否成功?
使用以下命令檢查:
# 查看已配置的認證信息
opencode auth list
# 查看可用模型
opencode
/models
# 測試簡單對話
opencode -p "Hello, 請用中文回覆"
如果返回正常響應,說明配置成功。通過 API易 apiyi.com 平臺可以在控制檯查看 API 調用記錄,便於排查問題。
Q4: 配置文件放在哪裏最合適?
根據使用場景選擇:
| 場景 | 推薦位置 | 說明 |
|---|---|---|
| 個人全局默認 | ~/.config/opencode/opencode.json |
所有項目共享 |
| 特定項目配置 | 項目根目錄 opencode.json |
可提交到 Git (不含密鑰) |
| CI/CD 環境 | 環境變量 OPENCODE_CONFIG_CONTENT |
動態注入配置 |
Q5: 如何在 OpenCode 中切換不同的 API 中轉站?
配置多個 Provider 後,使用 /models 命令切換:
opencode
/models
# 選擇不同 Provider 下的模型即可切換
也可以在配置中設置默認模型:
{
"model": "apiyi/claude-sonnet-4-20250514"
}
OpenCode vs Claude Code: API 接入方式對比
| 對比維度 | OpenCode | Claude Code |
|---|---|---|
| 模型支持 | 75+ 模型,自由配置 | 僅 Claude 系列 |
| API 中轉站 | 支持任意 OpenAI 兼容接口 | 不支持自定義接口 |
| 價格 | 免費軟件 + API 按量付費 | $17-100/月訂閱 + API |
| 配置方式 | JSON 配置文件 + 環境變量 | 內置配置,不可修改 |
| 開源程度 | 完全開源 | 閉源 |
| 性能表現 | 依賴所選模型 | Claude 原生優化,SWE-bench 80.9% |
🎯 技術建議: OpenCode 的最大優勢是模型靈活性。配合 API易 apiyi.com 中轉站,你可以用相同的配置切換 Claude、GPT-4、Gemini 等多種模型,找到性價比最優的方案。
參考資料
以下是配置 OpenCode 時可能用到的參考資料:
| 資料 | 鏈接 | 說明 |
|---|---|---|
| OpenCode 官方文檔 | opencode.ai/docs |
完整配置參考 |
| OpenCode GitHub 倉庫 | github.com/opencode-ai/opencode |
源碼和 Issue |
| OpenCode Provider 配置 | opencode.ai/docs/providers |
Provider 詳細說明 |
| OpenRouter 文檔 | openrouter.ai/docs |
OpenRouter 接入指南 |
總結
通過本文的 3 步配置方法,你已經掌握了:
- 安裝 OpenCode: 使用一鍵腳本或包管理器快速安裝
- 配置 API 密鑰: 通過
/connect或環境變量設置認證 - 創建配置文件: 編寫
opencode.json指定中轉站和模型
OpenCode 作爲開源的終端 AI 編程助手,配合 API 中轉站使用,可以獲得媲美 Claude Code 的體驗,同時保持成本可控和模型靈活性。
推薦通過 API易 apiyi.com 快速獲取 API 密鑰並開始測試。平臺提供免費額度,支持 Claude、GPT、Gemini 等主流模型,統一的接口格式讓配置更簡單。
📝 作者: APIYI 技術團隊 | API易 apiyi.com – 讓 AI API 調用更簡單
