Agent Permissions(代理权限)

配置代理的行为,微调它在什么时候可以自主行动,什么时候需要你的批准。

Agent Permissions 让你定义代理的操作方式——控制它的自主权限,选择它能访问的工具或 MCP 服务器,并设置它什么时候能独立行动,什么时候要请求批准。你还可以微调它的自然语言行为及其他能力。


Agent Permissions 权限类型

你可以在 设置 > AI > Agents > Permissions 中控制代理在不同类型操作中的自主程度。主要权限类型包括:

  • 读取文件(Read files)
  • 创建计划(Create plans)
  • 执行命令(Execute commands)

Agent Permissions - 图1 微调代理控制:该权限面板允许用户自定义代理在应用代码差异、读取文件、创建计划和执行命令时的自主程度,平衡安全和自动化。


每种权限都有不同的自主等级:

自主等级 描述
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

Agent Permissions - 图2 右下角的按钮叠加层允许你开启自动批准或结束代理交互。

注意:Run until completion 会完全忽略拒绝列表,是最纯粹的“YOLO 模式”,代理无需确认即可继续执行。


MCP permissions(MCP 权限)

MCP 服务器允许你通过标准化的插件模块扩展代理,接入自定义工具和数据源。

在此设置菜单,你可以配置代理允许调用的 MCP 服务器:

  • 通过 MCP 允许列表(allowlist)允许代理无需确认直接调用指定服务器。
  • 通过 MCP 拒绝列表(denylist)要求代理调用某些服务器前必须获得批准,即使它们在允许列表内。
  • 或设为“代理决定”,让代理自信时自主调用,不确定时请求确认。

Agent Permissions - 图3 自定义代理调用 MCP 服务器的方式,选择“代理决定”、“允许列表”或“拒绝列表”。

想了解如何构建和配置你自己的 MCP 服务器,请参考 MCP 功能文档