前言¶
在 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 + 向量 混合檢索,默認可用 Ollamaqwen3-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 描述的操作順序,適合第一次搭團隊與開聊:
- 安裝並重啓後,點右下角膠囊進入應用;可選完成 10 步引導或點「不再彈出」。
- 在團隊頁新建成員或從角色庫導入;爲每位成員配置可回退模型路由,必要時用「一鍵檢測全部模型」清理不可用路由。
- 將成員拖到羣聊、部門(🏢)或另一位成員上,完成入羣、設爲子智能體或組成新部門;部門場景下由主管派發,子智能體並行後彙總。
- 在聊天頁選擇私聊或羣聊,用
@點名成員;羣聊可結合管理員策略與並行上限觀察「誰在思考」與排隊狀態。 - 在記錄頁檢索歷史;在團隊頁記憶面板查看 L1–L3,必要時手動「記住」觸發壓縮。
- 輸入框旁使用語音錄入(按你所配置的 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 倉庫爲準: