Appearance
你每次开新项目,Claude 都跟失忆了一样。改一个 API,Claude 直接在组件文件里写 SQL;每执行一个命令弹一次权限确认。一个下午点了 30 次 Allow,你以为自己在写代码,其实在点按钮。
这套配置把"通用"变成"你的项目的专属"。4 个文件,9 个命令,一次配置,永久生效。
问题场景
场景一:Claude 乱放代码
改一个 API,Claude 直接在组件文件里写 SQL。你去 review 的时候已经晚了——它不知道你的数据库操作全在 src/lib/services/ 里,没人告诉过它。
场景二:疯狂弹权限确认
npm install 弹一次
git status 弹一次
写个文件又弹一次一个下午点了 30 次 Allow,你以为自己在写代码,其实在点按钮。
你不配置,它就默认。默认的 Claude 是什么都能做、什么都不知道的通用助手。
第一文件:CLAUDE.md
Claude Code 启动时第一个读的文件。你写在这里的东西,Claude 会在每一次对话里自动遵守。
markdown
## 沟通方式
- 默认中文回复;代码、命令、变量名、文件路径保持英文
- 结论先行,简洁直接,不先铺垫背景
- 不谄媚,不夸我的想法好
## 技术栈规范
- 数据库操作:只在 src/lib/services/ 里写
- API调用:统一用 src/lib/api/
- 组件:放在 src/components/
- 样式:Tailwind CSS
## 安全红线
- 禁止:rm -rf /
- 禁止:直接操作生产数据库
- 禁止:修改 .env 文件
- 禁止:执行未在 ALLOWED_COMMANDS.md 里列出的命令
## 提交流程
1. 先 /lint 检查代码风格
2. 再 /test 运行测试
3. 最后 /commit 提交(用Conventional Commits格式)第二文件:CLAUDE_CREDENTIALS.md
存放凭证信息的文件(不在代码库里,放在项目根目录但不提交):
markdown
## API Keys(不要在代码里硬编码)
- OPENAI_API_KEY: 你的key
- DATABASE_URL: 数据库连接串
- REDIS_URL: Redis连接串
## 环境配置
- NODE_ENV: development
- LOG_LEVEL: debug第三文件:ALLOWED_COMMANDS.md
允许 Claude 执行的命令列表,不用每次都点 Allow:
markdown
## 允许的命令
git status
git add .
git commit -m "message"
git push
git pull
npm install
npm run dev
npm run build
npm run lint
npm run test
npx playwright test第四:.claude 目录
存放更多配置的目录:
bash
# 目录结构
.claude/
├── commands/ # 自定义 slash commands
├── settings/ # 项目级设置
└── plugins/ # 插件配置9个 Slash Command 模板
1. /dev - 启动开发环境
bash
# 创建 .claude/commands/dev.sh
npm run dev2. /build - 构建项目
bash
npm run build3. /lint - 代码检查
bash
npm run lint4. /test - 运行测试
bash
npm run test5. /commit - 智能提交
bash
# 自动生成 Conventional Commits 格式的 commit message
git add .
git commit -m "$(git status --porcelain | head -1 | git commits from diff)"6. /deploy - 部署
bash
npm run build && npm run deploy7. /log - 查看日志
bash
tail -f logs/app.log8. /db - 数据库操作
bash
# 连接到数据库
psql $DATABASE_URL9. /restart - 重启服务
bash
pm2 restart all一键配置脚本
把以下脚本保存为 setup-claude.sh,放到项目根目录执行:
bash
#!/bin/bash
# 创建目录
mkdir -p .claude/commands
# 创建 CLAUDE.md
cat > CLAUDE.md << 'EOF'
## 沟通方式
- 默认中文回复;代码、命令、变量名、文件路径保持英文
- 结论先行,简洁直接
## 技术栈规范
# TODO: 填写你的技术栈
## 安全红线
- 禁止:rm -rf /
- 禁止:直接操作生产数据库
EOF
# 创建 ALLOWED_COMMANDS.md
cat > ALLOWED_COMMANDS.md << 'EOF'
git status
git add .
git commit -m "message"
npm install
npm run dev
npm run build
npm run lint
npm run test
EOF
# 创建 basic commands
cat > .claude/commands/dev.sh << 'EOF'
#!/bin/bash
npm run dev
EOF
chmod +x .claude/commands/*.sh
echo "✅ Claude Code 配置完成!"配置顺序
| 顺序 | 配置项 | 优先级 |
|---|---|---|
| 1 | CLAUDE.md | 最高 |
| 2 | ALLOWED_COMMANDS.md | 高 |
| 3 | .claude/commands/ | 中 |
| 4 | CLAUDE_CREDENTIALS.md | 低 |
常见问题
Q:配置文件放在哪里?
A: 项目根目录,Claude Code 启动时会自动读取。
Q:ALLOWED_COMMANDS.md 会安全吗?
A: 只放你信任的命令,不要放 rm -rf 等危险命令。
Q:CLAUDE_CREDENTIALS.md 会被提交到 Git 吗?
A: 把它加入 .gitignore,不要提交到代码库。
一句话总结
4 个文件 + 9 个 Slash Command,5 分钟配置,永久生效。
每个新项目只需要:
bash
./setup-claude.sh然后 Claude Code 就知道你的技术栈、哪些文件不能碰、提交格式是什么、出 bug 了怎么查。
