前言¶
DeepSeek Harness(DSH)的設計理念是“一切皆插件”。在單機多用戶共用一個 DSH 進程的場景下,默認的 Web 界面對所有登錄用戶展示全量工作區,缺乏隔離。dsh-multi-user 插件通過登錄牆和視圖分檔機制,解決了這一需求。
插件概覽¶
名稱:dsh-multi-user
一句話:Single-process multi-user workspace view partitioning for DeepSeek Harness: JWT-in-cookie login wall, per-user workspace/session partitioning, and admin user management.
維護者:nabin-qq273274877
分類:admin-security
許可證:MIT
核心功能¶
- JWT 登錄牆:掛載後訪問首頁需先通過驗證,未設主管理員時顯示初始化頁,已設則顯示登錄頁;登錄成功後插件自籤 JWT 寫入 HttpOnly Cookie。
- 按用戶過濾工作區/會話:每個用戶(含主管理員)維護一份已加入的工作區路徑清單。用戶通過目錄選擇器加入任意路徑,只有加入過的路徑(及其下會話)對本人可見,其他用戶看不到。
- 用戶管理:主管理員經初始化後,可在設置頁的「用戶管理」中添加、刪除、重置密碼及啓用/停用子用戶。
- 單進程無侵入架構:無需額外網關進程,直接作爲普通插件集成,安裝/還原成本低。
安裝與啓用¶
在終端執行以下命令安裝插件:
npx @deepseek-ai/dsh plugin --profile web add dsh-multi-user
安裝完成後,重啓 dsh web 進程使插件生效。
典型用法¶
- 初始化主管理員:訪問
http://127.0.0.1:3080/,根據頁面提示設置主管理員賬號。 - 添加子用戶:登錄主管理員賬號,進入設置頁的「用戶管理」區域,添加子用戶。
- 用戶加入工作區:子用戶登錄後,在側邊欄通過目錄選擇器選擇本地路徑加入工作區,該路徑及下屬會話僅對該用戶可見。
適用場景與注意事項¶
- 安全邊界:這不是強隔離方案。同一進程內所有用戶共享
workspaceRegistry,Agent 工具仍可操作宿主機任意路徑。 - 卸載影響:卸載後
sidebar.workspaces會恢復爲官方的全量視圖,但插件數據目錄$DSH_HOME/plugins-data/dsh-multi-user/會保留。
總結¶
該插件適合需要在同一臺機器上實現多用戶分檔查看、輕量級登錄驗證的場景。通過 JWT-in-cookie 方式實現身份隔離,配合視圖過濾降低管理複雜度。