Agent Permissions(代理权限)
配置代理的行为,微调它在什么时候可以自主行动,什么时候需要你的批准。
Agent Permissions 让你定义代理的操作方式——控制它的自主权限,选择它能访问的工具或 MCP 服务器,并设置它什么时候能独立行动,什么时候要请求批准。你还可以微调它的自然语言行为及其他能力。
Agent Permissions 权限类型
你可以在 设置 > AI > Agents > Permissions 中控制代理在不同类型操作中的自主程度。主要权限类型包括:
- 读取文件(Read files)
- 创建计划(Create plans)
- 执行命令(Execute commands)
微调代理控制:该权限面板允许用户自定义代理在应用代码差异、读取文件、创建计划和执行命令时的自主程度,平衡安全和自动化。
每种权限都有不同的自主等级:
自主等级 | 描述 |
---|---|
Agent Decides(代理决定) | 当代理自信时会自主行动,不确定时请求批准。平衡速度和控制,适合常见工作流,复杂或风险步骤会征求你意见。 |
Always ask(始终询问) | 代理在采取任何操作前都会请求用户明确批准。适合敏感操作。 |
Always allow(始终允许) | 代理执行操作时无需请求明确确认。适合你完全信任代理处理的任务。 |
Never(从不允许) | 代理永远不会执行该操作(如禁止创建计划)。 |
当所有权限都设为 Always allow,代理获得完全自主(即“YOLO 模式”),但任何拒绝列表规则仍会优先生效。
Command allowlist(命令允许列表)
Warp 代理允许你定义允许自动执行的命令列表,无需确认。默认为空,但常见加入的只读命令包括:
which .*
— 查找可执行文件位置ls(\s.*)?
— 列出目录内容grep(\s.*)?
— 搜索文件内容find .*
— 查找文件echo(\s.*)?
— 打印文本
你可以在 设置 > AI > Agents > Command allowlist 添加自己的正则表达式。允许列表中的命令总是自动执行,即使它们不是只读操作。
Command denylist(命令拒绝列表)
为安全起见,代理执行潜在危险命令前总会请求确认。默认拒绝列表包括:
wget(\s.*)?
— 网络下载curl(\s.*)?
— 网络请求rm(\s.*)?
— 删除文件eval(\s.*)?
— 执行 Shell 代码
拒绝列表优先于允许列表和代理自主决定设置。匹配拒绝列表的命令总需用户许可。你可以在 设置 > AI > Agents > Command denylist 添加自定义正则表达式。
Run until completion(持续运行直到完成)
在代理交互期间,你可以赋予代理当前任务完全自主权限。开启自动批准后,每条建议命令会立即执行,直到任务完成或你用 Ctrl + C 停止。
系统 | 快捷键 |
---|---|
macOS | CMD + SHIFT + I |
Windows | CTRL + SHIFT + I |
Linux | CTRL + SHIFT + I |
右下角的按钮叠加层允许你开启自动批准或结束代理交互。
注意:Run until completion 会完全忽略拒绝列表,是最纯粹的“YOLO 模式”,代理无需确认即可继续执行。
MCP permissions(MCP 权限)
MCP 服务器允许你通过标准化的插件模块扩展代理,接入自定义工具和数据源。
在此设置菜单,你可以配置代理允许调用的 MCP 服务器:
- 通过 MCP 允许列表(allowlist)允许代理无需确认直接调用指定服务器。
- 通过 MCP 拒绝列表(denylist)要求代理调用某些服务器前必须获得批准,即使它们在允许列表内。
- 或设为“代理决定”,让代理自信时自主调用,不确定时请求确认。
自定义代理调用 MCP 服务器的方式,选择“代理决定”、“允许列表”或“拒绝列表”。
想了解如何构建和配置你自己的 MCP 服务器,请参考 MCP 功能文档。