Claude Code 从 0 到 1

第 02 / 08 课

让 Claude Code 记住你的项目:CLAUDE.md 与上下文

Claude Code 的「记性」有限,对话越长越贵越容易跑偏。这一课教你用 CLAUDE.md 给它长期记忆,用 /clear 和 /compact 管好上下文。

上一课你已经跑通了第一个需求。但你可能发现:关掉再打开,它就把你的项目忘得一干二净;对话聊久了,它还会变慢、甚至开始答非所问。

这一课解决两件事:怎么让它长期记住你的项目,怎么管好对话的「记忆容量」

为什么要管「上下文」

Claude Code 每次回答,都要把「你的话 + 它读过的代码 + 历史对话」一起塞进它的工作记忆(上下文)。这个记忆是有限的:

  • 对话越长、读的文件越多,记忆越满 → 越慢、越费钱、越容易丢三落四
  • 关掉会话,这段记忆就清空了

所以两个动作很关键:用 CLAUDE.md 做永久笔记,用命令清理临时记忆

CLAUDE.md:项目的永久说明书

在项目根目录放一个 CLAUDE.md 文件,Claude Code 每次启动都会自动读它。把它当成给 AI 的项目交接文档,写上:

  • 这个项目是干嘛的、技术栈是什么
  • 你的代码习惯(比如「用 2 空格缩进」「注释写中文」)
  • 一些约定(比如「改完跑 npm test」「不要动 config/ 目录」)

最省事的办法:在项目里输入斜杠命令 /init,它会分析你的代码、自动生成一份 CLAUDE.md 草稿,你再改改就行。

还有个位置:~/.claude/CLAUDE.md 是「全局笔记」,所有项目都生效,适合写你个人的通用习惯;项目里的 CLAUDE.md 写这个项目专属的事,还能跟着 git 分享给队友。

:别把 CLAUDE.md 写成长篇大论(几百行)。它每次都占记忆,太长反而让 Claude 抓不住重点。精简、只写真正重要的约定

@ 引用:让它去读某个文件

聊天时想让它参考某个文件,直接打 @ 再选文件,比如:

照 @src/api/user.ts 的写法,再帮我写一个 order.ts

它就会先读那个文件再动手,不用你复制粘贴。

三个管「记忆」的命令

  • /context —— 看现在记忆用了多少(快满了就该清理)
  • /compact —— 对话太长时,把前面的历史压缩成摘要、保留关键信息继续聊。最常用。
  • /clear —— 彻底清空对话、从零开始(CLAUDE.md 仍然保留)。换一个全新任务时用。

新人最容易搞混 /clear/compact:

  • 还想接着这个任务、只是嫌历史太长 → 用 /compact(它记得来龙去脉)
  • 这个任务做完了、要开新的 → 用 /clear(干净利落)

这一课记住

  1. CLAUDE.md = 给 AI 的项目交接文档,/init 一键生成,精简为王
  2. @文件 让它去读指定文件,省去复制粘贴
  3. 嫌对话长:接着干用 /compact,换任务用 /clear

下一课:怎么让 Claude Code 先把方案想清楚、你点头再动手,避免它一上来就乱改。