📅 发布日期:2026年6月22日 | 🏢 适用场景:企业级部署 | 🛡️ 安全等级:高
📌 什么是 Exec 自动模式?
Exec 自动模式是 OpenClaw 于 2026年5月31日发布的功能,它允许企业配置命令执行的审批策略,实现安全的自动化工作流。与传统的"YOLO"模式(全自动执行)不同,自动模式提供了更精细的控制。
🔒 手动模式
每个命令都需要人工确认。适合高风险操作和初次使用。
⚡ 自动模式
低风险命令自动执行,高风险命令需要审批。适合日常开发。
🚀 YOLO 模式
所有命令自动执行。适合完全信任的环境,不推荐生产使用。
🔧 配置自动模式
1. 创建审批策略
# 创建审批策略文件
cat > ~/.openclaw/policies/exec-policy.yaml << 'EOF'
# Exec 审批策略
version: "1.0"
default_mode: auto
# 命令分类
categories:
# 低风险命令 - 自动执行
low_risk:
- ls
- cat
- echo
- pwd
- grep
- find
# 中风险命令 - 需要确认
medium_risk:
- npm
- git
- docker
- python
# 高风险命令 - 必须审批
high_risk:
- rm
- sudo
- chmod
- chown
- curl
- wget
# 自动执行条件
auto_execute:
# 命令在白名单中
whitelist: true
# 命令不包含危险参数
no_dangerous_args: true
# 命令不在敏感目录执行
not_in_sensitive_dirs: true
# 审批流程
approval:
# 审批超时时间(秒)
timeout: 300
# 需要审批的用户角色
required_roles:
- admin
- security
# 审批通知方式
notification:
- feishu
- email
EOF
2. 应用策略
# 应用审批策略
openclaw policy apply exec-policy
# 查看当前策略
openclaw policy list
# 测试策略
openclaw policy test "rm -rf /tmp/test"
3. 配置审批人员
# 添加审批人员
openclaw approval add-user admin@example.com --role admin
# 查看审批人员列表
openclaw approval list-users
# 设置审批通知
openclaw approval set-notification feishu --channel oc_xxx
📊 命令执行流程
当 Agent 执行命令时,自动模式会按照以下流程处理:
- 命令解析 - 解析命令和参数
- 风险评估 - 根据策略评估命令风险等级
- 自动决策 - 低风险命令自动执行,高风险命令进入审批
- 审批通知 - 通知审批人员进行审批
- 执行或拒绝 - 根据审批结果执行或拒绝命令
# 查看命令执行日志
openclaw exec log --tail 50
# 输出示例
[2026-06-22 01:00:00] INFO 执行命令: ls -la
[2026-06-22 01:00:00] INFO 风险等级: low
[2026-06-22 01:00:00] INFO 决策: 自动执行
[2026-06-22 01:00:01] INFO 命令执行成功
[2026-06-22 01:01:00] INFO 执行命令: rm -rf /tmp/test
[2026-06-22 01:01:00] WARN 风险等级: high
[2026-06-22 01:01:00] INFO 决策: 需要审批
[2026-06-22 01:01:00] INFO 通知审批人员: admin@example.com
[2026-06-22 01:01:30] INFO 审批结果: 通过
[2026-06-22 01:01:31] INFO 命令执行成功
⚠️ 注意:在生产环境中,建议使用"自动模式"而非"YOLO 模式"。YOLO 模式可能会执行危险的命令,导致数据丢失或系统损坏。
🎯 最佳实践
1. 最小权限原则
只授予 Agent 执行其任务所需的最小权限。避免使用 root 权限运行 Agent。
2. 定期审查日志
定期审查命令执行日志,发现异常行为。
3. 使用白名单
对于常用的安全命令,使用白名单自动执行,提高效率。
4. 配置敏感目录保护
配置敏感目录列表,防止在这些目录中执行危险命令。
# 配置敏感目录
openclaw policy set-sensitive-dirs /etc /var /root
# 查看敏感目录列表
openclaw policy list-sensitive-dirs