在开发 DeepSeek Harness (DSH) 智能体时,主 agent 规划任务后,往往需要将特定步骤委派给子代理执行。现有的通用子代理配置难以在调用时动态指定模型或推理强度,导致任务执行与审查环节缺乏精细控制。
这是什么¶
dsh-delegation-workflow 是一个协作式委派工作流插件,由 Wh1stle05 维护。它为 DeepSeek Harness 提供了一个 delegate_with_model 工具,实现了“主规划 → 子执行 → 主审查”的工作流,让主 agent 能够将计划中的步骤委派给子代理执行,并显式指定该子代理的运行模型与思考强度。
核心功能¶
- 新增工具
delegate_with_model:主 agent 可使用该工具发起委派。 - 参数支持:支持
description(委派描述)、prompt(子代理任务说明,不共享父代理上下文)、provider(子代理 LLM 后端)、model(模型 ID)、reasoning_effort(推理强度,动态校验支持档位)、run_in_background(是否后台运行)。 - Web 端命令:新增
/delegate-model斜杠命令,用于在 Web 界面选择模型和思考强度,配置会持久化到$DSH_HOME/settings.yaml。 - 通用设置:在通用设置中新增“子代理默认模型”条目,包含模型和思考强度两个选择器。
- 区别于内置 subagent:插件将调用方指定的
provider和model写入子代理的AgentOptions,并在子代理发出首个请求前注入reasoning_effort,提供更细粒度的控制。
安装与启用¶
安装插件需先安装 DeepSeek Harness (dsh 命令)。dsh plugin 命令底层转发给 pnpm。
# 安装最新版
dsh plugin --profile web add github:Wh1stle05/dsh-delegation-workflow
# 或固定到某个版本 tag
dsh plugin --profile web add github:Wh1stle05/dsh-delegation-workflow#v0.2.1
# 本地开发 (link 到工作副本,改完源码重启 dsh 即生效)
dsh plugin --profile web add link:/path/to/dsh-delegation-workflow
插件安装后,仓库自带的 cordis.patch.yml 会自动生效,无需在 profile 的 cordis.patch.yml 中手动重复 insert(重复 insert 会在同一份 entry 列表里产生两个同名插件)。如需修改默认配置(如 provider、model、effort),可在 profile 的 cordis.patch.yml 中通过 id: delegation-workflow 定向覆盖:
- id: delegation-workflow
config:
subagentProvider: spawn
provider: commandcode-ubuntu1
model: deepseek/deepseek-v4-pro
reasoningEffort: high
toolName: delegate_with_model
典型用法¶
典型用法遵循“主规划 → 子执行 → 主审查”的流程:
- 主 agent 使用
todo_write拆解计划。 - 主 agent 使用
delegate_with_model委派子代理执行第一步,参数包含模型和思考强度。 - 子代理执行并返回结果。
- 主 agent 对照计划审查,直到验收通过。
具体的工作流规则详见 AGENTS.md 文件。
注意事项¶
- 进程重启:插件源码 (
src/) 改动后需要重启 dsh 进程才会加载。 - 配置热重载:
cordis.patch.yml中的配置修改支持热重载。 - 概念区分:
subagentProvider是子代理的执行后端(transport,由dsh-subagent-{spawn,fork}-in-process注册),而provider是 LLM 模型后端(如opencode-go)。二者概念不同,不可混用,否则会报no subagent provider registered for ...。 - 依赖管理:v0.2.1 起依赖改为
peerDependencies,由 profile 解析,避免和 host 的包混用导致 import 失败。
总结¶
该插件通过显式控制子代理的模型与推理强度,增强了 DSH 中的任务委派能力。更多细节可查阅其 GitHub 仓库。