前言¶
DeepSeek Harness(DSH)默认面向单人或单会话使用。团队在同一台服务器上共用一套 DSH 时,常见做法是共用同一登录态或手工拆目录,难以区分成员会话、文件与模型授权,也不便于统计用量。下面介绍社区插件 DSH 多用户服务(sunbigfly/dsh-multi-user-service),它在一套 DSH 进程内提供统一服务账号、成员目录边界、权限、会话、文件及用量管理,模型、Skills、Agent 预设、工具、终端和代码执行仍走 DSH 原生能力。
这是什么¶
DSH 多用户服务由维护者 sunbigfly 发布,在 SkillHub 分类为 admin-security。源码版本 v0.1.1,已在 DSH 0.2.1-rc.2 上验证(README 写明当前主要在 Linux/WSL 服务端验证)。许可证为 MIT。安装包 npm 名称为 @sunbigfly/dsh-multi-user-service。
定位可以概括为:一台服务器、一套 DSH,为整个团队提供浏览器登录;成员各自管理会话与文件,管理员统一管理账号、权限和用量。
核心功能¶
以下能力均来自项目 README,按模块归纳。
账号与成员¶
- 创建与邀请成员、分配管理员;支持归档、恢复及归档后删除账号,并保留会话和文件。
- 成员在 我的账号 → 修改登录密码 自助改密;管理员在 账号状态 中改显示名、角色与状态。
- 邀请仅可使用一次,24 小时有效;可在 邀请记录 中撤销或重新签发。
权限分配¶
- 按成员授权模型、工具、Skills、MCP、Agent 预设和目录。
- 工具支持黑名单与白名单,新账号默认黑名单;支持筛选跨页全选、批量设置及查看生效范围。
会话、文件与执行¶
- 会话 与 文件 为两个独立导航入口;管理员可统一管理,文件列表支持右键操作。
- 执行工具:在共享环境右侧登记 CLI、扫描已配置的 tool-runner 来源、查看操作与配置授权;指定工具与扫描工具分页展示。
- 单独安装并启用 dsh-browser 后,可在右侧页签浏览网页(需 Linux、Chrome/Chromium 和 bubblewrap);多用户服务只负责账号与工具授权,未满足条件时不显示浏览器入口,账号功能仍可用。
用量与外观¶
- 搜索、筛选并分页查看成员用量;可设置并发任务数及每日、每月 tokens 额度。
- 统一设置共享 Logo、名称与标签,登录页复用;支持自定义首页标语。
执行边界(安全相关)¶
成员业务文件读写限定在本人目录与管理员授权的共享目录,覆盖文件入口、Bash、Node 代码执行、终端及子 Agent;「完全访问」预设也不能越过账号目录边界。执行使用 DSH 随附的原生 Landlock 启动器。宿主共享 MCP 和无法验证隔离的第三方工具插件暂不对成员开放。网络仍沿用 DSH 与服务器配置,本边界不宣称网络或完整虚拟机隔离。
安装与启用¶
已有可用的 DSH 服务即可;账号、权限和文件管理使用 DSH 现有运行环境,不要求另装 Python 或 systemd。成员不需要 sudo 权限。安装包同时包含「工具权限归属」「DSH 多用户服务」「执行工具」三个配套组件。
- 在服务器本机的 DSH 插件页打开 实验性插件 → 自定义插件索引。
- 在 发现 → 添加索引源 填入:
https://github.com/sunbigfly/dsh-multi-user-service/releases/latest/download/index.json
- 搜索 DSH 多用户服务,安装并启用。
- 按仓库文档 已有服务接入 配置成员访问入口,继续使用这一份 DSH。
索引安装 GitHub Release 中的稳定版本;main 为当前开发源码。在同一 profile 更新即可保留账号、会话与文件;更新后刷新已打开的管理页面。早期旧名称的包需先在原 profile 停用、卸载,再安装新包。已有 dsh-lan 命令与 /lan/ 路径继续兼容。
典型用法¶
首次设置¶
- 在服务器本机已授权的 DSH 页面中配置可用模型。
- 打开侧栏 多用户服务,创建管理员账号。
- 按向导确认成员数据目录,可选用默认只读的推荐共享目录。
- 设置服务登录域名或 IP,核对当前服务端口与模型状态,再完成设置。
完成后管理员和成员都通过同一服务入口登录,角色只认服务端账号授权。例如入口形态为 http://team-server.local:18620/lan/(实际协议、地址和端口以部署为准)。
添加成员¶
- 打开 多用户服务 → 成员管理,选择 新建账号 或 邀请成员。
- 先填写账号信息,再配置权限;也可复制现有成员的授权作为起点。
- 新建账号时分享 我的账号 中的成员入口;邀请时复制生成的完整链接,成员打开后填写账号信息即可加入。
常用 URL 入口¶
| 入口 | 用途 |
|---|---|
http(s)://服务器地址/ |
转到统一服务入口 |
http(s)://服务器地址/lan/ |
所有服务账号登录、接受邀请,按角色使用功能 |
http(s)://服务器地址/lan/admin/ |
兼容旧地址,转到同一入口 |
可用于公司内网或已配置的公网入口;成员使用管理员创建或邀请的账号登录。
适用场景与注意¶
适合谁:需要在单台服务器上部署一套 DSH、让多人通过浏览器各自登录的团队或内网环境;需要按人分配模型/工具/目录并限制用量的管理员。
环境与依赖:package.json 要求 Node >=22、DSH 0.2.1-rc.2。插件以当前 DSH 进程权限运行;安装前应阅读 GitHub 仓库 源码与 MIT 许可证。可选运维脚本、备份与恢复见 配置与运维,这些脚本不是插件运行前提。
DSH 生态采用「一切皆插件」思路;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。本插件在目录页归类 admin-security,便于按管理与安全类插件检索。
结尾¶
DSH 多用户服务把账号、权限边界、会话文件隔离和用量控制收拢到同一套 DSH 里,避免为团队重复搭多套实例。进一步了解可访问 SkillHub 目录页 sunbigfly/dsh-multi-user-service 与 GitHub 仓库 github.com/sunbigfly/dsh-multi-user-service。