概述
Exec 审批是 OpenClaw 对 companion app / node host 上 Shell 命令执行的安全拦截机制。沙箱 Agent 在 gateway 或 node 上执行命令前,必须通过策略 + 白名单 + 用户审批三重验证。审批策略叠加在工具策略和 elevated 门控之上。
核心功能
- 双层策略:
tools.exec.*(OpenClaw 配置)和~/.openclaw/exec-approvals.json(宿主机本地),取更严格的一方 - 三种安全级别:
deny(拒绝所有)、allowlist(仅白名单)、full(允许一切) - 审批提示模式:
off(不提示)、on-miss(白名单未命中时提示)、always(每次提示) - YOLO 模式:
security=full+ask=off组合,无需审批直接执行(gateway/node 默认行为) - per-agent 白名单:每个 Agent 独立维护白名单,支持路径 glob 和裸命令名 glob
- argPattern 限制:白名单条目可通过正则限制参数形状,如
python3 safe.py专用条目 - 审批生命周期:审批挂起时返回
status: "approval-pending",通过后触发Exec finished系统事件
配置/权限
存储位置:~/.openclaw/exec-approvals.json
YOLO 模式快速配置:
openclaw exec-policy preset yolo严格模式配置:
{
"version": 1,
"defaults": {
"security": "allowlist",
"ask": "on-miss",
"askFallback": "deny",
"autoAllowSkills": false
}
}白名单示例:
rg— 裸命令名(仅匹配 PATH 调用)~/Projects/**/bin/peekaboo— 路径 glob/opt/homebrew/bin/rg— 精确路径
CLI 工具:
openclaw approvals get— 查看有效策略openclaw exec-policy show— 本机合并视图openclaw approvals set --gateway— 远程设置 gateway 审批
相关页面
- tool-exec — exec 工具本体
- tool-exec-approvals-advanced — safe bins、解释器绑定、审批转发
- tool-elevated — Elevated 模式(跳过审批的 break-glass 路径)