Skip to main content
权限系统拦截智能体发起的每一次工具调用,并给出三种决策之一:允许执行、拒绝执行,或询问用户确认。 决策由三个组件共同驱动,每个组件都有独立的页面介绍: 下面的时序图展示了一次工具调用在系统中的流转。ASK 决策会连同自动生成的建议规则一起呈现给用户;接受建议后规则会被持久化,之后相同的调用不再询问:

决策矩阵

每次调用都自上而下依次经过相同的决策点,第一个给出裁决的决策点即为最终结果。下表按模式展示各决策点的产出:“跳过”表示该模式完全不咨询这一步;当某一步保持沉默(规则未命中,或工具返回 PASSTHROUGH)时,评估继续向下,直到兜底: 各行的含义:
  • ① / ② / ⑤ 规则:用户配置的匹配模式,拒绝与询问规则先评估,允许规则靠后。拒绝规则与询问规则在所有模式下始终生效(DONT_ASK 下询问规则转为 DENY,因为没有用户可以回答)。
  • ③ 只读快速通道:如果本次调用在事实上是只读的(check_read_only(tool_input)),在所有模式下都会自动放行。该判定针对每次调用,而非静态的工具标记:git status 通过,写文件的 Bash 命令不通过,被标记为命令注入风险的命令永远不视为只读。
  • ④ 工具 check_permissions:工具检查本次调用,返回 ALLOW、DENY、ASK 或 PASSTHROUGH。安全 ASKbypass_immune=True)无法被第 ⑤ 步的允许规则静默,普通 ASK 可以。针对编辑操作的工作目录自动放行也在这一步发生。
  • ⑥ 兜底:以上都未裁决时按模式收尾,这也是各模式性格的来源:询问(DEFAULT / ACCEPT_EDITS)、拒绝(EXPLORE / DONT_ASK)、放行(BYPASS)。
各模式的完整决策流程图参见权限模式;安全 ASK 在各模式下的精确处理参见安全检查契约

常见场景

下面的示例展示了如何为常见部署场景配置 AgentState.permission_context。每个示例把一种模式与一组规则结合,匹配特定的使用场景。

延伸阅读

权限模式

选择全局策略,查看各模式的完整决策流程。

权限规则

编写允许/拒绝/询问规则,运行时接受建议规则。

工具内置检查

只读判定、危险路径保护与自定义安全检查。

工具

权限系统所管辖工具的注册与管理。