前言¶
DeepSeek Harness(DSH)在多智能体与后台任务场景下,对话视图往往只显示当前主会话,而主智能体下发的子智能体与后台任务分散在多个会话中。当需要确认“有没有卡住”时,往往需要打开多个会话窗口,查看进度。
dsh-group-tab 为 DSH 提供一个右栏标签页,把所有活跃成员(主智能体+所有子智能体)的工作状态聚合在一个实时“群聊”视图里,方便快速掌握整体进度。
插件定位¶
- 名称:dsh-group-tab(Workgroup)
- 维护者:llCCII
- 类型:DSH 客户端插件
- 核心价值:在右栏以群聊式视图展示“谁在做什么、大概还需要多久”,把分散的子会话状态集中到一处。
核心功能¶
- 成员卡片:每个活跃成员(主智能体 + 子智能体)一张卡片,显示当前正在使用的工具。
- 预计剩余时间(ETA):基于本机已完成运行记录(最近 20 次的中位数)计算,无历史时明确标注。
- 后台任务折叠:每个后台任务归属于其所属成员,在成员卡片中展开显示进度。
- 统一时间线:合并成员的启动、工具切换、消息、任务进度、完成等事件,最新事件在底部。
- 模型路由:显示每个成员当前调用的
provider / model。 - 等待你的成员置顶:需要你确认或审批的成员会置顶显示,带有红色徽章与头部计数,并可配置完成提示音。
安装与启用¶
安装依赖的侧栏插件(作为宿主):
dsh plugin --profile web add dsh-better-sidebar
安装本插件(二选一):
dsh plugin --profile web add dsh-group-tab # npm
dsh plugin --profile web add github:llCCII/dsh-group-tab # GitHub,无需 npm
启用后打开右栏,从 + 菜单选择 Workgroup(位于 Tasks 旁)。该标签页会在页面加载时为当前会话打开一次;一旦出现委托工作,会话内再打开一次;关闭后该页面不再自动打开。
数据读取方式¶
sessions客户端服务(订阅):成员存在性、运行状态、标题、层级关系。jobs客户端服务(订阅):每个会话的后台任务列表。POST /sidebar/api/subagents.live(轮询):仅在至少有一个成员或任务运行时轮询,获取当前工具与最新文本。POST /sidebar/api/git.models(单次调用 + 缓存):每个成员 30 秒缓存一次当前使用的模型路由。
空闲时零请求:轮询周期与时钟 tick 仅在存在运行成员或任务时启用,页面隐藏时自动停止,页脚会显示 LIVE · 2s(工作)与 LIVE · idle, no polling(空闲)。
注意事项¶
- 插件以当前 DSH 进程权限运行,安装前应检查源码与许可证(MIT)。
- 插件不占用宿主路由与 markdown 文件,面板由实时事件驱动,不会展示过期状态。
- 时间线内存保留 200 条事件,成员启动时间保存在
localStorage,刷新页面不会重置计时。 - 提示音使用 Web Audio API(无外部资源),可在头部铃铛按钮中静音。
- UI 语言由浏览器语言决定:
zh*显示中文,其他显示英文。
适合谁¶
适合需要在 DSH 中同时管理主智能体、多个子智能体与后台任务的开发者,特别是希望在一个视图里快速判断整体进度、是否有人等待确认或审批的场景。
价值回顾¶
dsh-group-tab 把分散的子会话状态聚合成一个实时群聊视图,通过成员卡片、ETA、后台任务折叠、统一时间线与等待置顶等功能,让“有没有卡住”这类问题可以在一个右栏标签页内快速回答,减少反复打开多个会话的交互成本。
- 目录页:https://www.skillhub.cn/plugins/llCCII/dsh-group-tab
- GitHub:https://github.com/llCCII/dsh-group-tab