ShareServer
ShareServer 是 GoodBuddy 设备共享网络的独立 Web 服务。它为一个或多个组织提供身份与设备 目录、能力发布、授权策略、任务路由、可选数据中继、能力包更新、网关联邦、Office 编辑和 审计管理。目标范围还包括共享工作空间的实时消息、成员处理请求和资料同步。
成员的日常操作在 GoodBuddy 中完成,ShareServer 提供组织后台。模型网关向其他模型服务转发 请求,不托管模型或运行推理。文档主要存储在 ShareServer;个人创建者可删除自己的文档或将 所有权转移给组织,转移后删除由组织权限决定,原创建者不再保留个人删除权。
Office 区分服务端主存文档与显式的本地来源导入/回写模式。既有 Desktop 源文件、检查点和 冲突契约用于后者;编辑会话结束不删除服务端主文档,检查点可用也不等于本地或 SSH 源文件已回写。
ShareServer 不属于 Electron Main,不负责桌面端局域网发现,也不自动取得设备上的能力、 文件、凭据或 SSH Host。
文档导航
| 文档 | 权威职责 |
|---|---|
| PRD | 管理角色、产品范围、功能需求和验收 |
| 用户故事 | 工作空间、实时消息、资料同步及数字分身处理的验收场景与逻辑审查 |
| 功能逻辑 | 组织隔离、设备、发布、策略、任务和联邦状态规则 |
| 管理界面设计 | ShareServer Web 控制台的信息架构与交互 |
| 技术设计 | 服务模块、API、数据、部署、运维和验证 |
| 实施进度 | 已验证实现、剩余生产工作与验证证据 |
| 共享网络总体设计 | 跨端身份、能力、授权、任务、更新和协议权威(GoodBuddy 仓库) |
| Desktop Office 协同编辑 | 文档 Tab、源文件回写、冲突和 AI 选区编辑(GoodBuddy 仓库) |
工作空间协作场景由用户故事追踪;管理员、能力发布者、审计员等既有场景继续由 PRD 与逻辑
设计覆盖。仓库已有全控制台交互原型及本地共享目录服务,后者持久化 GoodBuddy 注册和发布的元数据。
组织生产服务尚未实现。当前边界和运行方法见实施进度与
README.md。跨仓库文档链接要求将 goodbuddy 与
goodbuddy-shareserver 克隆到同一级目录;服务构建和运行不依赖桌面端仓库。
当前源码按 web/src/、server/src/ 和根 shared/ 组织,构建、测试与依赖仍由根目录统一管理。
目录和产物路径见技术设计第 1 节。
GoodBuddy 服务演示
当前新增 /model-gateway(模型网关)、/documents(文档与协作)、/distribution(配置下发)
三个路由,演示策略判断、文档归属与回收站、OnlyOffice 实例配置和检查、按组发布与回退。
三页导航共享会话内存,刷新重置;服务演示操作不发网络请求、不写本地存储。角色开关、检查
结果和在线设备应用状态均为模拟,未实现推理、真实转发、Office 编辑保存或设备交付。
具体交互见 UI 设计第 16.1 节。
共享中心沿用 /capabilities。能力目录、共享知识库、按用户查看和按设备查看使用示例数据;
“本地服务目录”页签读取真实本地记录。来源模式、权限展示与跳转约定见
UI 设计,本地 API 见技术设计第 4.1 节。
本地体验:在本仓库运行 npm run dev,在 GoodBuddy 仓库运行 npm run dev,从桌面应用中心
进入设备共享,连接 http://127.0.0.1:8787,注册、发布,再打开
http://127.0.0.1:5174/capabilities?view=local 查看。服务数据默认保存到 data/sharing.json。
完整桌面范围与验证见设备共享文档。
角色
- 系统管理员:维护实例、身份源、域名、证书、存储和全局限制。
- 组织管理员:管理本组织成员、设备、组、策略、能力、Office 编辑政策和联邦关系。
- 能力发布者:在获准范围内发布设备能力或签名能力包。
- 审批人:处理调用、发布、更新和联邦申请。
- 审计员:只读查看和导出获准范围内的审计事件。
- 成员:主要通过 GoodBuddy Desktop 协作和使用能力;在 Web 端管理个人设备、授权、申请及自己发布的数字人。