前言¶
DeepSeek Harness(DSH)允許通過插件擴展功能。如果你需要使用 OpenCode Go 訂閱模型,手動配置協議、上下文長度和最大輸出 token 會非常繁瑣。dsh-opencode-go 插件解決了這個問題,它自動處理會話請求頭、讀取網關模型目錄並顯示訂閱用量。
是什麼¶
dsh-opencode-go 是一個由 Duskriver 維護的插件,遵循 MIT 許可證。它讓 DSH 能夠完美調用 OpenCode Go 訂閱模型,支持流式回覆、工具調用和圖片輸入。插件會自動添加 OpenCode Go 所需的會話請求頭,無需用戶手動配置模型的基礎協議和參數。
核心功能¶
- 會話請求頭:每次請求包含 Harness User-Agent 和
x-opencode-session。同一會話保持穩定 ID,支持網關路由和提示詞緩存優化。 - 流式與歷史:支持流式輸出、工具調用及歷史回放。
- 圖片輸入:支持目錄中聲明圖片能力的模型。
- 模型容量覆蓋:可按模型覆蓋上下文窗口和最大輸出,空值繼承在線目錄。
- 逐模型開關:每個模型獨立控制會話中的顯示狀態,普通模型默認開啓,過時模型默認關閉。
- 網絡代理:支持 HTTP(S) 或 SOCKS5 代理,用於對話、模型目錄更新與訂閱用量查詢。
- 提示與緩存:插件不增加隱藏系統提示;會話 ID 用於網關路由。
安裝與啓用¶
插件支持 DSH 0.1.5-rc.1 及以上版本。安裝前請確保已安裝對應版本的 DSH。
在 DSH 界面安裝(推薦)¶
- 打開 DSH 的 插件 頁面,點擊右上角 添加插件。
- 輸入
dsh-opencode-go,點擊 安裝。 - 安裝成功後,點擊 立即啓用。
- 打開 設置 → OpenCode Go,填入 API Key 並保存。
命令行安裝¶
如果 DSH 沒有「添加插件」入口,可在終端執行:
dsh plugin --profile web add dsh-opencode-go
安裝後啓動或重啓 dsh web,然後重複上述設置步驟。
Headless 模式安裝¶
Headless 用戶需將 web 換成 headless:
dsh plugin --profile headless add dsh-opencode-go
配置與使用¶
安裝成功後,在 設置 → OpenCode Go 中進行配置。
網絡代理¶
打開 設置 → OpenCode Go → 高級設置 → 代理地址,填寫代理 URL。
支持格式包括:
- http://127.0.0.1:7890
- socks5://127.0.0.1:1080
- http://用戶名:密碼@主機:端口(需 URL 編碼)
代理連接由運行 DSH 的機器發起。代理設置保存後立即生效,無需重啓。
模型開關¶
在 設置 → OpenCode Go 中,每個模型右側的開關決定它是否出現在會話模型選擇器中。普通模型默認開啓,過時模型默認關閉。你可以單獨開啓任意過時模型,也可以關閉普通模型。
Headless 配置¶
Headless 用戶可將以下內容保存爲 headless.patch.yml,選擇默認模型:
- id: agent-default-model
config:
provider: dsh-opencode-go
model: deepseek-v4.1-flash
然後在 Bash 或 Zsh 中讀取 API Key 並運行任務:
export OPENCODE_API_KEY
dsh --profile headless --patch ./headless.patch.yml "你好"
賬號管理(多 Key)¶
Headless 或手動配置可在插件的 config 中填寫賬號:
apiKeyEnv: OPENCODE_API_KEY
accounts:
- id: primary
name: 主賬號
apiKeyEnv: OPENCODE_API_KEY
- id: backup
name: 備用賬號
apiKeyEnv: OPENCODE_GO_BACKUP_KEY
插件會從上到下依次嘗試賬號,支持自動回退。
圖片數量上限¶
在 設置 → OpenCode Go → 高級設置 中設置 maxImages。
默認不限制張數。設置後,單次請求攜帶的完整歷史(包括工具輸出中的圖片)將受此限制。例如設置爲 30 時,發送第 31 張圖片會卸載最舊的 1 張圖片內容。
注意事項¶
- 版本兼容:插件不再引入
@google/genai、protobufjs的安裝腳本,首次安裝無需特殊設置,舊版本安裝失敗後重試需先卸載再重試。 - Headless 代理:Headless 模式下,代理設置也可在插件的
config中填寫proxyURL。 - 調試:若遇到錯誤,可在啓動 DSH 的終端設置環境變量
DSH_OPENCODE_GO_DEBUG_DIR,重啓後在指定目錄查看調試日誌。 - 共存:從 0.1.17 起,插件使用獨立的
dsh-opencode-goprovider。舊會話可能需要將 provider 從opencode-go切換爲dsh-opencode-go。
總結¶
dsh-opencode-go 通過自動化配置和細粒度的控制(如逐模型開關、代理支持、圖片上限控制),讓在 DeepSeek Harness 中使用 OpenCode Go 訂閱模型變得簡單且可控。無論是 Web 界面交互還是 Headless 腳本任務,它都能提供一致的支持。
- 目錄頁:dsh-opencode-go - SkillHub
- GitHub 倉庫:Duskriver/dsh-opencode-go