dsh-team-workbench:在 DSH 网页端把具名智能体团队做成聊天应用

前言

在 DSH 里做多智能体协作,常见做法是自己在宿主里拼子智能体、会话和模型路由,界面往往仍是单会话或零散工具。若你希望像 IM 一样管理「具名成员」、私聊与群聊,并能把「部门」建模成一个可派发子任务的智能体,就需要一套挂在网页客户端上的完整面板与服务端存储。

下面介绍社区插件 dsh-team-workbench(维护者 narkco-kang)。它是 DSH 网页客户端插件(dsh.client.platform = web),在浏览器侧挂载全窗口 UI,通过同源 HTTP 调用宿主侧的 /api/team-workbench/* 路由,完成团队配置、对话、记录检索、分层记忆与语音输入等能力。

这是什么

dsh-team-workbench(npm 包名 dsh-team-workbench)把「智能体团队」产品化为聊天应用:每个成员有名字、职责、分组、头像、配色,以及一组可回退的模型路由(当前路由失败时按顺序换下一条,试跑会显示回退轨迹)。

从 2.0.0 起,插件不再注册左侧「工作台」入口,改为像 DS-Bot 一样挂到 document.body,因此可以盖住宿主导航;2.6.0 起默认收在右下角胶囊,点开铺满窗口,右上角「收起」回到胶囊,DSH 自带会话与输入框仍可照常使用。README 记载在 DSH Desktop 0.13.2(macOS arm64)上实测;仓库 package.json 当前版本为 3.5.7,Release 安装示例以 v3.4.1 为例(见下文安装节)。

许可证:MIT。分类上属于 DSH 生态的客户端插件;社区目录页:https://www.skillhub.cn/plugins/narkco-kang/dsh-team-workbench。

核心功能

团队、主管与模型

  • 总管台与主管:团队始终有一个标 ★ 的主管;若没有有效总管,会自动把第一位启用成员设为主管并写回磁盘。主管不可单独删除,总管台群也不可删(界面会提示需先更换主管)。
  • 成员与路由:侧栏展示「职称 + 3D 头像」,点击进属性页维护成员;支持照片头像与素材库(按 sha256 去重、批量导入、一图多处复用)。
  • 部门 = 一个智能体:可从角色库按「整部门 = 1 个智能体」导入,部门内角色成为子智能体(各自带模型路由)。派发链路为:主管用自己的模型读任务 → 选 1–4 个子智能体并行执行 → 主管汇总成一段答复。
  • 模型体检:团队页支持 🎲 从宿主目录挑选真实推理通过的模型(最多 6 个)分给部门子智能体;🩺 一键对全部唯一 provider/model 发探测请求(「只回复 ok」),失败会清理相关路由并在页面报告原因。

聊天与编排

  • 私聊 / 群聊:私聊带最近 12 条上下文;群聊支持管理员先答、自动挑人、只回应 @ 等策略。
  • @ 与并行:输入框支持 DSH 式 @ 补全点名成员;@ 接力最多 2 层(每条消息最多 5 个智能体回合、3 次点名)。群聊并行泳道受 room.parallel / room.maxParallel 控制,超出会排队并显示「排队 N 位」。
  • 交互细节:消息下方有复制、赞踩、引用、用量与时间;输入框下方有 token / 缓存命中率统计(读宿主 session projcache,约 5s 刷新);支持多组会话快捷键(如 ⌘J/⌘K 切换会话、⌘E 记忆、⌘U 聚焦输入框)。

记录、记忆与语音

  • 记录页:跨私聊/群聊检索,命中词高亮,按今天 / 昨天 / 更早分组。
  • 分层记忆 L0–L3:L0 为 chats.json 中的原始消息;L1 原子事实、L2 场景摘要、L3 用户画像写在 memory.json。召回采用 BM25 + 向量 混合检索,默认可用 Ollama qwen3-embedding:0.6b,也可换 OpenAI 兼容 embedding;向量结果缓存到 memory-vectors.json。L0 除非清空会话否则不删;L1–L3 可在团队页「记忆」面板逐条管理。
  • 语音输入:支持本地 faster-whisper、OpenAI 兼容、智谱 GLM-ASR、MiniMax ASR(webm 可转 mp3);可选模型校对(术语表最小纠错)。

新手引导与性能

首次打开可走 10 步引导(欢迎 → 侧栏 → 输入框 → 记忆 → 团队 → 部门整理 → 角色库 → 记录 → 语音 → 完成),状态存在 localStorage: team-workbench:tour-v1。会话侧栏使用内存缓存与预取,切换标签时先缓存渲染再后台刷新,以减少空白闪烁。

架构概览

浏览器侧由 lib/client.js(自 src/client/panel.js 打包)提供胶囊、全窗口应用,以及聊天、团队、记录、额度、角色、技能等标签。宿主侧 dsh/index.js 组合 team.js、chat.js、memory.js、stt.js、skills.js,对外暴露约 33 条 /api/team-workbench/* 路由;模型还可通过 11 个工具(如 agent_team_roster、agent_team_dispatch、agent_team_chat 及技能库相关 skill_manager_*)参与编排。

持久化路径(README 记载)包括:团队 agent-team-studio/team.json,会话 team-workbench/chats.json,记忆 memory.json,头像目录 avatars/,采用原子写入并保留旧版本备份。

安装与启用

插件为普通插件包(dsh.bundle.patch + dsh.client.platform: web)。以下为 README 中的三种方式(安装命令须与资料一致,不要自行拼接 github:owner/repo):

# 1) 官方 CLI(推荐;会把包名写进 dsh.profile.bundles)
DSH_HOME="$HOME/Library/Application Support/dsh-desktop/harness" \
  node "/Applications/DSH Desktop.app/Contents/Resources/app.asar/node_modules/@deepseek-ai/dsh/lib/bin.js" \
  plugin --profile web add ./dsh-team-workbench-3.4.1.tgz

# 2) 从 Release 直链装
dsh plugin --profile web add \
  https://github.com/narkco-kang/dsh-team-workbench/releases/download/v3.4.1/dsh-team-workbench.tgz

# 3) 卸载
dsh plugin --profile web remove dsh-team-workbench

也可在 设置 → 插件 → 安装 中填写 npm 包名、GitHub 地址或 .tgz 直链。

装完后重启 Harness(菜单 Harness → 重启 Harness)。右下角应出现「智能体团队」胶囊;点开进入团队应用,右上角「收起」回到 DSH。若曾安装 1.x 工作台形态,README 要求先卸载旧工作台再装当前普通插件包,否则两套入口可能并存。

典型用法(可复现流程)

下面按 README 描述的操作顺序,适合第一次搭团队与开聊:

  1. 安装并重启后,点右下角胶囊进入应用;可选完成 10 步引导或点「不再弹出」。
  2. 在团队页新建成员或从角色库导入;为每位成员配置可回退模型路由,必要时用「一键检测全部模型」清理不可用路由。
  3. 将成员拖到群聊、部门(🏢)或另一位成员上,完成入群、设为子智能体或组成新部门;部门场景下由主管派发,子智能体并行后汇总。
  4. 在聊天页选择私聊或群聊,用 @ 点名成员;群聊可结合管理员策略与并行上限观察「谁在思考」与排队状态。
  5. 在记录页检索历史;在团队页记忆面板查看 L1–L3,必要时手动「记住」触发压缩。
  6. 输入框旁使用语音录入(按你所配置的 STT 后端);头像可在团队页上传或从素材库复用。

适用场景与注意

适合谁:需要在 DSH Desktop 网页配置(--profile web)下,以聊天 UX 管理多成员智能体团队、部门式并行派发、会话检索与长期记忆的开发者或高级用户。

权限与安全:插件在当前 DSH 进程权限下运行,会读写本地 team.json、chats.json、memory.json 等;安装前应自行审阅 GitHub 源码 与 MIT 许可证。社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系。

环境差异:README 安装示例路径面向 macOS 上的 DSH Desktop;Linux 或其他安装路径需对照本机 DSH_HOME 与 dsh CLI 实际位置,但 dsh plugin --profile web add 与 Release 直链形式仍可作为参考。

结尾

dsh-team-workbench 把具名智能体、可回退路由、群聊编排、部门并行汇总、记录检索与 L0–L3 记忆收进一个网页客户端插件,并与 DSH 宿主子智能体、模型目录和会话能力对接。若要查看简介与分类,可打开社区目录页;若要安装包、Release 与完整功能说明,以 GitHub 仓库为准:

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

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

小夜