配置与设置
通过配置文件自定义 Claude Code 的行为、权限、环境变量和钩子。
配置文件位置
.claude/settings.json项目级
当前项目的配置,会提交到 git 中,团队共享
.claude/settings.local.json项目级(本地)
仅当前机器的项目配置,不会提交到 git
~/.claude/settings.json用户级
全局配置,适用于所有项目
常用配置项
// .claude/settings.json
{
"permissions": {
"allow": [
"Bash(git status)",
"Bash(npm run lint)",
"Read(*)"
]
},
"env": {
"DEBUG": "true"
},
"hooks": {
"Edit": "npm run lint --fix"
}
}权限配置
通过 permissions.allow 白名单减少权限确认弹窗:
| 模式 | 说明 |
|---|---|
Read(*) | 允许读取所有文件 |
Bash(git *) | 允许所有 git 命令 |
Bash(npm run *) | 允许所有 npm run 命令 |
Glob(**/*) | 允许所有文件搜索 |
Grep(*) | 允许所有代码搜索 |
CLAUDE.md
在项目根目录创建 CLAUDE.md,告诉 Claude 关于项目的关键信息。每次会话开始时会自动加载。
# CLAUDE.md
## 项目
这是一个 Next.js 15 电商网站,使用 Tailwind CSS 和 Prisma。
## 开发命令
- 启动:npm run dev
- 测试:npm test
- 构建:npm run build
## 约定
- 使用 TypeScript 严格模式
- 组件使用 server component,除非需要交互
- API 路由放在 src/app/api/
## 项目
这是一个 Next.js 15 电商网站,使用 Tailwind CSS 和 Prisma。
## 开发命令
- 启动:npm run dev
- 测试:npm test
- 构建:npm run build
## 约定
- 使用 TypeScript 严格模式
- 组件使用 server component,除非需要交互
- API 路由放在 src/app/api/
提示:使用 /init 命令可以自动生成 CLAUDE.md。
钩子(Hooks)
钩子是在特定事件发生时自动执行的 shell 命令:
Edit每次编辑文件后执行
示例:npm run lint --fixBash每次执行 Bash 命令前后
示例:echo 'Running command...'StopClaude Code 退出时执行
示例:npm run cleanup下一步:学习 最佳实践,提升使用效率。