Tools 导读
Exec approvals — advanced:它会替你伸哪只手
Exec approvals — advanced 不是名词卡片,而是一只会伸出来帮忙的手。你要看清它什么时候出手、抓进去什么、递回来什么,还有每个参数到底像哪颗按钮。原文最响的一记鼓点,其实是:Advanced exec-approval topics: the safeBins fast-path, interpreter/runtime binding, and…。
先讲这一页到底在解决什么
Exec approvals — advanced:它会替你伸哪只手
Exec approvals — advanced 不是名词卡片,而是一只会伸出来帮忙的手。你要看清它什么时候出手、抓进去什么、递回来什么,还有每个参数到底像哪颗按钮。原文最响的一记鼓点,其实是:Advanced exec-approval topics: the safeBins fast-path, interpreter/runtime binding, and…。
第一站
safeBins 像“只能处理递进来的纸条”的小剪刀
有些命令很小,只负责整理输入内容,比如从一段文本里剪出几列。OpenClaw 可以把这类命令放进 safeBins,让它们在 allowlist 模式下更顺畅。
它只能吃别人递给它的输入,不能自己拿文件路径去翻主机里的东西。像小剪刀只能剪桌上的纸,不能开抽屉。
python3、node、bash 这类工具会执行代码,能力太大,不能当成“小剪刀”快放行。
OpenClaw 看的是参数形状,不靠“这个文件存不存在”来判断,避免让命令审批变成探测文件的小缝。
safe bin 必须从可信二进制目录里找到,默认很收紧,比如 /bin 和 /usr/bin。
第二站
解释器和 shell 像万能工具箱,所以要绑得更紧
普通命令可能只是做一件事,解释器却能读文件、跑代码、再叫别的命令。高级审批会把这类运行方式看得更严。
&&、;、管道这类组合,必须每一段都满足规则。像一串小火车,每节车厢都要验票。
npx、npm exec、pnpm exec 这类包装纸会被拆开,不能靠换一层外衣绕过审批。
shell wrapper 只允许很小一组请求级环境变量,例如颜色和语言相关项,减少偷偷带东西进去的机会。
能执行代码的工具,就不应该享受 safe bin 的快速通道。
第三站
审批转发像把“请签字”纸条送到聊天软件
审批不一定只留在本地页面。OpenClaw 可以把 exec 或 plugin 审批请求送到 Slack、Matrix、Teams、Discord、Telegram 等通道,让有权限的人用 /approve 处理。
如果请求本来就从可投递聊天里来,通常可以在同一个聊天里批准,像原地递回签字纸。
有些通道还能用原生按钮或卡片,体验更像真正的审批弹窗。
approvals.exec 和 approvals.plugin 是两套开关。开一个,不代表另一个也开。
macOS 伴随应用的审批链路会用本地 socket、token、HMAC 和短时效校验,尽量保证“签字纸”没被别人调包。
最后总结
把高级审批压成一句话
这一页是在教你把命令审批做细:小而受限的工具可以快一点,万能解释器必须严一点,审批纸条可以安全地送到合适的聊天通道。