Skip to main content

三种权限行为

每一次工具调用,系统都会做出三种裁决之一:
行为含义典型场景
Allow自动放行,用户无感知Read 工具读取项目内的文件
Ask弹出确认对话框,等待用户决定Bash 执行一条未知命令
Deny直接拒绝,AI 收到”权限被拒”的反馈尝试执行被禁止的命令

权限规则的层级

规则可以来自多个来源,优先级从高到低:
1

用户会话内设置

用户在当前对话中手动授权的(“对这个工具始终允许”)
2

项目配置

项目目录中的 .claude/settings.json,团队共享
3

用户全局配置

~/.claude/settings.json,跨项目生效
4

托管设置

企业管理员下发的策略,用户不可覆盖
5

默认规则

系统内置的基线规则

规则的匹配方式

权限规则不是简单的”允许/禁止某个工具”,它支持丰富的匹配条件:
  • 工具名匹配"tool": "Bash" → 针对所有 Bash 命令
  • 命令模式匹配"command": "git *" → 只针对 git 开头的命令
  • 路径匹配"path": "src/**" → 只允许操作 src 目录下的文件
  • 组合条件:以上条件可以组合使用

权限模式

系统提供几种预设的权限模式,适应不同信任级别:
模式适用场景
Default日常使用,敏感操作逐一确认
Plan Mode探索阶段,AI 只能读不能写
Bypass完全信任 AI,所有操作自动放行(需显式开启)

Denial Tracking

系统不仅记录”允许了什么”,还追踪”拒绝了什么”:
  • 如果 AI 被连续拒绝多次同一类操作,系统会调整策略
  • 这防止 AI 陷入”反复请求同一个被拒操作”的死循环