Claude Code 6 种权限模式对照表
Claude Code(Claude 的命令行 / IDE 工具)的 6 种权限模式对照表,整理成更清晰的版本,并补充关键解读与使用建议👇
📋 模式完整对照表
| 模式 | 核心作用 | 开启方式(3 种途径) | 适用场景 |
|---|---|---|---|
default | 默认模式:只读操作直接执行,文件修改 / 命令执行会弹窗询问 | 1. 默认启动; 2. 命令行: 3. | 新项目、敏感代码、首次使用,最安全 |
acceptEdits | 自动接受文件编辑和常见文件系统命令(如mkdir/rm),但高风险命令仍会询问 | 1. 会话中按 2. 命令行: 3. | 日常代码编写、文件重构,减少确认疲劳 |
plan | 只读模式:仅分析、读文件、写方案,不修改任何代码 / 文件 | 1. 会话中按 2. 命令行: 3. 单条消息前加 | 大规模重构前梳理方案、风险评估、只想看思路不碰代码 |
auto | 自动执行大多数操作,内置 AI 安全检查:低风险操作直接放行,高风险操作(如删除、推送)仍会回退到手动确认 | 1. 命令行: 2. 3. 部分场景下 | 自动化脚本、长任务、生产环境可用(比纯手动高效,比激进模式安全) |
dontAsk | 静默拒绝:不会弹窗询问,只有预先在配置中批准的工具 / 命令才能执行,其余全部拒绝 | 1. 命令行: 2. | CI/CD 流水线、受限自动化环境,必须依赖配置白名单 |
bypassPermissions | 最激进模式:跳过几乎所有权限检查,无确认直接执行所有命令(仅保护.git/.claude等关键目录) | 1. 命令行: 2. | 仅限隔离容器 / 虚拟机环境,严禁在本地直接使用,有数据丢失风险 |
💡 关键解读与避坑指南
模式切换方式
Shift+Tab是会话内快速切换的快捷键,但 **dontAsk和bypassPermissions不在这个循环里 **,必须通过命令行或配置文件开启。- 配置文件的
defaultMode是全局默认,开启后所有会话默认用该模式,临时模式可在会话中用快捷键覆盖。
安全与效率的平衡建议
你的场景 推荐模式 理由 刚上手 / 处理敏感代码 default每步确认,零误操作风险 日常开发 / 代码重构 acceptEdits兼顾效率与安全,大部分编辑自动过,高危操作仍会提醒 想先看方案再动手 plan完全只读,不会意外修改文件 自动化脚本 / CI 环境 auto/dontAskauto适合需要安全兜底的自动化;dontAsk适合有严格白名单的场景本地直接运行(不推荐) ❌ bypassPermissions可能误删文件、泄露数据,仅隔离环境可用 高危模式警告
bypassPermissions官方标注了dangerously-skip-permissions,意味着它完全关闭了用户确认和安全检查,可能执行rm -rf、修改系统文件、推送敏感代码等操作,绝对不要在本地开发环境直接使用。
🔧 补充:如何设置全局默认模式
编辑 Claude Code 的配置文件(通常路径:~/.claude/settings.json),添加如下字段即可:
json
{ "defaultMode": "acceptEdits" }保存后重启 Claude Code,所有会话就会默认使用你设置的模式了。
