前言:為什麼我又換了一個 AI 編碼工具?
這幾年 AI 編碼工具換了一輪又一輪,每套工具各自為政:模型切換、MCP 設定、專案 Prompt 管理散在不同地方,換一台電腦就要重新設定一次。我想要的其實很單純:一個開源、模型中立、設定檔可以跟著 Repo 走的 CLI/桌面版代理,能同時接雲端免費模型、付費模型、地端 Ollama,再掛上 MCP 與專案級 Skill。
OpenCode 剛好就是這樣的工具。同一份 opencode.json,在公司、家裡桌機、甚至內網環境都能用,成本可控、隱私可管,團隊新人拉下 Repo 執行 opencode 就能上手。這篇把我目前的設定、踩過的坑和建議起手式一次整理,給還在猶豫的工程師參考。
核心優勢:一個工具吃遍所有模型與生態
OpenCode 最大的賣點是「聚合器」定位,不綁單一模型商,四個支柱一次到位:
- 模型聚合:目前有 13 個左右 input/output 都是 0.30/2/$10`(每 1M tokens)。
- 地端模型:
opencode.json直接指向內網的 Ollama,依場景挑模型:qwen3-vl:8b看圖、OCR,qwen3-coder:30b日常 coding,MoE 架構的qwen3.6-35b-a3b只啟用 3B 參數,速度快。 - MCP 原生支援:Context7、瀏覽器三件組、GitHub 都能直接寫進設定檔,不用另外包一層。
- Skill 機制:技能放在專案的
.opencode/skills/底下跟著 Repo 走,除錯流程、TDD 習慣、React 最佳實踐全團隊一致,代理變成「懂專案規矩」的隊友。
實戰設定:從安裝到跑起第一個 Task
安裝與啟動
最簡單的是官方安裝腳本,或用 npm 全域安裝:
curl -fsSL https://opencode.ai/install | bash
# 或
npm install -g opencode-ai
也可以直接下載桌面版。終端機執行 opencode 進入 TUI,輸入 /models 確認模型清單有正常載入。
雲端免費模型
我平常先用 deepseek-v4.1-flash-free 跑一般 coding 任務,回應速度不錯,很適合原型開發和副專案。但有幾點要先知道:
- 限時免費:隨時可能下架,別把它當成永久方案。
- 有限速但沒公布數字:尖峰時段會感覺得到變慢。
- 只能在 OpenCode 裡用:免費 chat 模型不能拿 API key 餵給別的 client,需要登入 OpenCode Console 或設定
OPENCODE_API_KEY。 - 注意隱私:NVIDIA 系列明講不要放機密資料;DeepSeek、GLM、Beam 則是零保留。
接地端 Ollama 完整步驟
這是我花最多時間調的地方,坑主要在 context 長度和跨主機連線。
1. 伺服器端啟動參數(一定要加):
# 把 context 拉到 32K,並開放其他主機連線
OLLAMA_CONTEXT_LENGTH=32768 \
OLLAMA_HOST=0.0.0.0:11434 \
ollama serve
💡 關鍵提醒:Ollama 預設 context 常常只有 4K~8K,模型讀到一半就「突然失憶」,工具呼叫也容易失敗。官方文件也建議遇到 tool call 不正常時先把 context 拉到 16K~32K。跨主機連線記得開防火牆的 11434 埠。
2. 客戶端 opencode.json:
Ollama 走 OpenAI 相容 API,所以 provider 要指定 @ai-sdk/openai-compatible,baseURL 記得帶 /v1:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama (內網)",
"options": {
"baseURL": "http://192.168.1.100:11434/v1"
},
"models": {
"qwen3-coder:30b": { "name": "Qwen3 Coder 30B" },
"qwen3-vl:8b": { "name": "Qwen3 VL 8B" },
"qwen3.6-35b-a3b": { "name": "Qwen3.6 35B A3B (MoE)" }
}
}
},
"model": "ollama/qwen3-coder:30b"
}
192.168.1.100 換成你自己 Ollama 主機的 IP;同一台機器就用 localhost。
3. 驗證: 重新啟動 OpenCode,/models 應該會出現地端模型,選一個丟個小任務測看看就知道通不通。
地端模型怎麼挑
| 模型 | 大小 | 適合場景 |
|---|---|---|
qwen3-vl:8b | 6.2 GB | 看圖、OCR,16 GB RAM 就能跑 |
qwen3-coder:30b | 18.6 GB | 日常 coding,建議 32 GB RAM |
qwen3.6-35b-a3b | 22.1 GB | MoE 只啟用 3B,速度快 |
qwen3.5:35b | 22 GB | 比較複雜的任務 |
MCP 與 Skill:把代理變成「懂我專案」的隊友
MCP 怎麼裝
MCP 寫在 opencode.json 的 mcp 區塊,type: "local" 是在本機啟動指令,type: "remote" 是連遠端網址。不想手寫的話,終端機執行 opencode mcp add 會一步步引導你設定。
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp",
"enabled": true
},
"playwright": {
"type": "local",
"command": ["npx", "-y", "@playwright/mcp@latest"],
"enabled": true
},
"chrome-devtools": {
"type": "local",
"command": ["npx", "-y", "chrome-devtools-mcp@latest"],
"enabled": true
}
}
}
三個瀏覽器 MCP 各做各的事
我裝了三個瀏覽器相關的 MCP,一開始常搞混,後來抓到分工就很順:
| 情境 | 用哪個 | 原因 |
|---|---|---|
| 要登入的頁面(後台、信箱、公司系統) | browse(操作已登入的 Chrome) | 直接沿用你瀏覽器裡的登入狀態 |
| 寫 E2E 測試、重現 bug | playwright | 乾淨的瀏覽器環境,步驟可以重播 |
| 查 Console 錯誤、Network、效能、記憶體 | chrome-devtools | 拿得到 DevTools 層級的資訊 |
一句話記:要登入用 browse、寫測試用 playwright、查錯誤用 chrome-devtools。
Context7:查官方文件不再瞎掰
裝了 Context7 之後,代理問到 Next.js、Prisma、Tailwind 這類函式庫的用法時,會先去拉最新官方文件,不會憑印象亂寫參數。版本更新快的框架特別有感。
GitHub MCP:要 Token
GitHub MCP 可以直接操作 repo、issue、PR、Actions,但要先設定 GITHUB_PERSONAL_ACCESS_TOKEN。我第一次裝完發現工具數是 0,原因就是 token 沒設。
Skill:把團隊做法寫成檔案
Skill 是一個資料夾配一個 SKILL.md,放在專案的 .opencode/skills/<名稱>/SKILL.md,跟著 Repo 版控。OpenCode 也會讀 .claude/skills/,原本給 Claude Code 寫的技能可以直接共用。例如建立 .opencode/skills/debug/SKILL.md:
---
name: debug
description: 團隊標準除錯流程,遇到 bug 時使用
---
# 除錯技能
遇到 Bug 時,請依照以下步驟:
1. **先看 Log**:收集 Console、Server Log、錯誤堆疊。
2. **再推測**:根據錯誤訊息列出 3 個可能原因,標註信心度。
3. **再改 Code**:針對最有可能的原因做最小範圍修正,並寫測試驗證。
4. **複盤**:在 PR 描述記錄根因與修正邏輯。
代理碰到 bug 時就會照這套流程走,不會一上來就亂改程式。同樣的方式可以建 TDD、React 最佳實踐、測試撰寫等技能。
坑與限制:免費不代表沒有代價
- 免費模型隨時可能下架:重要工作流不要只綁一個免費模型,地端或付費模型要當備援。
- Ollama context 陷阱:預設 4K~8K 不夠用,一定要設
OLLAMA_CONTEXT_LENGTH=32768;跨主機記得OLLAMA_HOST=0.0.0.0:11434。 - 地端吃硬體:30B 等級的模型建議 32 GB RAM 起跳;MoE 模型雖然快,複雜重構還是付費模型比較穩。
- 隱私邊界:機密程式碼不要送到明講不保證隱私的免費模型,這種任務就交給地端模型。
結論:適合誰?我的建議起手式
適合
- 想省訂閱費、需要內網或離線開發的工程師
- 希望設定檔進版控、「設定即文件」的團隊
- 喜歡用 MCP、Skill 打造自動化流程的人
不適合
- 不想碰 JSON 設定、想要全託管介面的人
- 已經深度綁定其他 AI 編碼工具、短期沒打算換的團隊
建議起手式
- 先用免費模型:安裝後
/models挑deepseek-v4.1-flash-free之類的免費模型,先跑幾個日常任務感受一下。 - 接地端 Ollama:照上面的
provider設定加進opencode.json,記得把 context 拉到 32K。 - 裝 MCP 基礎三件組:Context7、playwright、chrome-devtools。
- 寫第一個 Skill:從團隊最常重複說明的流程開始,例如除錯或 code review。
如果你也在找一個可攜帶、可擴充、不綁廠商的 AI 編碼夥伴,OpenCode 很值得試試看。



























留言