dsh-multi-user-service
在一套 DSH 中提供统一服务账号登录、成员目录边界、权限、会话、文件及用量管理。
- Stars
- 1
- Language
- JavaScript
- Created
- Oct 25, 2026
- Updated
- Oct 26, 2026
Introduction
DSH 多用户服务
一台服务器,一套 DSH,为整个团队提供服务。
插件 v0.1.0 · 已验证 DSH 0.2.1-rc.2
在公司或团队的服务器上运行一套 DSH,让多人通过浏览器登录使用。成员各自管理会话与文件,管理员统一管理账号、权限和用量。
插件负责多用户管理,模型、Skills、Agent 预设、工具、终端和代码执行复用 DSH 原生能力,并为成员增加目录访问边界。
功能演示
| 演示内容 | 能看到什么 |
|---|---|
| 统一登录与首次设置 | 账号识别角色,配置个人目录、共享目录与访问入口 |
| 成员管理与跨页全选 | 搜索筛选、创建邀请,跨两页选中 13 个账号 |
| 授权与个人偏好 | 分范围批量设置,成员在授权范围内自行启用资源 |
| 会话与文件 | 按成员管理、文件菜单操作与会话高级筛选 |
| 额度与用量 | 并发及日月额度,统计搜索、状态筛选与分页 |
| 账号归档与品牌 | 归档后恢复或删除,登录页与侧栏复用品牌 |
功能
- 账号管理:创建与邀请成员、分配管理员;支持归档、恢复及归档后删除账号,保留会话和文件。
- 权限分配:按成员授权模型、工具、Skills、MCP、Agent 预设和目录;支持按筛选跨页全选、批量设置及查看生效范围。
- 会话与文件:成员管理自己的内容,管理员统一管理;右侧文件列表支持右键操作。
- 用量控制:搜索、筛选并分页查看成员用量,设置并发任务数及每日、每月 tokens 额度。
- 统一外观:设置共享 Logo、名称与标签,登录页直接复用;支持自定义首页标语。
可用于公司内网或已配置的公网入口;成员使用管理员创建或邀请的账号登录。
开始使用
1. 安装插件
已有可用的 DSH 服务即可。插件使用 DSH 现有运行环境,不要求为插件另装 Python、bubblewrap 或 systemd,也不要求成员具有 sudo 权限。DSH 自身的运行和沙箱条件仍由 DSH 管理。
- 在服务器本机的 DSH 插件页打开 实验性插件 → 自定义插件索引。
- 在 发现 → 添加索引源 填入:
https://github.com/sunbigfly/dsh-multi-user-service/releases/latest/download/index.json
- 搜索 DSH 多用户服务,安装并启用。
- 按 已有服务接入 配置成员访问入口,继续使用这一份 DSH。
2. 完成首次设置
- 在服务器本机已授权的 DSH 页面中配置可用模型。
- 打开侧栏 多用户服务,创建管理员账号。
- 按向导确认成员数据目录,可选用默认只读的推荐共享目录;推荐目录会在完成设置时创建。
- 设置服务登录域名或 IP,核对当前服务端口与模型状态,再完成设置。之后管理员和成员都通过同一服务入口登录,角色只认服务端账号授权。
例如 http://team-server.local:18620/lan/。主机名解析由部署网络提供,例如 mDNS;插件保存域名入口并保留备用 IP 地址。已有安装沿用现有配置,无需重新初始化。
3. 添加成员
- 打开 多用户服务 → 成员管理,选择 新建账号 或 邀请成员。
- 先填写账号信息,再配置权限;也可复制现有成员的授权作为起点。
- 新建账号时分享 我的账号 中的成员入口;邀请时直接复制生成的完整链接,成员打开后填写账号信息即可加入。
- 在成员列表下方的 邀请记录 查看使用情况,撤销或重新签发邀请。邀请仅可使用一次,24 小时有效。
成员在 我的账号 → 修改登录密码 自助改密。管理员在成员的 账号状态 中修改显示名、角色与状态;交接时先提升接任者,再调整原管理员。多人同时编辑时,旧草稿会被拒绝并保留,重新加载后再保存。
| 入口 | 用途 |
|---|---|
http(s)://服务器地址/ | 转到统一服务入口 |
http(s)://服务器地址/lan/ | 所有服务账号登录、接受邀请,按角色使用功能 |
http(s)://服务器地址/lan/admin/ | 兼容旧地址,转到同一入口 |
实际协议、地址和端口以部署配置为准。
执行边界
成员的业务文件读写限定在本人目录与管理员授权的共享目录,覆盖文件入口、Bash、Node 代码执行、终端及子 Agent;“完全访问”预设也不能越过账号目录边界。共享目录的只读权限同样约束脚本。
执行使用 DSH 随附的原生 Landlock 启动器,不新增系统依赖或独立执行服务。系统运行库与 DSH 程序文件只读,临时文件和配置目录归入成员个人目录,宿主环境中的凭据不传给成员进程。原生隔离校验未通过时,成员执行会被拒绝。
宿主共享 MCP 和无法验证隔离的第三方工具插件暂不对成员开放,授权不能绕过此限制;服务器本机的宿主工具保持原有能力。网络仍沿用 DSH 与服务器配置,本边界不宣称网络或完整虚拟机隔离。
当前已在 DSH 0.2.1-rc.2 的 Linux/WSL 服务端验证;其他 DSH 版本与服务端平台尚未验证。成员设备通过浏览器访问。
安装包:@sunbigfly/dsh-multi-user-service。在同一 profile 更新即可保留账号、会话与文件;更新后刷新已打开的管理页面。早期旧名称的包需先在原 profile 停用、卸载,再安装新包。已有 dsh-lan 命令与 /lan/ 路径继续兼容。
可选运维脚本、备份与恢复见 配置与运维。这些脚本不是插件运行前提。
MIT License
