dsh-routed-subagent:DeepSeek Harness 模型與推理路由

前言

在 DeepSeek Harness (DSH) 的開發中,子代理委派是提升任務複雜度的常見手段。默認情況下,這種委派往往涉及對模型 ID 的透傳,這可能導致非預期的 Provider 選擇或推理強度失控。dsh-routed-subagent 插件旨在解決這一問題,它要求每個委派調用必須顯式選擇一個通過 model 參數配置的模型策略,以及一個通過 reasoning_effort 參數配置的精確推理努力。該插件強制執行白名單路由,拒絕任意 Provider 或 Model 的透傳。

功能

該插件主要提供以下能力:

  • 白名單模型與推理路由:允許調用者基於本地策略動態選擇模型和推理強度。
  • 調用驗證:在創建子代理前,插件會根據本地策略和 ctx.llm.resolveCallConfig() 驗證 model 與 reasoning_effort 的組合。
  • 執行模式支持:支持前臺和後臺執行,通過 run_in_background 參數控制。
  • 深度與權限控制:支持配置最大委派深度 (maxDepth) 和模型策略,未跟蹤的代理在深度大於零時將不接收模型權限。
  • 配置界面:提供完整的路由器配置設置卡片。

安裝與啓用

安裝插件需要指定目標 Profile。

dsh plugin --profile <your-profile> add github:leonardoxr/dsh-routed-subagent#v0.3.0

也可以使用本地打包文件進行安裝:

dsh plugin --profile <your-profile> add C:/path/to/dsh-routed-subagent-0.3.0.tgz

安裝後,插件會註冊爲 routed_subagent 工具。

配置方法

配置通過 Profile Patch 的 routed-subagent 行進行。啓用委派功能需要同時配置 rootModels 和 models。未配置完整策略時,插件僅暴露設置卡片,不註冊委派工具。

- id: routed-subagent
  config:
    toolName: routed_subagent
    maxDepth: 2
    rootModels: [codex-mini, codex-sol]
    models:
      codex-mini:
        provider: openai-codex
        model: gpt-5.4-mini
        reasoningEfforts: [low, medium]
        maxTokens: 16384
        description: 'Mechanical edits, lookups, and summarization.'

      codex-sol:
        provider: openai-codex
        model: gpt-5.6-sol
        reasoningEfforts: [medium, high, xhigh]
        maxTokens: 65536
        description: 'Architecture, multi-step reasoning, and hard debugging.'
        spawnableModels: [codex-mini]

在應用界面中,可以通過 Settings → Plugins → Routed subagent 來編輯路由器配置。所有的更改在點擊 Save changes 前都會暫存;成功保存後,工具會熱重載,並使之前設置的遞歸權限失效。點擊 Reset to composition 可清除所有路由器覆蓋。

工具契約

註冊的 routed_subagent 工具接受以下參數:

字段 必填 說明
description 是 短顯示標籤
prompt 是 完整的獨立子任務提示詞
model 是 當前調用者上下文中允許的配置模型策略 ID
reasoning_effort 是 該策略允許的精確努力 ID
run_in_background 否 通過 Harness Jobs 服務運行

前臺和後臺執行都會回顯有效的 { id, provider, model, reasoningEffort } 選擇,用於審計。

配置參考

配置項及其默認值與含義如下:

鍵 默認值 說明
toolName routed_subagent 註冊的工具名稱
enableRunInBackground true 暴露 run_in_background 參數
maxDepth 1 正整數絕對委派深度上限
rootModels 必填 頂層代理可用的非空策略 ID 列表
models 必填 非空的配置模型白名單
models.*.provider 必填 已註冊的 LLM 提供商路由
models.*.model 必填 提供商擁有的精確模型 ID
models.*.reasoningEfforts 必填 非空的精確努力 ID 白名單
models.*.maxTokens — 正數輸出 Token 上限
models.*.description — 顯示給調用者的短路由權衡說明
models.*.spawnableModels [] 此模型上的子代理允許調用的策略 ID

配置是嚴格的:未知字段、重複 ID、空白名單、不安全的數值以及未知引用都會導致加載或保存失敗。

注意事項與安全

  • 嚴格配置:不滿足上述嚴格校驗規則時,插件將無法正常加載或保存。
  • 權限與遞歸:深度大於零的未跟蹤代理不會獲得模型權限;子代理僅能調用其選定策略 spawnableModels 中列出的模型。
  • DNS-rebinding 防禦:Harness 的 /api 信任圍欄旨在防禦 DNS-rebinding,而非提供身份認證。任何能訪問服務器的人都可以發起其代理可用的任務。請勿將昂貴路由配置在 models 中,除非你願意承擔該成本。
  • 版本差異:README 文檔提及 v0.3.0,而 package.json 顯示版本爲 0.3.1。安裝時請參考官方提供的安裝命令。

結語

dsh-routed-subagent 爲 DeepSeek Harness 提供了細粒度的子代理控制能力,通過強制白名單路由和推理努力校驗,確保了任務執行的確定性。該插件遵循 MIT 許可證,維護者 leonardoxr。

羽毛球分组比赛记分
小程序二维码

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

小夜