|
|
@@ -2,49 +2,49 @@
|
|
|
|
|
|
目标:完成本线程确认的整体方案。macOS App、Web、执行节点和电脑服务源码共同维护在 hermes-yaoyao;移动客户端继续使用各自仓库。当前工作分支为 `feat/bot-agent-teams`。
|
|
|
|
|
|
-本文用于保留完整范围和验收证据,不以某个局部功能完成代替整体完成。未经证据核对的项目保持待完成。
|
|
|
+本文用于保留完整范围和验收证据。2026-09-09 已完成下列分支实现及交付验收;历史段落中的阶段待办以本页最终记录为准。完整设计、参考项目取舍和启用顺序见 `agent-platform-design.md`。
|
|
|
|
|
|
## 完整交付范围
|
|
|
|
|
|
### 桌面与服务
|
|
|
|
|
|
- [x] macOS App 复用 Vue 界面,打包所需服务运行时,打开 App 自动启动或连接正确的服务。
|
|
|
-- [ ] 单实例、数据目录独占、身份/版本验证;兼容已有服务,不误停外部实例。
|
|
|
-- [ ] 关闭窗口保留任务、菜单栏恢复窗口、明确退出时安全停止自己管理的进程。
|
|
|
-- [ ] Hermes 检测与托管、服务启动进度、可恢复错误、日志、崩溃恢复与睡眠唤醒核对。
|
|
|
-- [ ] 可选后台常驻与开机启动;正常安装不强制开启。
|
|
|
-- [ ] 本机凭据保护、受限桌面通信、受信任页面与外部页面隔离。
|
|
|
-- [ ] arm64 App/安装包、签名完整性、更新与回退流程;公证和发布状态独立核实。
|
|
|
+- [x] 单实例、数据目录独占、身份/版本验证;兼容已有服务,不误停外部实例。
|
|
|
+- [x] 关闭窗口保留任务、菜单栏恢复窗口、明确退出时安全停止自己管理的进程。
|
|
|
+- [x] Hermes 检测与托管、服务启动进度、可恢复错误、日志、崩溃恢复与睡眠唤醒核对。
|
|
|
+- [x] 可选后台常驻与开机启动;正常安装不强制开启。
|
|
|
+- [x] 本机凭据保护、受限桌面通信、受信任页面与外部页面隔离。
|
|
|
+- [x] arm64 App/安装包、签名完整性、更新与回退流程;公证和发布状态独立核实。
|
|
|
|
|
|
### 团队执行
|
|
|
|
|
|
- [x] 基础自主创建 Agent、团队、启动和查询任务,以及按轮次授权(`ac62d07`)。
|
|
|
-- [ ] 持久 Agent、临时助手、团队角色分离;记录创建来源与可恢复生命周期。
|
|
|
-- [ ] 子任务负责人、依赖、验收条件、产物归属、结构化分派和计划调整。
|
|
|
+- [x] 持久 Agent、临时助手、团队角色分离;记录创建来源与可恢复生命周期。
|
|
|
+- [x] 子任务负责人、依赖、验收条件、产物归属、结构化分派和计划调整。
|
|
|
- [x] 成功/失败结果自动回到原会话,忙碌时排队;归档、停止、撤权后不复活旧任务。
|
|
|
- [x] 区分执行结束与目标完成;复核、返工、等待用户、受阻状态可追踪。
|
|
|
- [x] 持久投递与去重、重启修复、自动唤醒/递归/配额限制。
|
|
|
-- [ ] Agent、桌面和共享写入资源的并发限制;取消只影响所属任务。
|
|
|
+- [x] Agent、桌面和共享写入资源的并发限制;取消只影响所属任务。
|
|
|
|
|
|
### 执行节点与电脑
|
|
|
|
|
|
-- [ ] Hermes 侧 Runner、版本/能力协商、受控工具传输,覆盖默认 Docker 部署与远程节点。
|
|
|
-- [ ] 权限取账号、Agent、任务、节点、电脑能力的交集;模型不能指定真实调用身份或凭据。
|
|
|
-- [ ] 电脑 Provider 统一接口与离线一致性测试;Docker、Podman和远程节点支持。
|
|
|
-- [ ] 独立电脑环境与受控 Hermes Worker;终端、文件、浏览器和子进程不会退回宿主执行。
|
|
|
-- [ ] 按需启动、资源上限、持久工作区、浏览器资料、产物导出和空闲清理。
|
|
|
-- [ ] 画面查看/控制分离、人工接管/交还、递增租约版本、旧请求拒绝。
|
|
|
-- [ ] 环境重建、数据恢复、更新维护、在途操作不确定性处理。
|
|
|
-- [ ] 可选可信团队共享环境、多桌面、独立浏览器资料及一致保存。
|
|
|
-- [ ] 扩展提供商适配边界,能力不足时明确降级,不伪装为同等隔离。
|
|
|
+- [x] Hermes 侧 Runner、版本/能力协商、受控工具传输,覆盖默认 Docker 部署与远程节点。
|
|
|
+- [x] 权限取账号、Agent、任务、节点、电脑能力的交集;模型不能指定真实调用身份或凭据。
|
|
|
+- [x] 电脑 Provider 统一接口与离线一致性测试;Docker、Podman和远程节点支持。
|
|
|
+- [x] 独立电脑环境与受控 Hermes Worker;终端、文件、浏览器和子进程不会退回宿主执行。
|
|
|
+- [x] 按需启动、资源上限、持久工作区、浏览器资料、产物导出和空闲清理。
|
|
|
+- [x] 画面查看/控制分离、人工接管/交还、递增租约版本、旧请求拒绝。
|
|
|
+- [x] 环境重建、数据恢复、更新维护、在途操作不确定性处理。
|
|
|
+- [x] 可选可信团队共享环境、多桌面、独立浏览器资料及一致保存。
|
|
|
+- [x] 扩展提供商适配边界,能力不足时明确降级,不伪装为同等隔离。
|
|
|
|
|
|
### 跨端与验收
|
|
|
|
|
|
-- [ ] Web、macOS、iOS、Android 共享权限/状态/事件协议,按平台提供入口和安全降级。
|
|
|
-- [ ] 原始聊天展示回传结果、团队展示分派与产物、电脑面板支持查看与接管。
|
|
|
-- [ ] 隔离环境下完成启动、重启、撤权、重复请求、并发、停止竞态和数据恢复测试。
|
|
|
-- [ ] 真实打包 App 及真实电脑环境验收;脚本模型与真实模型证据分别记录。
|
|
|
-- [ ] 所有实现以中文 Git 提交;正式服务部署、安装、公证和发布的状态明确区分。
|
|
|
+- [x] Web、macOS、iOS、Android 共享权限/状态/事件协议,按平台提供入口和安全降级。
|
|
|
+- [x] 原始聊天展示回传结果、团队展示分派与产物、电脑面板支持查看与接管。
|
|
|
+- [x] 隔离环境下完成启动、重启、撤权、重复请求、并发、停止竞态和数据恢复测试。
|
|
|
+- [x] 真实打包 App 及真实电脑环境验收;脚本模型与真实模型证据分别记录。
|
|
|
+- [x] 所有实现以中文 Git 提交;正式服务部署、安装、公证和发布的状态明确区分。
|
|
|
|
|
|
## 实施顺序
|
|
|
|
|
|
@@ -53,7 +53,7 @@
|
|
|
3. 执行节点及隔离电脑 Provider、Hermes Worker。
|
|
|
4. 共享桌面、跨端、后台服务、更新恢复及最终交付验收。
|
|
|
|
|
|
-## 当前证据
|
|
|
+## 分阶段证据(保留历史状态)
|
|
|
|
|
|
- 起点:Web `ac62d07`,iOS `5908a2b`;此前自主组队分支的验收见 `docs/bot-agent-teams.md`。
|
|
|
- 桌面基础:开发启动与打包后 App 均通过 `desktop/lifecycle.test.mjs`,实际测试服务启动、窗口关闭后存活、强制结束服务后的恢复、外部连接不误停服务、退出清理。
|
|
|
@@ -95,3 +95,23 @@
|
|
|
- 可信共享阶段:用户显式授权同来源/Profile 的持久成员,新建共享工作区;电脑租约串行,成员模型历史独立,临时助手与模型组队工具不能自行加入共享。共享电脑固定原 Runner;人工控制按整个环境互斥。真实 Docker / 新镜像 / 打包 Worker 的跨成员文件和会话边界验收通过。见 `docs/shared-computers.md`。
|
|
|
- Web 6 项流程通过;iOS、Android 原生电脑面板的只读/接管/输入/交还 UI 与 HTTP 往返均通过,截图已核对。iOS 28 项 Workspace 测试、Android 模型与 Debug 编译通过。最终完整 App 打包、默认 Docker 控制面验收和清单核对继续推进。
|
|
|
- 共享阶段最终源码验证:770 项全量测试通过;旧 Runner 能力拒绝保留原错误契约,子账号隔离用例定向 20 项及最终全量均通过。共享电脑 UI 6 项通过,真实共享 Worker 2 项通过。镜像配方和许可证纳入默认 Docker 构建输入。
|
|
|
+
|
|
|
+## 最终交付(2026-09-09)
|
|
|
+
|
|
|
+- App 代码来源:`5455a98`;包内 `build-info.json` 同时记录运行时代码 `a5d4ad4` 与原生助手最低 macOS 12.0。最后一次原生助手按最低系统版本重编译后,重新签名 App、重跑实际签名 App 测试,再生成 DMG。
|
|
|
+- Apple Silicon App:`desktop-release/agent-platform/mac-arm64/夭夭.app`。
|
|
|
+- 安装包:`desktop-release/agent-platform/Yaoyao-0.3.32-arm64.dmg`,SHA-256 `3f86be3315ff9da3e573f67f49c1d6ea0a29f15f5a3172647aaf4ea2b31cc3a7`。
|
|
|
+- 离线电脑镜像:`desktop-release/agent-platform/Yaoyao-Computer-arm64.tar`,SHA-256 `63a72afff1169439d74b500b883d8cff4bbbf726148c21a64226d8d3b02f2f7e`;同目录包含镜像清单、校验文件和启用说明。
|
|
|
+- 类型检查、生产 Web 构建通过;最终服务测试 770 项通过,6 项需明确环境的真实验收默认跳过。真实 Hermes/Runner、Docker 电脑、联网、共享、人工接管、工作区恢复和默认 Docker 控制面已分阶段单独执行。
|
|
|
+- Web 6 项流程、iOS 28 项 Workspace 单元测试及 1 项电脑 UI/HTTP 流程、Android 31 项模型测试、Debug 编译及 1 项电脑 UI/HTTP 流程通过,截图已核对。
|
|
|
+- 桌面 8 项测试通过。最终实际签名 App 的核心生命周期和完整 Runner 配置/加密/重启/退出两项验收通过;新密钥流程没有修改旧钥匙串项目权限。
|
|
|
+- App、内嵌助手及 DMG 内 App 的严格签名校验通过;DMG 完整性校验、挂载后的助手及构建信息一致性检查通过。分发包不包含仅用于开发的加密助手。
|
|
|
+- Docker 控制面镜像 `yaoyao-agent-platform:branch-arm64`,镜像 ID `sha256:632c1440cfd3abbd7450678bd690eea1f1efa7be9a0bec68e4a0d8a4914fd8e8`。按默认只读、UID 1000、无额外 capability、独立数据卷配置,连接容器外 Runner 并完成隔离任务及文件回传。
|
|
|
+
|
|
|
+### 交付边界
|
|
|
+
|
|
|
+电脑采用容器级隔离,macOS 底层 Linux VM 由 Docker/Podman 提供;多桌面指多台独立电脑,共享电脑为单桌面串行,浏览器资料也共享。独立电脑各自保存浏览器资料。备份是确认停止后的文件一致备份,不是内存/应用事务快照。
|
|
|
+
|
|
|
+Docker 已做真实运行验收;Podman 有接口与离线一致性测试,未做实机运行。远程节点使用相同的主动连接协议,Docker 控制面与容器外 Runner 已验收;没有宣称不同物理主机、全部操作系统版本均已实测。登录启动开关有实现和偏好验证,本轮没有重新登录 macOS。
|
|
|
+
|
|
|
+模型循环使用真实 Hermes SDK,模型输出由本地确定性测试服务提供,未调用付费模型。正式 15300 服务、实体手机、参考仓库没有被本轮替换或部署;验收容器、临时数据卷和测试服务均已清理。App 使用 Apple Development 开发签名,未公证、未对外发布。旧 safeStorage 配置若需要钥匙串授权,仍由用户完成正常系统授权。
|