dsh-model-switch:爲 DSH 子代理和計劃執行選擇合適模型

前言

DeepSeek Harness(DSH)中,主會話、子代理和計劃執行並不是同一種用途。主會話通常承載當前對話,子代理會執行派生任務,計劃執行則會在審批後觸發一次具體運行。

如果每個階段都固定使用主會話模型,容易遇到任務不匹配、需要反覆手動切換模型的問題。dsh-model-switch 是一個 DSH 插件,用於分別爲主會話、子代理和計劃執行選擇合適的模型。它在設置、計劃審批和子代理信息展示這幾個位置補充模型選擇能力。

這是什麼

lincong1987/dsh-model-switch 是一個面向 DeepSeek Harness 的插件,作者是 lincong1987,許可證爲 MIT。

它解決的問題是:在同一個 DSH 環境中,主會話可以繼續使用當前模型,同時爲子代理或計劃執行配置另一個模型。插件會保存默認設置,減少每次任務前手動切換的成本;在計劃審批時,也可以直接確認或修改執行模型。

核心功能

下面列出該插件已明確提供的能力:

  • 爲子代理和計劃執行分別選擇合適模型。
  • 保留主會話當前模型,同時爲子代理或計劃執行使用另一個模型。
  • 保存模型默認設置,避免每次任務前反覆切換。
  • 在計劃審批面板中確認或修改執行模型。
  • 顯示子代理使用的模型、上下文窗口和推理努力。
  • 計劃執行後恢復主會話原來的模型。
  • 支持 Follow main model 或 Custom 配置。
  • Custom 模式可選擇模型和推理努力。

其中,Follow main model 使用當前會話模型;Custom 則允許單獨選擇模型和推理努力。

安裝與啓用

該插件未作爲 npm 包發佈。不要使用 @lincong1987/dsh-model-switch。

官方給出的安裝命令如下:

dsh plugin --profile web add github:lincong1987/dsh-model-switch

該命令面向 web profile。安裝完成後需要重啓 DSH。

啓用前需要滿足以下條件:

  • DeepSeek Harness 0.1.1-rc.2 或更高版本。
  • Node.js ^22.19.0 或 >=24。

插件的設置會寫入宿主設置文檔,並通過插件註冊的 model-switch namespace 存儲。

典型用法

  1. 打開 Settings → Model switch。
  2. 配置 Subagent model 和 Plan execution model:
    - Follow main model 使用當前會話模型。
    - Custom 可選擇模型和推理努力。
  3. 審閱計劃時,在選擇 Approve 前確認或修改執行模型。

計劃審閱面板中選擇的模型優先於已保存的計劃執行設置。

如果 DSH 更新後需要重新安裝插件,使用 --force 重新安裝:

dsh plugin --profile web add --force github:lincong1987/dsh-model-switch

重新安裝後,再重啓 DSH。

適用場景與注意

適合在 DSH 中同時使用主會話、子代理和計劃執行,並希望不同階段使用不同模型的場景。尤其適合需要保存默認模型設置、避免反覆手動切換,以及在審批計劃前確認執行模型的工作流。

需要注意:

  • 該插件以當前 DSH 進程權限運行。安裝前應檢查源碼、許可證和依賴來源。
  • 子代理模型切換適用於進程內子代理,例如 spawn 和 fork。
  • 外部進程代理可能獨立管理模型,不一定受該插件控制。
  • DSH 仍爲開發者預覽版,跨版本升級前建議備份 ~/.dsh。
  • README 提到 rc.8 不兼容地修改了 SQLite 存儲格式。
  • Desktop 中一次只運行一個 plugin add。
  • 如果 Desktop 出現 another plugin install recovery transaction is pending,需要退出 Desktop、清理並重試。

結尾

dsh-model-switch 的價值在於把“每個階段用什麼模型”從臨時操作變成可保存、可審閱的配置:主會話保持當前模型,子代理和計劃執行按需切換,計劃執行後恢復主會話原來的模型。

  • GitHub:https://github.com/lincong1987/dsh-model-switch
  • 目錄頁:未提供可覈實鏈接
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜