在 DeepSeek Harness (DSH) 的开发与调试中,当主会话调用子代理 (subagent) 时,其输出往往淹没在主对话流中,难以快速定位和切换。dsh-subagent-panel 插件将工具调用行转换为可交互卡片,解决了子代理可见性低的问题。
插件定位¶
这是一个 DSH Web 客户端插件,由 BiKing567 维护。它将 subagent 和 subagent_fork 工具调用渲染为点击卡片,点击后可在主会话视图中打开子会话,无需重绘 shell 的会话视图。
核心功能¶
-
行内卡片渲染
将主对话中的subagent/subagent_fork工具行渲染为卡片。卡片显示委托的任务、实时状态徽章(running / idle)、子代理 ID、已用时间以及是否生成了嵌套子代理。点击卡片即可导航到该子代理的会话。 -
浮动触发器
在右下角显示一个浮动药丸按钮,计数当前会话的子代理数量。有子代理运行时,按钮显示红点。点击药丸可查看子代理列表,点击列表行可跳转。 -
命令行列表
提供主机命令/subagents,用于列出当前会话的直接子代理及其状态、模式和标签。
安装与启用¶
安装插件需要 DSH Web 客户端。执行以下命令安装:
dsh plugin --profile web add github:BiKing567/dsh-subagent-panel
本地开发时,可以使用 link: 协议指向源码目录,修改后刷新页面即可生效:
dsh plugin --profile web add link:/path/to/dsh-subagent-panel
dsh web
配置与使用¶
在 DSH 的 cordis 行配置中启用插件,并设置最大消息行数(默认 500):
- id: dsh-subagent-panel
name: 'dsh-subagent-panel'
config:
maxMessages: 500
使用 /subagents 命令查看所有子代理的状态。通过右下角的浮动药丸或行内卡片点击,可以在主对话视图中直接跳转并查看子代理的详细日志。
注意事项¶
- 环境要求:插件基于 DSH Web 客户端开发,目标版本为
dsh0.1.0-rc.6。 - 依赖关系:客户端包(
@deepseek-ai/dsh-client-runtime,@deepseek-ai/dsh-client-locale,@deepseek-ai/dsh-client-ui-tool)为可选的 peer 依赖,由 harness 在运行时注入,无需单独安装。 - 渲染机制:插件不记录自己的对话,完全依赖 shell 的渲染逻辑来展示子会话,这通常比插件自绘的 transcript 更准确。