了解 Claude Code 的权限系统——控制 Claude 能做什么、不能做什么。
四种权限模式
按 Shift+Tab 在四种权限模式之间切换:
1. 默认模式
行为:Claude 在编辑文件和运行 Shell 命令前会询问你。
适用场景:日常使用,需要审核所有更改。
2. 自动接受编辑
行为:Claude 可以不经询问编辑文件和运行常用文件系统命令(如 mkdir、mv、cp),其他命令仍需确认。
适用场景:你已经信任 Claude 的编辑能力,想加快开发速度。
3. 计划模式
行为:Claude 只使用只读工具(读取文件、搜索、分析)。它会创建一个详细的计划,等你批准后再执行。
适用场景:复杂的架构变更、重构计划,需要先审查方案再实施。
4. 自动模式
行为:Claude 通过后台安全评估检查所有操作。这是研究预览版功能。
适用场景:快速迭代,同时保持一定的安全保障。
允许特定命令
在 .claude/settings.json 中可以配置特定命令,Claude 不需要询问就能执行:
{
"permissions": {
"allowedCommands": [
"npm test",
"pytest",
"git status",
"git diff",
"ls",
"cat"
]
}
}
设置的作用域
Claude Code 的设置可以在不同层级配置:
| 层级 | 文件位置 | 作用范围 |
|---|---|---|
| 组织级 | 服务端管理设置 | 整个组织的所有项目 |
| 项目级 | 项目/.claude/settings.json | 当前项目 |
| 用户级 | ~/.claude/settings.json | 所有项目的个人偏好 |
安全建议
- 新接触的项目从默认模式开始:熟悉 Claude 的行为后再考虑放宽权限
- 使用允许命令列表而不是完全自动:给常用命令授权,而不是完全关闭审核
- 对于重要变更使用计划模式:先审查方案再批准执行
- 定期检查权限设置:确保没有不小心授权了危险命令
沙箱权限
Claude Code 的沙箱功能可以限制其操作范围。详见沙箱安全。