OpenClaw
Coding agent 平台:常驻 Gateway 拥有会话(transcript、reconciled workspace、模型凭据、placement 记录),执行可放置到任意远端机器——自有设备或经 Crabbox 租用的云主机。设计原则:placement 一次性、session 永久——远端机器消失,会话与持久状态原样存活,下一条消息自动换机。是 Agent 状态分层(workspace 留本地 / work 搬远程)的完整产品化实例。
架构三要素
| 目的地 | 机器 | scope |
|---|---|---|
| Gateway(默认) | 跑 openclaw gateway 的宿主 | — |
| Paired device | 自有硬件,openclaw connect <join-url> --service --session-host 配对 | operator.write |
| Cloud worker | Crabbox 按需租机(AWS、Hetzner 等),结束拆机 | operator.admin |
配对设备持有到 Gateway 的出站连接,按 CPU 核广播 worker slot(nodeHost.workerRuns.capacity 可调),可选 nodeHost.workerRuns.isolation: "container" Docker 隔离;离线时 placement 保留。云 worker 一次性设计:机上不留常驻凭据,持久状态全在 Gateway。
关键机制
- 推理恒走 Gateway 代理:provider 凭据不落远端;完成的工作 reconcile 回 managed worktree。OpenClaw
worker-turn与 Codexremote-exec两个运行时共用同一套放置模型。 - 容错:worker 子进程 120s 准入窗口,超时未开工可换子进程(最多 5 次指数退避,约十分钟),已开工工作绝不重放;卡死会话 30s 清理宽限后记失败。挂起的 cloud worker 下条消息自动复活。
- 附件:暂存
media/inbound/openclaw-staged-<id>/(Git 排除);限额 25,000 文件 / 256 MiB / 单文件媒体 6 MiB / 编码帧 25 MiB。详见 OpenClaw - Cloud Sessions。 - 闲置经济:
suspendAfter空闲安全停机(只付快照存储);warmImage预拍 checkout + runtime 镜像,私有 commit 免 origin 拉取。 - computer 控制:Desktop 面板与
computer工具绑定同一台执行机器,view-only 起步,需 vision 模型;控制随 placement/连接存活。 - 自动均衡:Auto = 最闲设备,worker-turn 按空闲 slot 排序、remote-exec 按设备 ID,重试至多 3 台。