AI 编程教程中文版
官方教程中文版Agent 工作流

Agent 安全边界

基于 Cursor 官方 Agent Security 和 Privacy 文档解释审批、.cursorignore、allowlist、MCP、网络、workspace trust 和 Privacy Mode。

Cursor Agent 能读文件、改文件、跑命令、连工具,也会面对 prompt injection、hallucinations 和其它不确定行为。官方 Agent Security 文档的核心结论是:默认敏感动作需要人工批准,这些 guardrails 建议保持开启。

阅读目标:读完本章,你应该能说清哪些 Agent 动作默认要审批,.cursorignore 和 allowlist 的边界是什么,以及 Privacy Mode 覆盖和不覆盖什么。

1. 默认 guardrails

官方文档说明:这些控制和行为是默认值,并建议保持开启。

动作默认行为你要做什么
Read files / search code不需要审批.cursorignore 阻止 Agent 访问特定文件
Edit workspace files可直接保存到磁盘必须用 Git,随时可 revert
Edit configuration files需要审批看清影响范围再批准
Run terminal commands默认需要审批每条命令都要审查
Sensitive data exposure需要明确批准不让 Agent 触碰密钥、客户数据、生产凭据
MCP tool calls连接和每次调用都需要审批只批准必要工具

官方特别提醒:如果项目启用了 auto-reload,Agent 保存的改动可能在你 review 前就被执行。前端 dev server、watch scripts、热更新后台都属于这类风险面。

2. 文件和配置

Agent 可以不经审批修改 workspace files,但 configuration files 需要你先批准。官方给出的工程建议是:始终使用 version control,这样 Agent 走错时可以回退。

flowchart TD
  Agent["Cursor Agent"] --> Read["Read / search files"]
  Agent --> Edit["Edit workspace files"]
  Agent --> Config["Edit configuration files"]
  Agent --> Terminal["Run terminal commands"]
  Read --> Ignore["Use .cursorignore for blocked files"]
  Edit --> Git["Use Git for revert path"]
  Config --> Approval["Manual approval"]
  Terminal --> Review["Review every command"]

.cursorignore 是文件可见性的边界工具。它适合屏蔽 secrets、private notes、customer exports、large generated files 等不应进入 Agent context 的内容。

3. Terminal、allowlist 和 Run Everything

官方文档说明:terminal commands 默认需要审批。你可以启用 auto-approval,但这是接受风险后的选择。

关键边界:

  • Allowlist 是 best-effort,不是安全保证。
  • Bypass 是可能的。
  • 不要使用 Run Everything mode,因为它会跳过所有 safety checks。
  • Terminal commands 和 MCP tools 的 allowlists 可以通过 settings UI 或 ~/.cursor/permissions.json 管理。
深读:allowlist 为什么不是安全边界

Allowlist 的目标是减少重复审批,不是证明命令安全。命令可能通过 shell expansion、脚本间接调用、参数拼接或外部工具行为绕过你的直觉。

所以 allowlist 只适合低风险、可预测、幂等的命令。涉及删除、网络上传、权限修改、生产数据、密钥读取的动作,不应该靠 allowlist 放行。

4. MCP 和网络请求

官方文档说明:第三方工具通过 MCP 接入。所有 MCP connections 都需要审批;连接批准后,每次 tool call 仍然需要单独审批。你可以为特定 tools 预批准 MCP allowlist。

网络请求方面,官方说明默认工具只会向这些方向发起网络请求:

  • GitHub。
  • Direct link retrieval。
  • Web search providers。

默认设置下,Agents 不能发起 arbitrary network requests。团队里一旦接入 MCP 或命令行工具,就要重新评估网络出口。

5. Workspace Trust

Cursor 支持 VS Code 的 workspace trust,但官方说明它默认关闭。启用后,新 workspace 会提示你选择 normal 或 restricted mode;restricted mode 会破坏 AI features。对 untrusted repos,官方建议用基础文本编辑器。

启用方式是在 user settings.json 中加入:

"security.workspace.trust.enabled": true

组织可以通过 MDM(Mobile Device Management,移动设备管理,企业用来统一推下发设备策略的系统)enforce 这个设置。

6. Privacy Mode

官方 Privacy 文档说明:Privacy Mode 会确保你的代码不会被 AI model providers 存储或用于训练。开启后,Cursor 会对 OpenAI、Anthropic、Google、xAI 等 model providers 执行 zero data retention agreements(ZDR,零数据保留协议——供应商承诺请求处理完成后立即删除数据)。

开启入口:

系统打开 Cursor Settings
MacCmd + Shift + J
Windows / LinuxCtrl + Shift + J

进入 General 后打开 Privacy Mode。Teams 默认开启 Privacy Mode;Admins 可以在 dashboard 里 organization-wide enforce,防止成员关闭。

Privacy Mode 仍有边界:

  • 使用 AI features 时,prompts 和 code context 仍会发送给 model providers。
  • Privacy Mode 开启后,providers 不能存储或训练这些数据。
  • 数据 at rest 和 in transit 都加密。
  • 使用自己的 API keys 时,ZDR 不适用,数据处理遵循你所用 provider 的 privacy policy。

7. 团队安全清单

落地 Cursor Agent 前,至少定这些规则:

  • 哪些文件进入 .cursorignore
  • 哪些 terminal commands 可以审批,哪些必须禁止。
  • 是否允许 auto-approval。
  • 禁止 Run Everything
  • 哪些 MCP servers 可以连接。
  • MCP tools 是否允许 allowlist。
  • Privacy Mode 是否强制开启。
  • 自带 API keys 时由谁负责 provider privacy policy。
  • Agent 造成改动后,必须用 Git diff、测试和 review 验收。

本章自检

完成本章后,用这 3 个问题检查自己是否真正理解:

  1. Cursor Agent 对文件读取、文件编辑、配置编辑、终端命令的默认审批边界分别是什么?
  2. 为什么 allowlist 不是安全保证?
  3. Privacy Mode 开启后,什么数据仍会发送给 model providers,什么不会被他们存储或训练?

通过标准:你能为一个团队 Cursor 项目写出最小安全策略,覆盖文件、命令、MCP、网络、Privacy Mode 和回退。

官方来源

  • Cursor Agent Security —— 官方说明 first-party tools、terminal approval、allowlist、MCP、network requests、workspace trust 和 disclosure。
  • Cursor Privacy and Data —— 官方说明 Privacy Mode、ZDR、AI providers、team enforcement、API key exception 和 enterprise controls。
  • Cursor Permissions Reference —— 官方说明 terminal 和 MCP allowlist 配置。

接下来去哪

本页目录