[x-cmd] 当 AI 获得 root 权限,你需要了解的两种沙盒方案
让 AI 在你的 Mac 上执行命令,就像让一个新实习生拥有管理员权限一样——它可能很聪明,但也可能闯祸。

为什么需要沙盒?
AI 虽然强大,但仍然可能:
- 误删重要文件
- 执行意外的批量操作
- 访问敏感数据(SSH 密钥、API 密钥等)
- 安装不需要的软件
Claude Code 沙盒
Claude Code 内置沙盒隔离,依赖:
- macOS: Seatbelt 框架
- Linux/WSL2: bubblewrap + socat
启用:运行 /sandbox 后选择 auto-allow 模式 
实测:开启后大部分操作自动放行(权限提示减少),遇到特殊权限(沙箱外的访问)才会提示。
另外,Anthropic 还开源了一个沙盒工具项目 @anthropic-ai/sandbox-runtime。
x-cmd 沙盒
x-cmd 沙盒提供更精细的控制,它基于 macOS 原生 sandbox-exec,支持 10 级权限梯度:
| -0 | 默认拒绝一切 |
| -1 | 允许系统二进制 (/bin, /usr/bin) |
| -2 | + 临时文件 /dev 设备 |
| -3 | + 用户 bin (~/.bun/bin 等) |
| -4 | + fork / tty (交互式 bash) |
| -5 | + x-cmd 自身 |
| -6 | + 字体访问 |
| -7 | + 网络 |
| -8 | + 剪贴板 |
| -9 | 默认允许一切 |
核心示例:
# 保护 SSH 密钥,禁止 AI 访问
x mac sb -9 -d "$HOME/.ssh" claude
常见问题
Q1: 如何判断是否需要开启沙盒?
如果你满足以下任一条件,建议开启沙盒:
- 经常让 AI 执行删除类操作
- 工作目录中有重要数据
- 担心 AI 误访问敏感文件
- 是在生产环境使用 AI 工具
Q2: 沙盒会导致AI变笨吗?
不会变笨,只是加了限制,防止它做出无可挽回的事。沙盒的目的是在不影响 AI 正常工作的前提下,阻止危险操作(如删除系统文件、访问敏感数据)。
Q3: 可以同时使用两种沙盒吗?
可以。Claude Code 沙盒和 x-cmd 沙盒可以叠加使用,提供多层保护。但注意两者可能产生冲突,建议先熟悉各自的行为后再组合使用。
Q4: 沙盒是否可以随时关闭?
可以。两个沙盒都可以随时退出或关闭,关闭后 AI 恢复完整权限。



