工作区读取边界
在 Cursor 3.23 及以上限制工作区外读取,并配置个人或团队 Read Allowlist。
Read Access 控制 Agent 的文件读取、搜索和沙箱命令是否可以自由读取工作区外内容,需要 Cursor 3.23 或以上。在 Settings > Agents > Approvals & Execution > Read Access 设置。
两种范围
| 模式 | 行为 |
|---|---|
| System | 默认;工作区外文件可不经批准读取 |
| Workspace | 工作区内自由读取,外部需批准或进入 Read Allowlist |
Workspace 下,外部文件读取提示会显示完整路径与原因;Grep 搜索跳过边界外文件。macOS/Linux 沙箱命令可访问工作区、读取 allowlist 和运行工具必要的系统库、工具链及证书路径。
边界还包括该项目在 ~/.cursor/projects 下的目录,以及 ~/.cursor 中的 skills、rules、plugins 目录。沙箱命令使用项目私有临时目录,避免直接读取宿主临时目录。
添加必要路径
{
"readBoundary": "workspace",
"additionalReadPaths": ["/opt/shared/design-tokens", "~/notes/*.md"]
}将这些字段放入 sandbox.json;项目文件优先于用户文件,并覆盖 Cursor settings 对应值。目录条目允许其全部子内容,~ 展开到用户目录。
glob 对文件工具按模式匹配,但沙箱命令无法匹配 glob,会得到该模式父目录的读取权限。添加 ~/notes/*.md 时应理解 shell 可见范围比文件筛选更宽。
CLI 可在 cli-config.json 设置 sandbox.readBoundary,并用 permissions.allow 中的 Read(...) 作为 allowlist;sandbox.json 会覆盖两者。
团队强制与例外
Enterprise 管理员可为团队或 Organization Group 启用 Read Controls 并选择 Workspace。团队列表加入个人列表;关闭 Read Control User Extensions 后只使用团队列表,本地配置不能扩展它。
Run Everything 不应用 Read Access,因此界面隐藏此选项。不能在该模式下依赖 Workspace 来维持读取限制。