返回资料库 Claude Code 专题

CLAUDE.md 完全指南:让 AI 记住你的项目规范

CLAUDE.md 是 Claude Code 的项目记忆文件。每次会话开始时,Claude 会自动读取它,了解你的项目规范、技术栈和工作流偏好。

来源:code.claude.com/docs/en/memory · best-practices | 整理时间:2026-04-04


什么是 CLAUDE.md?

CLAUDE.md 是 Claude Code 的项目记忆文件。每次会话开始时,Claude 会自动读取它,了解你的项目规范、技术栈和工作流偏好。

类比:CLAUDE.md 就像给新入职的资深工程师一份《团队规范手册》,让他立刻按你的方式工作。


文件层级

~/.claude/CLAUDE.md              ← 全局:所有项目共享
├── ~/projects/myapp/CLAUDE.md   ← 项目级:团队共享(建议 commit)
│   ├── src/auth/CLAUDE.md       ← 目录级:特定模块
│   └── src/api/CLAUDE.md        ← 目录级:特定模块
层级 作用域 典型内容 是否提交 Git
全局 ~/.claude/CLAUDE.md 所有项目 个人偏好(中文回复、 terse 风格)
项目 ./CLAUDE.md 当前项目 构建命令、代码风格、测试指令
目录 ./src/auth/CLAUDE.md 子目录 模块特定的架构决策

所有层级的文件叠加生效,不会互相覆盖。


快速生成

/init    # Claude 扫描项目结构,自动生成 CLAUDE.md

/init 会分析你的 package.json、目录结构、配置文件,生成一个初始版本。你可以在此基础上修改。


应该写什么

必写内容

# 项目:MyApp

## 构建与运行
- `npm run dev` — 启动开发服务器
- `npm run build` — 生产构建
- `npm test` — 运行测试

## 代码风格
- 使用 TypeScript strict mode
- ES Modules(import/export),不用 CommonJS
- 组件用 PascalCase,工具函数用 camelCase
- 单文件不超过 300 行

## 测试
- 修改代码后必须运行相关测试
- 优先运行单个测试文件,不是整个测试套件
- 测试文件放在 `__tests__/` 目录

## Git 规范
- commit message 使用中文,格式:`feat: / fix: / refactor:`
- 每个 PR 只做一件事
- 提交前运行 `npm run lint`

## 架构
- 前端:React + Next.js(App Router)
- 后端:Node.js + Express
- 数据库:PostgreSQL,使用 Prisma ORM
- 认证:JWT + refresh token

按项目类型补充

前端项目:

## UI 规范
- 使用 Tailwind CSS,不写自定义 CSS
- 响应式设计:mobile-first
- 颜色变量定义在 tailwind.config.ts
- 组件库:shadcn/ui

后端项目:

## API 规范
- RESTful API,响应格式:`{ code, data, message }`
- 错误使用自定义 AppError 类
- 所有接口需要 JWT 认证,除了 /auth/*
- 分页参数:`?page=1&pageSize=20`

Monorepo:

## 项目结构
- apps/web — 前端应用
- apps/api — 后端 API
- packages/shared — 共享类型和工具
- 使用 Turborevo 管理构建

每个子项目有自己的 CLAUDE.md

不应该写什么

不写 为什么
Claude 能从代码推断的内容 浪费 Token,可能导致冲突
完整的 API 文档 太长会被截断,放链接即可
几乎不改动的标准规范 增加噪音
具体的文件路径列表 容易过时
超过 200 行的内容 太长会被忽略

高级模式

模式 1:环境区分

# 开发环境
- 数据库使用 Docker 本地 PostgreSQL
- Redis 使用本地实例
- 环境变量在 .env.local

# 生产环境
- 数据库在 AWS RDS
- 使用 AWS ElastiCache Redis
- 环境变量在 AWS Parameter Store

模式 2:按功能覆盖

src/auth/CLAUDE.md
# 认证模块

## 安全要求
- 密码使用 bcrypt(salt rounds: 12)
- JWT 过期时间:access 15min, refresh 7d
- 登录失败不提示具体原因(防暴力破解)
- 所有路由都要检查认证状态

## 已知问题
- refresh token 轮换在并发场景下有竞态条件
- 不要修改 TokenService 的单例模式

模式 3:团队共享模板

团队可以维护一个标准化的 CLAUDE.md 模板:

# 团队规范(所有项目适用)
- PR 需要 2 人 approve
- 代码审查使用 /review 技能
- 提交前必须通过 CI
- 使用 /commit 生成规范的 commit message

# 项目特定(按需修改)
- [构建命令]
- [技术栈]
- [特殊约定]

Auto Memory(自动记忆)

除了 CLAUDE.md,Claude Code 还有自动记忆系统:

/memory

自动记忆存储在 .claude/memory/ 目录下,Claude 在会话中自动积累关于你的偏好和项目特点的认知。

特性 CLAUDE.md Auto Memory
谁写 人写 Claude 自动写
内容 明确的项目规范 偏好、习惯、经验教训
格式 Markdown Markdown
生命周期 手动维护 跨会话持久化

最佳实践

# 告诉 Claude 记住某件事
记住:这个项目使用 pnpm 而不是 npm

# 让 Claude 基于当前会话更新
Add to CLAUDE.md: 我们决定使用 Zod 做 API 参数校验

来自社区的实战建议

来源:howborisusesclaudecode.com · shanraisshan/claude-code-best-practice

  1. CLAUDE.md 控制在 200 行以内——太长会被截断
  2. /init 起步,手动精简——自动生成的版本往往太长
  3. 把"为什么"也写上——不只写规则,还写原因,帮助 Claude 在边缘场景做出正确判断
  4. 定期更新——技术栈变了、架构改了,记得同步更新
  5. 用 agnix 做 lint——agent-sh/agnix 可以自动检查 CLAUDE.md 质量

相关链接

常见问题

CLAUDE.md 完全指南:让 AI 记住你的项目规范 适合什么读者?

CLAUDE.md 完全指南:让 AI 记住你的项目规范 适合希望系统掌握 Claude Code 专题 的读者,尤其是需要从概念快速过渡到实践的人。页面包含主题摘要、相关阅读和来源链接,便于形成可执行的学习路径。

阅读 CLAUDE.md 完全指南:让 AI 记住你的项目规范 需要多久?

当前页面预估阅读时长约 6 分钟。建议先读正文结论,再根据“同专题延伸”继续阅读,通常 20 到 40 分钟可以建立完整主题框架。

如何把 CLAUDE.md 完全指南:让 AI 记住你的项目规范 的内容用于实际项目?

先按正文中的关键概念完成最小可运行示例,再把示例嵌入你当前项目流程。你可以结合来源链接验证细节,并使用同专题文章补齐部署、协作和评估步骤。