前言¶
如果你在 DeepSeek Harness(DSH)里跑多 subagent 的任务流,可能会遇到一个具体问题:subagent 的 provider、model 和 reasoning effort 默认配置散落在配置文件里,想换一个默认模型,就得手动编辑 YAML,改完还要确认每个 subagent 是否用上了新值。
dsh-subagent-setting 把这件事搬到了 Web 设置页:在界面上选好默认的 provider / model / reasoning effort,新建的 subagent 立即生效,还可以选择让已经存在的空闲 subagent 跟随新设置。
这是什么¶
dsh-subagent-setting 是一个 DSH 插件,由 marshfolx 维护,当前版本 0.1.0,采用 MIT 许可证。它解决的问题很单一:为 subagent 提供一个可视化的默认模型配置入口,替代手动编辑 YAML。
核心功能¶
按插件的 README,它提供以下能力:
1、设置页配置(Settings → Subagent Model):从实时模型目录中选择 provider、model 与 reasoning effort,无需手动编辑 YAML。
2、新建 subagent 立即生效:override 在每个子 agent 创建时逐个应用,创建之后新建的 subagent 直接使用新配置。
3、可选的实时传播:设置项 Apply setting changes to subagents created earlier 开启后,配置变更会更新所有已存在的空闲 subagent,新值在其下一次请求时生效;正在运行中的 subagent 则从下一步开始生效。关闭该选项时,变更只影响之后新建的 subagent。
4、留空即继承父会话:provider / model / effort 任何一项留空,subagent 就沿用父会话所用的配置。
5、WebView 友好的下拉框:设置表单使用完全受控的自定义下拉组件替代原生 <select>,在浏览器和 Tauri(WebView2)shell 中行为一致。
实现方式¶
了解实现有助于判断它是否适合你的环境,README 给出了简要说明:
- Host 侧(
lib/index.js)注册dsh-subagent-setting设置命名空间,并在agent/created事件中,对 session header 里origin: 'subagent'的每个 agent 安装 agent 级的agent/requestwaterfall 监听器,将调用配置重写为配置的 route。 - 监听器读取子 agent 的实时 route holder,因此
applyToIdle只需替换该 holder,就能让已存在的子 agent 在下一次请求时切换到新配置。 - Client 侧(
client/client.js)负责渲染设置区域,通过官方连接 API(settings.describe/settings.replace/llm.models)通信。
安装与启用¶
先把插件安装到 profile,再加入 bundle 列表:
dsh plugin --profile web add github:marshfolx/dsh-subagent-setting
安装完成后,打开 Settings → Subagent Model 配置默认值即可。
典型用法¶
按 README 的使用流程:
1、执行上面的安装命令,把插件装入 web profile 并加入 bundle 列表。
2、打开 Settings → Subagent Model,从模型目录中选定 provider、model 和 reasoning effort。
3、如果希望早前创建的 subagent 也跟随设置变更,启用 Apply setting changes to subagents created earlier 选项;否则保持关闭,只让新建的 subagent 使用新配置。
如果不想锁定具体模型,把 provider / model / effort 留空即可,subagent 会继承父会话的配置。
适用场景与注意¶
适合的场景:在 Web 端管理多个 subagent、需要频繁调整默认模型配置、或者希望把模型选择从 YAML 编辑中解脱出来的 DSH 用户。
几点注意:
- 实时传播只作用于空闲的 subagent;正在运行中的 subagent 要到下一步才会拿到新配置。
- 插件以当前 dsh 进程的权限运行,安装前建议检查源码和许可证。本项目采用 MIT 许可证,源码在 GitHub 上可以查阅。
- 项目当前版本为 0.1.0,属于早期阶段,建议在自己的环境里先验证再用于生产。
结尾¶
dsh-subagent-setting 做的事不复杂,但把 subagent 模型配置从手改 YAML 变成了设置页里的几次点选,并且通过 route holder 替换实现了对已有空闲 subagent 的实时更新。如果你的工作流依赖多个 subagent,值得一试。
- 社区目录页:https://www.skillhub.cn/plugins/marshfolx/dsh-subagent-setting
- GitHub 仓库:https://github.com/marshfolx/dsh-subagent-setting
顺带一提,DSH 的理念是「一切皆插件」,上面的目录页是独立的社区站点,与 DeepSeek / 幻方没有官方从属关系。