必须启用白名单模式并配置命令级权限:将config.yaml中whitelist_mode设为true,添加tool_whitelist规则限制命令及参数,禁用rm等高危指令,通过soul.md或owner_scopes绑定角色与路径权限,最后用日志验证拦截效果。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想让AionClaw在执行文件操作或命令时不会误删重要数据、乱改系统配置,必须主动限制它的执行权限,而不是依赖它“自觉不越界”。AionClaw虽自带Docker沙箱与ACP审批机制,但默认未开启白名单模式,所有工具调用均需人工逐次确认,效率低且易疲劳松懈——一旦连续点击“允许”,就等于临时解除了安全锁。
启用白名单模式(强制只运行已授权命令)
打开AionClaw安装目录下的 config.yaml 文件,定位到 security 区块。
将 whitelist_mode: false 改为 whitelist_mode: true,保存文件。
重启AionClaw服务。此时所有未列入白名单的工具调用(如rm、curl、git push等)将被直接拦截,不再弹出ACP审批窗口——【这是关键开关,关闭后白名单形同虚设】。
配置命令级白名单(按需放行具体指令)
在同个 config.yaml 中,找到 tool_whitelist 列表项。
添加你日常真正需要的命令及其参数约束,例如:
- cmd: "cp"<br> args_pattern: "^-r?\s+/home/[^/]+/work/.*\.docx\s+/backup/.*$"
这条规则只允许复制 /home/{用户名}/work/ 下的 Word 文档到 /backup/ 目录,且禁止使用 -f 强制覆盖参数。
不要写 cmd: "rm" 这类高危命令,哪怕加了参数限制也建议彻底禁用——【删除类操作应通过专用“归档”技能替代,而非开放 shell 命令】。
绑定用户操作意图与工具权限(角色化管控)
方法一:用 SOUL.md 定义角色能力边界
进入 agents/your_role_name/ 目录,编辑 SOUL.md,在 ## Capabilities 下明确声明:“仅可读取 ~/Documents/report/ 下 Excel 文件,不可写入、不可执行 shell 命令”。
方法二:通过 owner_scopes 限定访问路径
在 config.yaml 的 agent 配置段中加入:
owner_scopes:<br> - path: "/home/{user}/Documents"<br> read: true<br> write: false<br> exec: false
这会从权限层切断该智能体对文档目录的写入和执行能力,即使白名单里误放了 mv 命令也无法生效。
验证白名单是否生效(三步快速检测)
第一步:向AionClaw发送指令:“把桌面所有 .tmp 文件删掉”。
第二步:观察日志面板(快捷键 Ctrl+Shift+L)是否出现 REJECTED: cmd 'rm' not in whitelist 字样。
第三步:再发一条白名单内允许的指令,例如:“把 ~/work/q3-summary.xlsx 复制到 ~/backup/”,确认执行成功且目标文件确实生成。











