用途:在 Daytona 云沙箱中启动 OpenWork Electron 应用,真实桌面应用运行于 Daytona 的 XFCE/noVNC 桌面栈,可通过浏览器访问,用于开发、测试与验证。
主要能力:提供可复用的四类能力——test-on-daytona.sh 运行真实 Electron/noVNC/CDP 沙箱;daytona-flow-validator 执行 observe→act→assert→evidence 验证循环;test-server-on-daytona.sh 运行云端 Den 服务端沙箱;daytona-electron-den 验证 Electron 连接 Daytona Den 服务端。另有 daytona-chrome-cdp 用于独立 Chrome 自动化,以及密钥卷 /daytona-secrets 和产物卷 /daytona-artifacts。
使用方式:需先安装 Daytona CLI(brew install daytonaio/cli/daytona 或从 GitHub releases 下载)、执行 daytona login 登录,并用 daytona organization use "<org-name>" 选择组织。快速启动执行 bash .devcontainer/test-on-daytona.sh [branch-or-commit],脚本使用 VNC 快照并启动 noVNC/Vite/Electron 并打印 URL;快照缺失时用 bash .devcontainer/create-daytona-openwork-snapshot.sh 创建。noVNC 地址通过 daytona preview-url openwork-dev -p 6080 获取,Den Web 为 3005,CDP 为 9825。也可用 daytona ssh <sandbox> 进入 /workspace。
运行服务与端口:noVNC 6080、Vite HMR 5173、CDP 9825、Den Web 3005、Den API 8788(后两者仅在 MySQL 可用时)。
限制:Daytona 原始沙箱模式无 Docker Compose 时缺少 MySQL,Den 栈无法启动,需改用生产 Den 或本地 Den 加隧道。创建沙箱磁盘不足时用 --disk 10,避免 --context . 上传整个仓库。Electron 空白窗口通常因 Vite 未运行,需确保 Vite 监听 0.0.0.0。noVNC 黑屏可重启桌面栈。其余细节暂未提供。