MCP、权限与安全
Antigravity MCP 与安全控制:Allow、Deny、Ask、terminal sandbox、workspace file access、browser allowlist 和 MCP 权限资源。
Antigravity 的权限系统是商业使用的核心。它能读写文件、跑命令、打开浏览器、执行 JavaScript、访问 URL、调用 MCP。如果不先定义边界,agent-first 会很快变成 risk-first。
推荐默认:Request Review(请求人工审阅)+ terminal sandbox(终端沙箱)+ workspace-only file access(仅 workspace 内文件访问)+ browser URL allowlist(浏览器 URL 白名单)。等某个 workspace 的任务稳定后,再把低风险动作逐步加入 allowlist。
1. 三类权限列表
Codelab 描述 Antigravity 用统一权限系统控制 agent 行为,每个动作可以放入三类列表:
| 列表 | 含义 | 适合什么 |
|---|---|---|
| Allow | 自动批准 | 低风险、重复、可回退动作 |
| Deny | 立即阻止 | 删除、泄露、越权、危险命令 |
| Ask | 暂停并请求批准 | 默认策略,尤其是真实项目 |
权限项格式是:
action(target)2. 常见 action
| Action | Target 示例 | 说明 |
|---|---|---|
command | command(git) / command(*) | 按命令前缀匹配 |
read_file | read_file(/absolute/path) | 读取文件或目录 |
write_file | write_file(/absolute/path) | 写入文件或目录,同时隐含读取 |
read_url | read_url(example.com) | 匹配域名和子域名,不按 path 细分 |
mcp | mcp(server/tool) / mcp(server/*) | 控制 MCP server 或 tool |
文件路径必须是 literal absolute path。不要假设 ~、glob 或 regex 会按 shell 习惯生效。
3. Allow List 的正确用法
Allow List 适合 Request Review 策略下的正向授权:默认都要问,只有明确安全的动作自动通过。
示例:
command(ls)
command(git status)
read_url(antigravity.google)
read_url(developers.googleblog.com)不建议第一天 allow:
command(rm)
command(curl)
command(ssh)
command(git push)
read_file(/Users/your-name)
write_file(/)
mcp(*)4. Deny List 的风险
Deny List 更像 Always Proceed 策略下的护栏:默认允许,只有列出的动作阻止。它速度快,但依赖你提前想全危险动作。
更适合 deny 的项:
- 删除命令前缀
- 上传命令前缀
- 写入系统目录
- 访问凭据目录
- 生产后台 URL
- 未审计 MCP server
对真实项目,不要只靠 Deny List。更稳的是 Request Review + Allow List 的正向安全模型。
5. Terminal sandbox
Codelab 建议开启 terminal sandbox。它能限制 terminal 命令的运行环境,但不能替代权限审阅。
正确心智模型:
flowchart LR
Prompt["用户任务"] --> Permission["权限策略"]
Permission --> Sandbox["Terminal sandbox"]
Sandbox --> Command["命令执行"]
Command --> Evidence["输出 / diff / artifact"]
Permission -.阻止越权.-> Stop["Ask / Deny"]
Sandbox -.限制运行环境.-> Command
Permission 决定能不能做,sandbox 限制怎么做。两者不是替代关系。
6. File Access Policy
Codelab 明确说明,默认 agent 只能访问 workspace 文件。这是合理默认。Agent Non-Workspace File Access 打开后,agent 可以自动查看和编辑 workspace 外文件,也会增加密钥、私人文件、prompt injection 的风险。
建议:
- 默认关闭非 workspace file access。
- 确实需要读取外部文件时,用最小绝对路径授权。
- 不授权家目录、凭据目录、同步盘根目录。
- 任务结束后移除临时授权。
7. Browser URL Allowlist
浏览器 agent 可以读页面、点击、输入、执行 JavaScript、截图和录屏。对未知网页,风险来自网页内容对 agent 的诱导。
建议:
| 场景 | URL 策略 |
|---|---|
| 查官方文档 | allow 官方域名 |
| 测本地应用 | allow localhost 或固定本地域 |
| 登录后台 | 默认人工操作,agent 只读或禁用 |
| 第三方内容页 | 临时 allow,任务后移除 |
8. MCP 权限
Antigravity 文档提供 MCP 集成。MCP 的安全重点是:server 暴露了哪些 tool,tool 能读写什么,是否会联网或触发外部副作用。
初始策略:
- 只接必要 MCP server。
- 只把当前任务需要的 tool 放进 Allow。
- 写操作和外部提交类 tool 默认 Ask。
- 每个 workspace 单独审计 MCP 配置。
官方来源
- Antigravity MCP Integration
- Antigravity Allowlist / Denylist
- Getting Started with Google Antigravity