通过一段标准提示词模板,可自动生成CLAUDE.md等文件,让AI agent首次打开陌生仓库时即刻理解项目背景、真实命令和核心规则,无需每次重复上下文。
你的 AI agent 每次新会话都对你的项目一无所知。
我已经发布过我的记忆网络的完整内部实现。但要提前说明:那篇文章的内容是我在每个项目上花了数月积累下来的,没有人不应该从那里开始看。
所以这篇文章是另一个极端。五分钟版本。一次粘贴,在一个真实仓库上实际产出的结果。
演示用的仓库就是你正在阅读的这个
我在这个网站的仓库上运行了设置 prompt。这个仓库对应的是 andrewdetwiler.com。用一个你能看到的东西来测试感觉恰到好处。
运行前的状态:34 次提交,一个 README,没有任何给 agent 用的记忆文件。一个全新的 agent 打开这个仓库,不会知道 em dash gate、embargo list,或者为什么短链接长那个样子。
我把 prompt 粘贴到一个全新的 agent 会话里,让它工作。
五个小文件,总共约九十行:
CLAUDE.md,主文件。网站是什么,真正的命令,以及重要的规则。它是从 README 里提取的规则而不是自己编造的:em dash gate、everything-is-ungated 规则、near-zero JS 姿态。
AGENTS.md,两行指向主文件的指针,这样任何工具都能找到它。
docs/now.md,当前正在发生的事。它读了最近的提交并记录了一篇博客文章正在文字润色阶段。
docs/decisions.md,从历史记录中找到了四个决定并写入其中。我最喜欢的一条:embargo word list 故意放在 git 外面,因为这个 list 本身就会泄露那些名字。这条推理埋在 README 里。现在它成了一条带日期的决定,agent 一行就读完了。
docs/notes.md,三条它只是通过阅读就注意到的 gotcha。其中一条是真的而且我从来没写下来过:pre-commit hook 在你运行 git config core.hooksPath .githooks 之前什么都不会做。一个全新的 clone 会直接越过 gate 提交。
最后这条值得停下来想想。没有人告诉它这个 gotcha。它就在仓库里,如果你仔细读的话。我从来没写过,所以每次全新会话都离不小心提交只差一步——然后就得用 hard way 来学到它。
诚实的范围,因为这是 prompt 工具包最容易过度承诺的地方。
它没有覆盖任何东西。这个仓库已经有两份 context 文件(一份 glossary 和一份 open-items list),prompt 设计成在已有内容周围添加,而不是替换它们。它读了这些文件并从主文件里指向它们。
它没有产生深度知识。冷读九十行只能算方向指引,不是真正的理解。decisions 文件从四条记录开始,因为历史记录只能支持这些。真正的价值在后面显现:当它植入的习惯部分开始在你做决定的那一天捕获决定时。
而且它是一个 prompt,不是一个程序。agent 遵循指令,所以你要检查它交回的简短报告。我的这个把这个仓库处理对了,但这个仓库很小而且 README 很诚实。你的可能需要一次修正。
Prompt 在 buildwithamemory.com 上免费且无限制获取,如果你不想要页面周边内容,原始文本在仓库里也有。
它可以和任何你用的 agent 一起工作。输出是你仓库里的普通 markdown 文件,你拥有的文件,就在它们描述的代码旁边。
运行一次,然后习惯来做剩下的:当你做一个决定时,它得到一行带日期的记录和一个理由。当某个东西咬了你,立即写一行。下一个会话,agent 先读这些。
它在你的仓库里写错了什么?
如果你运行了,我真心想知道它写了什么以及哪里漏掉了。Prompt 被设计成在仓库为空或混乱时说出来,但我只有我自己的仓库来测试,而且它们都有我的习惯内嵌其中。
这个 prompt 和演示运行是我自己的作品。其背后的方法借用了具名的人,记录在仓库里:CREDITS.md。