主题
Claude Code 设置
Claude Code 提供了多种设置来配置其行为以满足您的需求。
设置文件
settings.json 文件是配置 Claude Code 的官方机制:
json
{
"permissions": {
"allow": [
"Bash(npm run lint)",
"Bash(npm run test:*)",
"Read(~/.zshrc)"
],
"deny": [
"Bash(curl:*)",
"Read(./.env)",
"Read(./secrets/**)"
]
},
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1"
}
}可用设置
| 键 | 描述 |
|---|---|
apiKeyHelper | 自定义脚本,用于生成身份验证值 |
cleanupPeriodDays | 会话清理周期(默认:30 天) |
companyAnnouncements | 在启动时显示给用户的公告 |
env | 将应用于每个会话的环境变量 |
includeCoAuthoredBy | 是否在 git 提交中包含 co-authored-by 署名 |
permissions | 权限配置 |
hooks | 自定义命令配置 |
model | 覆盖默认模型 |
outputStyle | 配置输出样式 |
权限设置
| 键 | 描述 |
|---|---|
allow | 允许工具使用的规则数组 |
ask | 在工具使用时请求确认的规则数组 |
deny | 拒绝工具使用的规则数组 |
additionalDirectories | Claude 可以访问的其他工作目录 |
defaultMode | 默认权限模式 |
沙箱设置
| 键 | 描述 |
|---|---|
enabled | 启用 bash 沙箱(仅限 macOS/Linux) |
autoAllowBashIfSandboxed | 沙箱化时自动批准 bash 命令 |
excludedCommands | 应在沙箱外运行的命令 |
设置优先级
设置按优先级顺序应用(从高到低):
- 企业托管策略(
managed-settings.json) - 命令行参数
- 本地项目设置(
.claude/settings.local.json) - 共享项目设置(
.claude/settings.json) - 用户设置(
~/.claude/settings.json)
排除敏感文件
要防止 Claude Code 访问敏感文件:
json
{
"permissions": {
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)"
]
}
}环境变量
| 变量 | 目的 |
|---|---|
ANTHROPIC_API_KEY | API 密钥 |
ANTHROPIC_MODEL | 要使用的模型 |
CLAUDE_CODE_USE_BEDROCK | 使用 Bedrock |
CLAUDE_CODE_USE_VERTEX | 使用 Vertex |
DISABLE_AUTOUPDATER | 禁用自动更新 |
DISABLE_TELEMETRY | 选择退出遥测 |
HTTP_PROXY | HTTP 代理服务器 |
MAX_THINKING_TOKENS | 启用扩展思考 |
Claude Code 可用的工具
| 工具 | 描述 | 需要权限 |
|---|---|---|
| Bash | 执行 shell 命令 | 是 |
| Edit | 对文件进行编辑 | 是 |
| Glob | 基于模式匹配查找文件 | 否 |
| Grep | 在文件内容中搜索模式 | 否 |
| Read | 读取文件的内容 | 否 |
| Write | 创建或覆盖文件 | 是 |
| WebFetch | 从 URL 获取内容 | 是 |
| WebSearch | 执行网络搜索 | 是 |