Exec 主机重构计划
目标
- 添加
exec.host+exec.security将执行路由到 sandbox、gateway 和 node。 - 默认安全:不显式启用不做跨主机执行。
- 将执行拆分为无头运行器服务,可选 UI(macOS 应用)通过本地 IPC。
- 提供按 agent 的策略、白名单、ask 模式和节点绑定。
- 支持与白名单配合或独立使用的 ask 模式。
- 跨平台:Unix socket + token 认证。
关键概念
- Host:
sandbox(Docker 执行)、gateway(在 gateway 主机上执行)、node(通过 Bridge 在节点运行器上执行)。 - 安全模式:
deny(总是拒绝)、allowlist(只允许匹配)、full(允许所有,等同 elevated)。 - Ask 模式:
off(从不询问)、on-miss(白名单未匹配时询问)、always(每次都问)。Ask 与白名单独立。
默认安全
- 默认
exec.host = sandbox - gateway 和 node 默认
exec.security = deny - 默认
exec.ask = on-miss
配置界面
工具参数和全局/按 agent 的配置 key 控制 host、security、ask 和 node 绑定。/elevated on = 设置 host=gateway, security=full。
审批存储
路径:~/.openclaw/exec-approvals.json(JSON,无遗留迁移)。存储本地策略 + 白名单、ask 回退和 IPC 凭证。
运行器服务(无头)
作为 launchd/systemd 服务运行,在本地强制 security + ask 策略,执行系统命令并返回输出。UI 通过本地 Unix socket 连接做审批提示。
实现阶段
- 配置 + exec 路由
- 审批存储 + gateway 强制
- 节点运行器强制
- 事件
- UI 打磨
相关文档:Exec 工具、Exec 审批、节点、Elevated 模式