前言¶
DeepSeek Harness(DSH)通過插件擴展模型支持。OpenCode Go 和 Zen 模型通常需要特定的 provider 路由。本插件註冊 opencode-go(訂閱)和 opencode-zen(免費)路由,使 DSH 模型選擇器看起來像官方客戶端。
核心功能¶
- 註冊路由:註冊
opencode-go(訂閱)與opencode-zen(免費)兩個 provider 路由。 - 動態模型列表:實時拉取公開端點
https://opencode.ai/zen/go/v1/models,自動同步新增/下架模型;端點不可達時回退到內置快照。 - 零配置密鑰:自動從 DeepSeek Harness 自身發現訂閱 key,支持環境變量、憑證文件、key pool 三種方式。
- 錯誤原樣透出:將網關返回的原文(如 403 錯誤)顯示在 GUI 裏。
- 接口適配:實現新版 DSH 適配器接口(
prepareCall),兼容dsh-llm0.1.0-rc.6 ~ 0.1.1-rc.x。
安裝與啓用¶
在終端執行以下命令安裝插件:
dsh plugin --profile web add github:Yuanloss/dsh-opencode-go-sub
安裝完成後,重啓 dsh web。模型選擇器會出現兩個分組:OpenCode Go(訂閱) 與 OpenCode Zen(免費)。
密鑰配置¶
插件支持三種密鑰來源,優先級從高到低爲:環境變量 > ~/.dsh/.credentials.yaml > key pool。
推薦在 DSH 憑證界面輸入一次 API key。DSH 會將憑證寫入 ~/.dsh/.credentials.yaml,插件啓動時讀取該文件。若使用環境變量,需在重啓 dsh web 前設置 OPENCODE_GO_API_KEY。
若使用 key pool,需在 pool-config.json 的 pools.opencode-go 下配置 keys。
重要注意事項¶
- 避免手動添加同名 Provider:不要手動添加名爲
opencode-go的自定義提供商模型 provider。插件內部已註冊該路由,手動添加會觸發DUPLICATE_ADAPTER衝突。 - 檢查內置衝突:DSH 內置的 pi-ai 自帶
opencode-goprovider。若在 Models 設置頁啓用了它,會導致整批註冊失敗。請刪除同名 provider(或刪除settings.yaml中llm-pi-ai.providers.opencode-go整段)。 - 會話頭處理:網關要求每個推理請求帶穩定的 per-conversation id(
x-opencode-session頭)。插件會自動讀取 DSH agent-loop 注入的會話 id 併發送,無需手動配置。 - 圖片附件:當前版本暫不轉發圖片附件,image block 會被忽略。
- 區域限制:中國大陸區域訪問 GPT / Grok 系列會 403;DeepSeek 新版需在 opencode.ai 控制台開啓 “Enable models hosted in China”。
已知限制¶
- gpt-5.6-luna / grok-4.5:這兩個模型走 Responses API。在中國大陸區域會被上游拒絕(403),需要系統級 TUN 模式(瀏覽器級代理對 dsh web 進程無效)。
- qwen3.7-max:上游走 Anthropic
/messages方言。當前版本經 chat/completions 調用可能失敗,建議使用 qwen3.8-max 或 qwen3.7-plus。 - DSH 版本兼容:適配器契約已在
dsh-llm0.1.0-rc.6 ~ 0.1.1-rc.x 下兼容。
總結¶
該插件通過註冊特定路由和自動密鑰發現,解決了在 DSH 中管理 OpenCode Go 和 Zen 模型的繁瑣問題。安裝後,DSH 將具備與 opencode 官方客戶端一致的模型目錄展示能力,同時支持自動處理會話頭等細節。