dsh-submodel:官方 subagent 的默認委派策略包

前言

在 DeepSeek Harness(DSH)裏用官方 subagent 時,常見問題是:主腦什麼時候自己處理、什麼時候派子任務、派給哪條 provider/model,往往要靠手寫系統提示或臨場判斷。改一處路由,又要同步改多處說明。社區插件 dsh-submodel(維護者 angel291592,分類:工作流)的定位是:不新建 provider 體系,只讀 profile 裏已有的渠道與模型配置,把委派策略寫進系統提示詞,併爲官方 subagent 補統一入口 delegate_task。裝一次,把「自己幹 / 派出去 / 派給誰」的默認規則配好。

這是什麼

dsh-submodel 是官方 subagent 的默認策略包。它不重複實現模型選擇能力本身——那仍由官方 subagent 的 provider / model 參數提供;本包消費這些能力,並負責策略正文、delegate_task 工具註冊,以及對子代的 guard。

與官方 @deepseek-ai/dsh-tool-subagent-control 的邊界如下:狀態查看 list_agents、追加消息 send_message、停止 interrupt_agent 由官方控制插件提供,本包不重複註冊;策略與委派入口由本包負責。

倉庫:https://github.com/angel291592/dsh-submodel
目錄頁:https://www.skillhub.cn/plugins/angel291592/dsh-submodel
許可證:MIT(見 package.json)。本機 README 記載實測環境爲 DSH 0.2.1-rc.5;engines.dsh 聲明 >=0.2.1-rc.3 <0.3.0,其他 rc / 正式版未逐一實測。

核心功能

主腦與子代行爲

  • Flash 主腦:默認自己幹;普通子任務用 delegate_task(不傳 provider/model 時,子代繼承當前路由)。只有問題足夠複雜或超出執行上限時才升級,升級時從配置的 experts 裏點名。
  • 非 Flash 主腦:理解、判斷、寫作由主腦完成;可驗證的執行塊默認派給 executor 裏配置的執行路由。
  • 子代:硬邊界——delegate_task、subagent、subagent_fork、workflow、spawn_teammate 一律不可用,防止遞歸派活。

delegate_task

參數與原生 subagent 相同;provider 與 model 必須成對傳遞。經 ctx.tools.execute 發起真正的原生調用,宿主的 allowlist、預檢與權限照舊生效。

配置與門控

在 profile 補丁層按 id: submodel 覆蓋配置。完整字段含 enabled、preset(默認 standard,策略只對指定 composition 生效)、executor、experts、texts.*、toolName、order、guardNativeSubagent 等;詳見 README 表格。enabled: false 時只註冊空段,不裝任何工具/guard。

安裝與啓用

安裝命令(來自 README 原文):

dsh plugin --profile <你的 profile> add dsh-submodel

非 Flash 主腦要使用自動委派,需在 profile 補丁里至少指定執行路由。補丁文件路徑爲 ~/.dsh/profiles/<你的 profile>/cordis.patch.yml;默認是空數組 [],需替換成條目或追加到已有數組。注意:對某一條目的 config 是整段替換,未寫字段回落到插件默認值,不會與內置默認值逐字段合併。

最小配置示例(README 所稱「5 行」):

- id: submodel
  config:
    executor:
      provider: <執行渠道>
      model: <執行模型>

若 executor.provider / executor.model 留空,非 Flash 主腦沒有默認派工目標,日誌會出現 error 級別提示「config.executor.provider/model 未配置,自動委派不可用」。

回滾:

dsh plugin --profile <你的 profile> remove dsh-submodel

典型用法與前置條件

  1. 確認 profile 支持 composition(含 agentPresets 服務);否則策略不生效,日誌爲 warn:「當前 profile 無 agentPresets 服務,策略不生效」。
  2. 在設置裏啓用 subagent-model-selection,否則可能出現 info:「本會話未啓用官方 subagent 模型選擇,策略段不渲染」;工具仍按註冊門控安裝。
  3. 若本會話的原生 subagent 未暴露 provider/model 參數,整套安裝(策略段 / guard / delegate_task)會跳過,等能力出現後由 tools/change 或 agent/pre-step 自動補裝。

可選:在 experts 中配置允許升級時顯式點名的專家路由列表,每項形如 {label, provider, model, reasoningEffort?}(reasoningEffort 目前爲預留字段)。非空 texts.economize / texts.boss / texts.child 會整段替換內置正文;默認文案爲中文,工具描述與 guard 拒絕理由仍爲英文。

適用場景與注意

適合誰:已在 DSH 中使用官方 subagent、希望用配置固定委派策略而不是每次手寫提示詞的開發者;需要 Flash / 非 Flash 主腦分工、並限制子代繼續派活的場景。

已知限制(README 原文):只對 preset 指定的 composition 生效;不提供預算護欄、催收或故障改派(watchdog);v0.2 候選能力未包含在本包。內置模板不含任何具體渠道/模型名,執行路由與專家路由全部來自你的配置。

安全與權限:插件以當前 DSH 進程權限運行,安裝前請自行查閱 GitHub 源碼 與 MIT 許可證,確認符合你的環境策略。DSH 生態理念是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

故障排查採用 fail-fast:只記日誌,不拋異常。除上文 executor 未配置外,常見日誌含義見 README「故障排查」表。

結尾

dsh-submodel 把官方 subagent 的委派規則收成可配置的默認策略包:讀現有 profile 路由、注入系統提示、提供 delegate_task,並在子代側阻斷遞歸派活。安裝一條命令,補丁里補全 executor(及按需的 experts)即可起步。

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

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

小夜