settings.json:配置系统
settings.json 是 Claude Code 配置的所在之处——权限、钩子、环境变量、模型默认值等等。理解层级是关键。
层级(从最全局 → 最具体)
更靠后(更具体)的层级会覆盖更靠前的:
- 企业 / 受管——由组织管理员设定的策略。压倒一切。
- 用户——
~/.claude/settings.json。你跨所有项目的默认值。 - 项目(共享)——
.claude/settings.json,提交到仓库。全团队生效。 - 项目(个人)——
.claude/settings.local.json,被 git 忽略。你对这个仓库的覆盖项。
:::tip 提交共享文件,忽略本地文件
把团队约定放进 .claude/settings.json(提交)。把个人微调和机器特定路径放进 .claude/settings.local.json(被 git 忽略)。这样既能保持团队一致,又不会把你的偏好强加于人。
:::
你通常会设置什么
安全地编辑
- 保持有效的 JSON(一个多余的逗号就会破坏它)。
- 优先使用窄范围的权限规则,而非宽泛的。
- 绝不要把密钥放进已提交的文件——改用
env引用或密钥管理器。
可直接复制的起始文件见钩子与 settings.json 配方。