Claude Code 开箱即用已经很强大,但真正让它如虎添翼的,是学会配置 .claude/ 目录。这个目录是你与 Claude 之间的”约定”——项目规范、自定义工具、工作流自动化,全都在这里。
your-project/ ├── .claude/ │ ├── settings.json # 权限、MCP、环境变量配置 │ ├── settings.local.json # 本地私有配置(不提交 git) │ ├── rules/ # 自动加载的规则文件(补充 CLAUDE.md) │ │ ├── security.md │ │ └── style.md │ ├── commands/ # 斜杠命令(简单指令) │ │ ├── commit.md │ │ └── test.md │ └── skills/ # 斜杠命令(复杂工作流) │ ├── review.md │ └── deploy.md └── CLAUDE.md # 项目说明书(自动加载)
提交建议:CLAUDE.md、.claude/settings.json、.claude/commands/、.claude/skills/全部提交 git,团队共享。settings.local.json加入.gitignore,存放个人 API Key 等敏感信息。
CLAUDE.md 是整个系统的核心。每次启动 Claude Code,它都会自动读取这个文件,无需任何调用。
把它理解为”写给 AI 的 README”——你希望 Claude 始终知道的一切,都写在这里。
# 项目名称
技术栈
- React 18 + TypeScript + Vite
- 包管理器:pnpm(不要用 npm 或 yarn)
- 样式:Tailwind CSS
常用命令
pnpm dev # 启动开发服务器(端口 3000) pnpm build # 构建生产版本 pnpm lint # 代码检查
代码规范
- 组件文件:PascalCase(Button.tsx)
- 工具函数:camelCase(formatDate.ts)
- 新页面必须使用 React.lazy() 懒加载
- 禁止使用 any 类型
架构说明
- components/common/ → 通用基础组件
- components/features/ → 业务功能组件
- pages/ → 页面(懒加载)
注意事项
- 提交前必须通过 pnpm lint
- 不要修改 tailwind.config.js 的颜色变量
- 写”不要做什么”比”要做什么”更重要 — Claude 的默认行为已经很好,主要用 CLAUDE.md 纠偏
- 保持简洁 — 超过 200 行会被截断,重点突出
- 用代码块展示命令 — Claude 会直接复用这些命令
- 说明项目特殊约定 — 普通项目不需要说,但你项目里的”特殊规则”一定要写
rules/目录里的所有.md文件会自动加载,和CLAUDE.md一样无需手动调用。CLAUDE.md .claude/rules/*.md 位置 项目根目录.claude/rules/目录 数量 一个文件 可以有多个文件 内容 项目整体说明 按主题拆分的具体规则 团队共享 提交 git 提交 git核心优势是拆分——当规则很多时,按主题分文件,比把所有内容堆在 CLAUDE.md 里更清晰,也更容易维护。
# Security Rules - 所有用户输入必须经过验证和转义,防止 XSS
- 禁止在客户端代码中硬编码 API Key 或密码
- SQL 查询必须使用参数化查询,禁止字符串拼接
- 敏感数据(密码、token)禁止写入 console.log
- fetch 请求必须处理错误状态码
# Code Style Rules - 函数超过 50 行必须拆分
- 禁止嵌套超过 3 层的 if/else,使用提前返回
- React 组件 props 必须用 interface 定义类型
- 禁止使用魔法数字,提取为具名常量
- 注释只写"为什么",不写"是什么"
- CLAUDE.md — 项目介绍、技术栈、目录结构、常用命令,偏”说明”
- rules/ — 强制性的约束和禁令,偏”规则”,尤其适合团队需要统一强调的内容
两者内容都会被 Claude 读取,实际上写在哪里效果相同,按团队习惯选择即可。
commands/目录存放简单、单一职责的指令。文件名就是命令名:commit.md→/commit。# Commit
分析暂存区的改动,生成符合 Conventional Commits 规范的提交信息并提交。
步骤
- 运行
git diff --staged查看改动 - 根据改动类型选择 type:feat / fix / style / refactor / docs / chore
- 用中文写 subject,不超过 50 字
- 执行 git commit
# Test
运行测试套件并报告结果。
- 执行
pnpm test - 如有失败,分析原因并给出修复建议
- 不要自动修改测试文件,先询问用户
在对话框直接输入:
/commit /test /commit 只提交 src/ 目录的改动命令名后面可以附加自然语言说明,Claude 会结合命令定义和你的补充来执行。
skills/和commands/在功能上完全相同,但按惯例用于更复杂、多步骤的工作流。# Code Review
对当前改动进行全面的代码审查。
审查维度
1. 正确性
- 逻辑是否正确?边界条件是否处理?
- 有无潜在的 null/undefined 错误?
2. 安全性
- 是否存在 XSS、SQL 注入等风险?
- 用户输入是否经过验证?
3. 性能
- 是否有不必要的重渲染?
- 大列表是否做了虚拟化?
4. 可维护性
- 函数是否单一职责?
- 命名是否清晰?
输出格式
用 Markdown 表格列出问题,包含:文件、行号、问题描述、严重程度(高/中/低)、修复建议。
# Deploy
执行完整的部署流程。
- 运行
pnpm lint— 有错误则停止,不自动修复 - 运行
pnpm build— 确认构建成功 - 运行
pnpm test— 测试通过才继续 - 询问用户确认:是否部署到生产环境?
- 执行部署命令
- 验证部署结果,访问健康检查接口
commands/ skills/ 适合场景 简单、单一指令 复杂、多步骤工作流 典型例子/commit、/lint、/format/review、/deploy、/refactor本质区别 没有区别 没有区别实际上选哪个目录都行,统一用一个更好。
控制 Claude 可以执行哪些操作,配置 MCP Server、环境变量等。
权限分两个文件:
settings.json— 提交 git,团队共享的基础权限settings.local.json— 不提交 git,个人本地权限(API Key、私有工具)
"Bash(pnpm )" # 允许所有 pnpm 命令 "Bash(git add:)" # 允许 git add(: 后为参数通配) "WebFetch(domain:github.com)" # 只允许访问指定域名 "Skill(commit)" # 允许调用指定 skill "mcpidegetDiagnostics" # 允许调用指定 MCP 工具以下是一个真实的前端项目配置:
}- 最小权限原则:只开放项目实际用到的命令,不要写
"Bash(*)"放开所有 - 危险命令不授权:
rm -rf、git push –force、git reset –hard等让 Claude 每次都弹确认 - MCP 工具按需开放:用哪个 MCP 就开放哪个工具,不用的不授权
- 本地 vs 团队:CI/CD 相关权限放
settings.json,个人工具和 Key 放settings.local.json
假设你的项目有这样的
.claude/配置:.claude/ ├── settings.json ├── commands/ │ ├── commit.md → /commit │ └── lint.md → /lint └── skills/ ├── review.md → /review └── deploy.md → /deploy典型的开发工作流:
两者 功能完全相同,只是约定俗成的分工:你:帮我实现用户登录功能 Claude:(读取 CLAUDE.md 了解项目规范,按规范实现代码)
你:/review Claude:(按 review.md 的维度进行代码审查,输出问题列表)
你:/lint Claude:(运行 pnpm lint,修复发现的问题)
你:/commit Claude:(分析改动,生成规范提交信息,执行 git commit)
复制这个最小化模板到你的项目:
CLAUDE.md
# 项目名
包管理器
pnpm(禁止使用 npm/yarn)
常用命令
pnpm dev / pnpm build / pnpm lint
规范
- TypeScript,禁止 any
- 组件 PascalCase,工具函数 camelCase
- 提交前必须通过 lint
.claude/commands/commit.md
# Commit 查看 git diff –staged,生成 Conventional Commits 格式提交信息(中文 subject),执行提交。.claude/commands/lint.md
# Lint 运行 pnpm lint,自动修复可修复的问题,不可修复的列出并解释原因。
文件 触发方式 用途CLAUDE.md自动加载 项目整体说明、技术栈、常用命令.claude/rules/.md自动加载 按主题拆分的强制规则和约束.claude/commands/.md/command-name简单斜杠命令.claude/skills/*.md/skill-name复杂工作流.claude/settings.json自动加载 权限控制、MCP 配置.claude/settings.local.json自动加载(不提交) 私有配置、API Key花 30 分钟配置好这些文件,Claude Code 就能真正理解你的项目,像一个熟悉代码库的老队友一样工作。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/264815.html