EVERYDAY · SHELL
一个 Shell,从不同设备继续。
Shell 是一个由远端长期持有的交互终端。设备负责进入和显示它,而不是决定它是否继续存在。
生命周期
创建 Shell 时,服务端生成一个 Terminal,持有 PTY、进程和权威终端状态。关闭一个客户端窗口只会移除对应的 Attachment,不会自动终止 Terminal。
创建 Terminal→设备 Attach→暂时断开→再次 Attach
断开与恢复
网络切换、设备休眠或客户端重新启动后,客户端用 canonical UUID 找回原有 Terminal,并接收完整的当前状态。远端任务不需要因为每次重连而重新创建。
多设备进入
电脑和手机可以进入同一个 Shell,看到同一份服务端权威状态。某一时刻由 Controller 持有输入与 resize 权限,其余 Attachment 作为 Viewer 保持可见;需要时可以安全接管。
重启边界
- 客户端退出或网络中断:Terminal 继续运行。
- Managed gateway 重启:既有用户 worker 可以继续持有 Terminal。
- 用户 worker 或整台服务器重启:当前不会从磁盘恢复正在运行的 Terminal。