31 · settings.json 配置详解
用户级、项目级和本地 settings.json 的路径、优先级与常用字段,说明权限、环境变量、Hook 和插件配置如何安全落盘。
settings.json 是 Claude Code 的「总开关面板」。你散落在各处的选择——权限、模型、环境变量——都可以集中写在这里。
「三级路径」先搞清:settings.json 分用户级、项目级、本地级,放的位置不同,作用范围也不同。用户级影响所有项目,项目级只影响当前项目,本地级只影响你这台机器。
「优先级」是重点:当多级配置冲突时,谁说了算?通常「更具体」的覆盖「更通用」的——本地 > 项目 > 用户。所以你可以用户级设默认,项目级做覆盖。
「常用字段」里,权限相关(allow/deny 规则)、模型偏好、环境变量、Hook 配置、插件启用,都是高频内容。
「安全落盘」要提醒:settings 里可能包含敏感信息(比如 token、密钥)。这些写进配置文件,要注意文件权限,别让不该看到的人看到。
给你的「配置思路」:先写一个偏保守的全局默认,再针对个别项目做局部覆盖。别一上来写一大坨,先最小可用,再逐步加。
写配置最怕「复制别人的却不懂每行意思」。每加一行,都搞清楚它在干什么,否则出了问题都不知道从哪查。
常见误区:很多新手会把这一篇讲的「基本规则」当成「教条」——什么都严格遵守。其实这些规则的核心是「降低风险、提高效率」,理解了动机,规则就自然内化了,不用死记硬背。
动手试一下:你可以花 5 分钟做一个最小验证——找一个真实的代码任务,让 Codex 跑一遍,看它的行为是不是和这一篇描述的一致。理论与实践对照,才知道「懂」和「会用」是两件事。
延伸阅读:学完这一篇,你可以看本组里的下一篇,把相邻的概念连起来读;也可以跳到更后面的组学 MCP、子代理、Skills 这些更深的能力。知识是网状的,多跳几篇会理解更深。
判断决策树:用三个问题判断该不该用——① 这件事值不值得用 Codex 做?② 用的话该用哪个入口?③ 风险高不高需不需要审批?三个问题的答案一出来,怎么做就清楚了。