面向 OpenClaw Agent 的安全命令执行机制,具备自动危险模式检测、风险评估、用户审批工作流及审计日志功能。适用于 agent...
SafeExec - 安全命令执行是一项面向实际任务的技能,主要用于为 OpenClaw 代理提供安全命令执行能力,自动拦截危险操作和批准工作流程。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
为 OpenClaw Agent 提供安全的命令执行能力,支持自动拦截危险操作及用户确认工作流。
当 OpenClaw Agent 在非交互环境中调用 SafeExec 时:
环境变量:
OPENCLAW_AGENT_CALL —— OpenClaw 在 Agent 执行命令时自动设置SAFE_EXEC_AUTO_CONFIRM —— 手动覆盖项,用于自动批准 LOW/MEDIUM 风险命令安全说明: Agent 模式不会禁用任何安全检查。CRITICAL 和 HIGH 风险命令仍将被拦截、记录,并可在审计日志中审查。
安装 SafeExec 的最简方式:
在 OpenClaw 聊天窗口中输入以下指令:
Help me install SafeExec skill from ClawdHub
OpenClaw 将自动为您下载、安装并配置 SafeExec!
如需手动安装,请执行以下命令:
# 从 GitHub 克隆仓库 git clone https://github.com/OTTTTTO/safe-exec.git ~/.openclaw/skills/safe-exec # 设置脚本可执行权限 chmod +x ~/.openclaw/skills/safe-exec/safe-exec*.sh # 创建 PATH 符号链接(可选) ln -s ~/.openclaw/skills/safe-exec/safe-exec.sh ~/.local/bin/safe-exec ln -s ~/.openclaw/skills/safe-exec/safe-exec-*.sh ~/.local/bin/
安装完成后,只需在聊天中输入:
Enable SafeExec
SafeExec 将自动开始监控所有 Shell 命令!
启用后,SafeExec 会自动监控所有 Shell 命令执行过程。一旦检测到潜在危险命令,即刻拦截执行,并通过 会话内终端通知 请求您的批准。
架构说明:
~/.openclaw/safe-exec/pending/~/.openclaw/safe-exec-audit.log~/.openclaw/safe-exec-rules.json启用 SafeExec:
Enable SafeExec
Turn on SafeExec
Start SafeExec
启用后,SafeExec 将在后台透明运行。Agent 可照常执行命令,而 SafeExec 会自动拦截危险操作,例如:
Delete all files in /tmp/test
Format the USB drive
SafeExec 将评估其风险等级,并在当前终端中显示审批提示。
CRITICAL:系统破坏性命令(如 rm -rf /、dd、mkfs、fork bomb)
HIGH:用户数据删除或重大系统变更(如 chmod 777、curl | bash)
MEDIUM:服务操作或配置变更(如 sudo、防火墙修改)
LOW:只读操作及安全的文件操作
safe-exec-approve safe-exec-listsafe-exec-reject 示例通知:
🚨 **Dangerous Operation Detected - Command Intercepted** **Risk Level:** CRITICAL **Command:** `rm -rf /tmp/test` **Reason:** Recursive deletion with force flag **Request ID:** `req_1769938492_9730` ℹ️ This command requires user approval to execute. **Approval Methods:** 1. In terminal: `safe-exec-approve req_1769938492_9730` 2. Or: `safe-exec-list` to view all pending requests **Rejection Method:** `safe-exec-reject req_1769938492_9730`
可通过环境变量自定义行为:
SAFE_EXEC_DISABLE —— 设为 '1' 可全局禁用 SafeExecOPENCLAW_AGENT_CALL —— Agent 模式(非交互)下自动启用SAFE_EXEC_AUTO_CONFIRM —— 自动批准 LOW/MEDIUM 风险命令启用 SafeExec:
Enable SafeExec
启用后,Agent 正常工作:
Delete old log files from /var/log
SafeExec 自动识别该操作属于 HIGH 风险(删除类),并在终端中显示审批提示。
安全操作则无需中断直接执行:
List files in /home/user/documents
此为 LOW 风险操作,无需审批即可执行。
查看当前状态:
safe-exec-list
查看审计日志:
cat ~/.openclaw/safe-exec-audit.log
全局禁用 SafeExec:
Disable SafeExec
或设置环境变量:
export SAFE_EXEC_DISABLE=1
发现 Bug?有新功能建议?
请提交至以下地址: 🔗 https://github.com/OTTTTTO/safe-exec/issues
我们欢迎社区反馈、Bug 报告及功能建议!
提交 Issue 时,请附带以下信息:
grep "VERSION" ~/.openclaw/skills/safe-exec/safe-exec.sh)~/.openclaw/safe-exec-audit.log)所有命令执行均记录以下字段:
日志路径:~/.openclaw/safe-exec-audit.log
SafeExec 所做的事:
SafeExec 不做的事:
git clone)SafeExec 与 OpenClaw Agent 无缝集成。启用后,无需修改 Agent 行为或命令结构即可透明运行。审批工作流完全在本地完成,不依赖任何外部通信平台。
SafeExec 运行于 会话层级,兼容 OpenClaw 实例所支持的所有通信渠道(WebChat、Feishu、Telegram、Discord 等)。审批流程通过您的终端完成,确保无论您以何种方式与 Agent 交互,始终保有完全控制权。
MIT 许可证 —— 详见 LICENSE 文件。
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习