Claude Code 配置指南:让每次启动都顺手
Claude Code 配置指南:让每次启动都顺手
用 Claude Code 写了段时间代码,发现每次启动都要手动切权限模式、选模型,挺烦的。后来研究了一下 ~/.claude/settings.json,把常用配置写进去,启动即用,舒服多了。记录一下配置项和踩过的坑。
先看风险
在改配置之前,有一件事必须说清楚:bypass 模式会关掉 Claude Code 的所有安全检查。
这意味着什么?
- Claude 想删文件,直接删,不问你
- Claude 想执行 shell 命令,直接跑,不问你
- Claude 想改
.git、.env、node_modules,直接改,不问你 - 对话内容里如果有人注入恶意指令(比如"删掉所有文件"),Claude 会照做
唯一的兜底是 rm -rf / 和 rm -rf ~ 这种极端命令还会弹确认。除此之外,全部放行。
什么情况下可以用:
- 开发容器、虚拟机——炸了重来就行
- 有 git 的项目——改坏了能回滚
- 个人玩具项目——丢了不心疼
什么情况下别用:
- 有生产数据的机器
- 没有版本控制的项目
- 别人能控制你 Claude 对话内容的场景(比如 cc-connect 接了群聊)
想清楚了?继续往下看。
配置文件在哪
Claude Code 的用户级配置文件在:
~/.claude/settings.json
Windows 上就是 C:\Users\你的用户名\.claude\settings.json。
这个文件默认不存在,第一次用 Claude Code 时会自动创建。如果没有,手动建一个空的 {} 就行。
配置有优先级,从高到低:
| 优先级 | 文件 | 说明 |
|---|---|---|
| 最高 | 管理员配置 | 企业管控用,个人碰不到 |
| 高 | 项目本地 .claude/settings.local.json |
不提交 git,项目级覆盖 |
| 中 | 项目共享 .claude/settings.json |
提交到 git,团队共享 |
| 低 | 用户全局 ~/.claude/settings.json |
全局默认,今天要改的就是这个 |
核心配置:权限模式
这是最影响使用体验的配置。
默认的烦恼
Claude Code 有几种权限模式:
| 模式 | 行为 | 风险等级 |
|---|---|---|
default |
每次执行操作都要你确认 | 低 |
acceptEdits |
自动同意文件编辑,其他要确认 | 低 |
plan |
只读模式,不执行任何修改 | 无 |
auto |
自动同意大部分操作 | 中 |
bypassPermissions |
跳过所有确认(即 yolo 模式) | 高 |
默认是 default 模式,每改一个文件都要点确认,写几行代码要按十几次回车,很打断思路。
设置默认权限模式
在 settings.json 里加:
{
"permissions": {
"defaultMode": "bypassPermissions"
}
}
这样每次 claude 启动就直接是 bypass 模式,不再弹权限确认。
跳过进入 bypass 模式的确认
即使设了 defaultMode,进入 bypass 模式时可能还会弹一个确认提示。加上这个可以跳过:
{
"skipDangerousModePermissionPrompt": true
}
注意这个字段放在顶层,不是在 permissions 里面。
两者放一起,方便使用
"permissions": {
"defaultMode": "bypassPermissions"
},
"skipDangerousModePermissionPrompt": true,
关于 Shift+Tab
你可能知道在 Claude Code 里可以用 Shift+Tab 切换权限模式。但默认的循环是 default → acceptEdits → plan,不包含 bypassPermissions。
想让 bypass 模式出现在循环里,启动时要加参数:
claude --allow-dangerously-skip-permissions
这个参数没有对应的 settings.json key,只能通过 CLI 传入。如果你想每次都带这个参数,可以在 PowerShell 里设个 alias:
function claude { & claude.exe --allow-dangerously-skip-permissions @args }
或者直接在 settings.json 里设 defaultMode: "bypassPermissions",效果类似但更直接。
更安全的折中方案
如果你觉得 bypass 太激进,但又嫌 default 太烦,可以用 allow 列表白名单:
{
"permissions": {
"defaultMode": "default",
"allow": [
"Bash(git *)",
"Bash(npm *)",
"Bash(node *)",
"Edit",
"Write"
]
}
}
这样 git、npm、node 命令和文件编辑自动放行,其他操作还是要确认。比 bypass 安全得多。
指定模型
{
"model": "opus"
}
可选值:opus、sonnet、haiku。不设的话默认用 sonnet。
环境变量
如果你用的是自定义 API 端点(比如国内代理),需要在 env 里配置:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "你的token",
"ANTHROPIC_BASE_URL": "https://你的代理地址/anthropic",
"ANTHROPIC_MODEL": "模型名称"
}
}
也可以在这里设置不同级别的默认模型:
{
"env": {
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-7",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001"
}
}
这样用 /model opus 切换时就知道该调哪个模型。
其他实用配置
跳过 Web 请求确认
{
"env": {
"skipWebFetchPreflight": "true"
}
}
Claude Code 访问 URL 时默认会弹确认,开了这个就不再问了。风险不大,只是访问网页而已。
插件
{
"enabledPlugins": {
"document-skills@anthropic-agent-skills": true,
"skill-creator@claude-plugins-official": true
}
}
启用额外的技能插件。document-skills 提供文档处理能力,skill-creator 可以创建自定义技能。
我的完整配置
放一份我目前在用的配置供参考:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "你的token",
"ANTHROPIC_BASE_URL": "https://你的代理地址/anthropic",
"ANTHROPIC_MODEL": "你的模型",
"skipWebFetchPreflight": "true"
},
"model": "opus",
"permissions": {
"defaultMode": "bypassPermissions"
},
"skipDangerousModePermissionPrompt": true,
"enabledPlugins": {
"document-skills@anthropic-agent-skills": true,
"skill-creator@claude-plugins-official": true
}
}
总结
| 配置项 | 作用 | 推荐值 |
|---|---|---|
permissions.defaultMode |
默认权限模式 | 看需求,bypassPermissions 最省事但风险高 |
permissions.allow |
白名单放行特定操作 | 比 bypass 更安全的折中方案 |
skipDangerousModePermissionPrompt |
跳过 bypass 确认 | true(配合 bypass 模式) |
model |
默认模型 | opus 或 sonnet |
env.ANTHROPIC_MODEL |
API 调用的模型 | 按你的代理支持的填 |
env.skipWebFetchPreflight |
跳过 URL 访问确认 | true |
配置这东西因人而异,核心就是把重复的手动操作自动化。你要是每次启动都要切三遍模式、选两次模型,那就该写进配置里了。
最后再唠叨一句:bypass 模式确实方便,但它关掉了你和 AI 之间最后一道安全门。确保你理解这意味着什么,再决定要不要用。

浙公网安备 33010602011771号