settings.json 文件,每个文件对应一个保存设置的位置:
- 开发者的
~/.claude/settings.json - 团队的
.claude/settings.json,提交到仓库 - 组织的
managed-settings.json
你自己的设置
一个开发者的个人设置。它选择一个模型和工作量级别,调整终端,并预先批准一个只读命令和一个文件读取。未列出的所有内容都保持其默认值。这样的文件放在~/.claude/settings.json 中,它适用于你打开的每个项目。
- Copyable settings file
- What each key does
将其保存为
~/.claude/settings.json。这是有效的 JSON,没有注释,因此你可以按原样粘贴它并删除你不想要的键。~/.claude/settings.json
团队的共享设置
一个团队的共享设置,提交到仓库,以便克隆它的每个人都获得相同的权限、hooks 和插件市场。在仓库顶部的.claude/settings.json 处保存这样的文件。在提交之前需要了解的内容:
- 云会话也会读取它。 Claude Code 网页版上的 cloud session 从仓库的克隆开始,因此提交的文件也适用于那里。
- 遥测数据放在托管或个人设置中。 Claude Code 忽略仓库设置文件中的 OpenTelemetry 导出器变量,除了一些关闭遥测的值。在 托管设置 中为你的组织设置它们,或在每个人的
~/.claude/settings.json中设置。 - Allow 规则等待信任。 Allow 规则和
extraKnownMarketplaces条目在每个人 信任此文件夹本身 后生效,而不仅仅是父文件夹;deny 和 ask 规则在每个会话中应用,无论是否受信任。 - hook 是仓库中的脚本。 此文件的 hook 运行
.claude/hooks/block-rm.sh;How a hook resolves 介绍了如何编写它。 - 规则匹配按写入的命令和路径。
Bash(git push *)不匹配git -C . push。Read(./.env)单独停止文件工具和命名文件的命令,例如cat .env,但不停止grep -r在目录上运行;此文件中的sandbox块关闭了该间隙,因为 sandbox 添加你的Readdeny 路径 到每个沙箱命令无法读取的内容。
- Copyable settings file
- What each key does
将其保存为仓库顶部的
.claude/settings.json 并提交。这是有效的 JSON,没有注释,因此你可以按原样粘贴它并删除你不想要的键。.claude/settings.json
组织的托管设置
一个managed-settings.json 文件,显示托管键的形状,每个键都有一个合理的值。这不是推荐的策略:选择与你自己的要求相匹配的键并设置你自己的值。该示例设置这些键:
forceLoginMethod和forceLoginOrgUUID固定登录方法和组织availableModels和enforceAvailableModels限制会话可以使用的模型permissions.deny拒绝两个文件读取和curl命令 如 Claude 编写的那样,disableBypassPermissionsMode删除绕过权限模式allowManagedPermissionRulesOnly和allowManagedMcpServersOnly使托管权限和 MCP 允许列表成为唯一适用的列表allowedMcpServers通过 URL 固定 MCP 服务器strictKnownMarketplaces允许一个插件市场sandbox使用固定的网络允许列表对命令进行沙箱处理,无需无沙箱重试。其failIfUnavailable键会在沙箱无法运行的环境中阻止 Claude Code 启动requiredMinimumVersion设置最低 Claude Code 版本cleanupPeriodDays将会话记录和其他本地数据的保留期缩短为七天companyAnnouncements在启动时显示消息
managed-settings.json,或通过 MDM 或 server-managed settings 部署相同的 JSON。一个部署的文件适用于它到达的每台机器或帐户。要为一个组提供不同的值,请将不同的文件或配置文件部署到该组,因为 server-managed settings 还不支持按组策略。
- Copyable settings file
- What each key does
将其部署为
managed-settings.json,或通过 MDM 或 claude.ai 控制台部署相同的 JSON。这是有效的 JSON,没有注释;将示例组织 UUID、服务器 URL 和市场替换为你自己的,并删除你不想要的键。managed-settings.json