前言¶
DeepSeek Harness(DSH)的插件機制允許把宿主能力拆成獨立模塊接入。其中一類常見需求是:不想在 DSH 裏再配一組 API key 或 settings 段,而是直接複用本機已經登錄的 CLI。dsh-llm-qoder 就是做這件事的適配器:它把 DSH 的 LLM 請求接到本機 qodercli,讓宿主側的模型選擇、會話、工具調用與壓縮恢復繼續按 DSH 的插件機制運行。
這是什麼¶
dsh-llm-qoder 是一個 DSH 插件,包名爲 @jiamingzang/dsh-llm-qoder,許可證爲 MIT。它解決的問題是:讓 DSH 的 LLM 接縫可以走 qoder 與 qoder-byok 兩條 provider 路由,複用本機 qodercli 的登錄態,不需要 API key 或 settings 段。
核心功能¶
插件提供的能力包括:
1、無配置接入
完全複用本機 qodercli 登錄態,不需要 API key 或 settings 段。
2、雙路由
註冊 qoder 與 qoder-byok 兩個 provider 路由,供模型選擇器選擇。
3、長駐會話
宿主 session 對應一個 warm qodercli 會話;在 maxSessions 上限內按插入序 LRU 淘汰。
4、工具橋接
宿主工具通過進程內 MCP server dsh-host 暴露給內層模型。
5、模型目錄
即時從 qodercli 拉取可用模型;拉取失敗時回退靜態目錄。
6、思考強度與上下文窗口
上報 reasoning efforts、默認檔位與 context window,供模型選擇器切換。
7、旁路請求
標題生成、compaction 等 side-channel 請求走 cold 一次性調用。
8、溢出可恢復
上下文超限被映射爲 CONTEXT_WINDOW_EXCEEDED,供 harness 做溢出恢復。
默認配置項如下:
maxSessions: 8
modelCacheTtlSeconds: 300
其中:
maxSessions
表示同時保持 warm 的內層 qodercli 會話上限;超出上限時按插入序 LRU 淘汰。
modelCacheTtlSeconds
表示 CLI 模型目錄的緩存保鮮秒數。
安裝與啓用¶
前置條件¶
本機需要先安裝並登錄 qodercli,並且能運行:
qodercli --version
獲取插件包¶
從本倉庫 Releases 下載:
jiamingzang-dsh-llm-qoder-<version>.tgz
也可以在倉庫根目錄執行 pnpm pack 自行生成。
添加到目標 profile¶
執行:
dsh plugin --profile <profile> add jiamingzang-dsh-llm-qoder-<version>.tgz
其中 <profile> 與 <version> 需要按實際環境替換。
首次安裝批准構建腳本¶
首次安裝會涉及 @qoder-ai/qoder-agent-sdk 的構建腳本。pnpm 11+ 會默認攔截構建腳本並報錯。
這時需要把 pnpm-workspace.yaml 中 allowBuilds 對應的值改爲 true,例如:
allowBuilds:
'@qoder-ai/qoder-agent-sdk': true
然後重新執行上面的 add 命令完成安裝。
驗證安裝¶
執行:
dsh --profile <profile> --dump-config | grep llm-qoder
如果輸出中出現插件條目,說明 profile 已加載該插件。接着重啓服務,模型選擇器中應出現:
qoder
qoder-byok
手動掛載¶
不經過 plugin 命令時,也可以在 cordis.yml 或 patch 層直接聲明:
- id: llm-qoder
name: '@jiamingzang/dsh-llm-qoder'
典型用法¶
1、選擇路由
在模型選擇器或 Models 設置頁選擇 qoder 或 qoder-byok 下的模型。
2、切換上下文窗口與思考強度
插件會上報 CLI 的 reasoning efforts、默認檔位與 context window,因此這些選項可以在模型選擇器中切換,並隨每次請求下發。
3、模型目錄恢復
如果即時模型目錄拉取失敗,插件會回退靜態目錄。拉取失敗不會緩存,CLI 恢復後自動恢復即時目錄,不需要重啓服務。
上下文溢出與壓縮¶
warm 內層會話會累積宿主歷史,內層模型也可能遇到上下文超限。插件會把這類失敗上報爲:
CONTEXT_WINDOW_EXCEEDED
這樣 harness 的溢出恢復流程可以接管,而不是讓當前輪次直接失敗。
溢出自動恢復需要部署中加載:
dsh-compaction-basic
dsh-token-meter
如果未安裝壓縮插件,上下文超限輪次仍會失敗,只能新開會話或手動壓縮。
適用場景與注意¶
這個插件適合本機已經安裝並登錄 qodercli、希望 DSH 直接複用該登錄態的開發者。
安裝前建議注意:
1、插件運行在 DSH 進程中,會以當前 dsh 進程權限訪問本機 qodercli 及其登錄態;
2、安裝前應檢查源碼、依賴與 MIT 許可證;
3、資料中 GitHub 倉庫地址與包名存在大小寫和名稱差異:GitHub URL 使用 JiamingZang/dsh-llm-qodersdk,包名使用 @jiamingzang/dsh-llm-qoder,安裝包文件名使用 jiamingzang-dsh-llm-qoder-<version>.tgz。實際安裝時以下載到的發佈包文件名爲準。
相關鏈接¶
這裏給出的是社區目錄頁與 GitHub 倉庫地址,不等同於官方應用商店。
- 社區目錄:https://www.skillhub.cn/plugins/JiamingZang/dsh-llm-qodersdk
- GitHub:https://github.com/JiamingZang/dsh-llm-qodersdk