[x-cmd] 为 ClaudeCode / OpenClaw 加上沙盒隔离,保护你的 Mac - x-cmd 沙盒使用指南
x mac sb工具为Mac用户提供了AI编程助手的安全运行方案。该工具基于macOS原生sandbox-exec封装,通过沙盒隔离防止AI执行危险命令或访问敏感数据。主要功能包括:1)禁止访问SSH密钥等敏感目录;2)防止误删重要文件;3)按最小权限原则运行脚本。提供黑名单(-9)和白名单(-0)两种模式,支持细粒度权限控制。典型应用场景包括保护.git目录、限制网络访问等,有效降低AI幻觉或被
为 ClaudeCode / OpenClaw 加上沙盒隔离,保护你的 Mac - x-cmd 沙盒使用指南
如果你想持续获取更多相关资讯,欢迎关注 x-cmd 博客。
当你在 Mac 上运行 ClaudeCode、OpenClaw 等 AI 编程助手时,它们会执行各种命令——用户提供的脚本、第三方工具、AI 生成的代码。沙盒隔离是防止 AI 执行错误命令(如 rm -rf /)和 恶意脚本盗取数据(SSH 密钥、云凭证)的关键手段。

x mac sb 对 macOS 原生的 sandbox-exec 进行封装,提供规则集和精细权限控制,让 AI 编程助手以最小权限原则执行命令。
快速上手

禁止访问敏感目录
# 禁止 claude 访问 SSH 密钥、Library 等
x mac sb -9 -d "$HOME/.ssh" -d "$HOME/Library" claude

防止 AI 误删仓库历史
# 禁止 claude 写入 ~/project/.git 目录,防止误删仓库历史
x mac sb -9 -d w:~/project/.git claude
最小权限运行脚本
# 仅允许读取 ~/project 目录
x mac sb -0 -a r:~/project -a x:/bin/bash bash ~/project/script.sh
# 禁用网络访问权限
x mac sb -9 --no-net curl --head https://x-cmd.com
为什么需要沙盒?
AI 编程助手面临两大风险:
- AI 幻觉或被毒害:执行
rm -rf /类的错误命令,或被提示词注入操纵 - 恶意脚本:偷偷上传用户数据、读取 SSH 密钥、云凭证
x mac sb 通过 sandbox-exec 机制建立安全边界,即使出现问题也能控制在最小范围。
案例场景
案例 1:禁止访问敏感目录
场景:ClaudeCode 在执行任务时,可能会尝试访问用户的 SSH 密钥、云凭证等敏感数据。
解决:禁止访问敏感目录
x mac sb -9 -d "$HOME/.ssh" -d "$HOME/.aws" -d "$HOME/.kube" claude
这样 ClaudeCode 可以正常读写项目文件,但无法访问 SSH 密钥和云凭证。
案例 2:禁止删除重要文件
场景:用户让 ClaudeCode 清理项目,AI 错误地准备删除 .git 目录。
解决:禁止删除特定目录
x mac sb -9 -d w:~/project/.git claude
此时 AI 即使执行 rm -rf .git 也会失败,不会丢失版本历史。
FAQ
Q: 运行 ClaudeCode 时,完全禁止网络会影响正常使用吗?
会的。ClaudeCode 需要网络连接来与后端通信。如果完全禁用网络,AI 将无法工作。
建议采用黑名单模式:使用 -9 默认允许所有,然后仅禁止敏感目录:
x mac sb -9 -d "$HOME/.ssh" -d "$HOME/.aws" claude
Q: 如何防止 AI 执行破坏性的写操作?
使用 -d w:目录 禁止写入特定目录。例如只允许在项目目录读取,禁止写入:
x mac sb -9 -d w:~/project claude
Q: 规则集 -9 和 -0 有什么区别?
-9:默认允许所有,用-d逐个禁止(黑名单模式,适合大多数场景)-0:默认拒绝所有,用-a逐个授权(白名单模式,适合高安全要求)
Q: 可以同时使用规则集和权限选项吗?
可以。规则集提供基础权限,权限选项在此基础上调整。例如:
x mac sb -3 -a ~ bash -c 'ls ~'
规则集 -3 提供基础权限,-a ~ 额外授权 home 目录。
Q: 调试时如何查看生成的沙盒配置?
使用 --dryrun 仅打印配置不执行,或 --pp 打印完整策略:
x mac sb --dryrun -9 -d "$HOME/.ssh" claude
更多推荐


所有评论(0)