记忆 AGENTS.md
说一次,记住一辈子——让 AI 永远懂你的项目
记忆文件是项目写给 AI 的"入职手册"命令和工具都学会了。这一章进入第一个让 AI 真正理解你项目的关键机制 —— 记住规则,一次写入永久生效。
重复的交代
每次开新会话,都要把项目规则重新说一遍
技术栈交代一遍又一遍
"我们用 React 18 + TypeScript""测试用 vitest""包管理用 pnpm"——每次新会话都要从头说。
编码规范讲完又忘
"注释用中文""提交信息用 conventional commits""不要用 any"——AI 在当前会话记得,关掉就忘。
项目背景反复解释
"这是内部管理系统""接口都在 src/api 下""鉴权走 cookie"——这些背景信息消耗大量对话篇幅。
AGENTS.md
项目根目录下的一个 Markdown 文件,AI 的入职手册
AGENTS.md 是 Qoder CLI 默认读取的项目记忆文件。放在项目根目录,里面用 Markdown 写清楚这个项目的规则、约定、架构——AI 每次在这个项目启动,都会先读它。
说白了,它就像你给新同事写的"项目入职手册":技术栈是什么、代码怎么组织、提交流程怎样、有哪些坑要避。AI 读了它,就不再是"新人"了。
my-project/
├── AGENTS.md ← 项目记忆文件
├── src/
├── package.json
└── ...
AGENTS.md 里的内容对所有未来会话永久有效,直到你修改它。
/init 生成
让 AI 自己读项目,帮你写出第一版记忆
不用手写——Qoder CLI 能自动分析项目并生成 AGENTS.md。在一个还没有记忆文件的项目里运行:
/init
(CLI 扫描 package.json、目录结构、配置文件,
自动生成 AGENTS.md 的初稿)
生成的内容通常包括:项目简介、技术栈、常用命令、目录结构、关键约定。你可以基于它再手动修改完善。
/memory 管理
记忆不止一份,三级各有分工
用 /memory 命令打开记忆管理界面,可以看到三级记忆:
| 级别 | 位置 | 作用范围 | 适合放什么 |
|---|---|---|---|
| 用户级 | ~/.qoder/ |
你的所有项目 | 个人偏好(注释风格、编辑器习惯) |
| 项目级 | 项目/AGENTS.md |
整个团队、本项目 | 技术栈、规范、架构(随 Git 提交共享) |
| 本地级 | 项目/.qoder/settings.local.json |
只有你、本项目 | 本地路径、个人实验配置(不提交) |
.gitignore 不污染团队。
# 快捷写入
对话中用 # 开头,一句话追加进记忆
第 03 章提过的记忆模式,这里展开讲。当你发现某条规则应该长期生效,不用退出对话去编辑文件,直接在输入框用 # 开头:
# 本项目用 pnpm,禁止使用 npm 或 yarn
# 提交前必须运行 pnpm lint 和 pnpm test
# src/legacy 目录的代码不要动,正在废弃
每条都会被追加到项目的 AGENTS.md。下次启动 AI 自动遵守。
什么时候用 #
- 对话中突然意识到"这条该永久记住"
- 快速记录一条规则,不想切到编辑器
- 补充 AI 反复犯错的地方
什么时候用 /memory
- 系统整理、重新组织记忆结构
- 查看和编辑各级记忆
- 初始化一个全新项目
该写什么
好的记忆文件,写的是"稳定的规则",不是"临时的任务"
技术栈与版本
技术栈:React 18 + TypeScript 5
构建:Vite 5
测试:Vitest
常用命令
安装依赖:pnpm install
启动开发:pnpm dev
跑测试:pnpm test
构建:pnpm build
编码规范
注释统一用中文
不用 any,必要时用 unknown
函数名用驼峰,组件名用帕斯卡
项目结构与边界
src/api 接口层
src/components 通用组件
src/legacy 待废弃,勿改
状态管理统一用 zustand
工作流约定
提交前跑 lint 和 test
分支命名:feat/fix/ chore
PR 必须有描述和测试说明
已知陷阱
注意:登录回调在 Safari 有 bug
config.ts 里的 KEY 不要提交
DB 迁移必须先备份
不该写什么
记忆不是垃圾桶,写太多反而让 AI 抓不住重点
临时任务和待办
"今天要修登录 bug""下周重构 user 模块"——这些是会话级的事,写进对话或 TODO,不是永久记忆。完成后就没用了,留在记忆里是噪音。
敏感信息
API Key、数据库密码、Token——绝对不要写进会提交到 Git 的项目级记忆。要用密钥就用环境变量。
容易过期的细节
"目前依赖版本是 1.2.3"——这种会随时间失效,AI 读 package.json 就知道,不必记。
冗长的大段文字
记忆要精炼成条目。大段散文式描述会让 AI 难以提取关键规则。
自动与手动
两种记忆来源,配合使用
自动记忆
Qoder CLI 在工作中可能自动积累一些项目知识(如发现常用命令、识别出的模式),存进自动记忆入口。
优点:无需你动手;缺点:可能不准,需要定期 review。
用 /memory 查看自动记忆,删除不准的条目。
手动记忆
你主动写进 AGENTS.md 的规则——通过 /init、/memory 或 # 模式。
优点:精准、可控;缺点:需要你花时间维护。
这是记忆系统的主体,团队规范主要靠它。
/memory 清理过时内容。
排错指南
记忆相关的高频问题
AI 不遵守记忆里的规则
原因:规则写得太模糊,或和其他规则冲突;也可能文件位置不对没被读到。修复:用 /memory 确认条目存在;把模糊规则改具体("注释用中文"→"所有函数注释用中文,JSDoc 格式")。
新会话没读到记忆
原因:记忆文件不在项目根目录,或文件名拼错(必须是 AGENTS.md)。修复:确认路径和文件名;启动目录就是项目根。
记忆文件越来越大
原因:累积了太多过时条目。修复:定期 review,删除一次性任务、过期的版本号;保持精炼条目化。
团队同步问题
原因:本地级记忆被误提交,或项目级记忆没提交。修复:项目级 AGENTS.md 进 Git;本地级配置加进 .gitignore。
动手练习
给你的项目建立一份有用的记忆
练习 1:自动生成初稿
- 在一个真实项目里运行
/init - 查看生成的
AGENTS.md,评估哪些准确、哪些要改
练习 2:补充团队规则
- 用
#模式追加 3 条你的项目特有的规则 - 比如包管理器、测试命令、禁区目录
练习 3:验证生效
- 清空会话(
/clear)后重启 - 问 AI"我们项目用什么包管理器"
- 它应该不查文件就能答对——说明记忆生效了
本章回顾
带走的三个核心认知
AGENTS.md 是入职手册
项目根目录的记忆文件,AI 每次启动自动读取,跨会话永久生效。
三级记忆分工
用户级(个人偏好)、项目级(团队共享)、本地级(个人实验)。
只写稳定规则
技术栈、规范、架构、陷阱——临时任务和敏感信息不进记忆。
AGENTS.md,能让团队每个人(包括 AI)都对项目有同样的认知。
基础篇到此结束。接下来进入扩展篇——从第 06 章技能开始,你将学会把 AI 打造成一支专业团队。
延伸阅读
继续本课程
- 下一章:技能 Skills — 把专业知识打包成可复用能力
- 上一章:斜杠命令与工具