【开发调优】分享自己用Codex和Claude的增强AI记忆的工作流

StarArt 2026-06-30 10:56 1

第一次写文给大家分享自己的经验,如果各种更好的建议请各位提出。你可以直接把这篇帖子扔给 Codex 或 Claude,让它们自己学学里面的套路。不过记住:可以让 AI 帮你做计划,但具体的落地操作和拍板权,必须死死捏在你自己手里。


我现在越来越觉得,Vibecoding(沉浸式 AI 编程)最让人头疼的,压根不是让 AI 写代码。


真正难的是:

怎么让 AI 在一个长线项目里不失忆、不跑题、不把过期的废稿当成新任务,更别因为“太积极”而越权瞎搞。


我以前也天真地以为,只要模型的上下文窗口够大,这些都不是事儿。后来发现根本不是这么回事。


上下文再长,项目一复杂,AI 照样懵圈。

旧文档、新任务、历史测试、临时方案、外部建议……这些东西全搅和在一起之后,AI 很容易把“曾经出现过的东西”当成“现在应该继续干的活”。


所以我现在的路子变了:不再指望 AI 自己死记硬背,而是给它外包一套“记忆系统”。


这套玩法不挑模型,Codex 能用,Claude 也行。

说白了,就是让 AI 每次开工前,都必须先强制对齐项目的规矩、任务的边界和当前的状况。


一、规则文件:先给 AI 发一本“项目基本法”


我做长项目,第一步绝对是先搞份规则文件。


名字随便起,比如:




  • AGENTS.md




  • CLAUDE.md




  • AI_RULES.md




  • PROJECT_RULES.md


    它的作用就一个:明明白白地告诉 AI,这个项目到底按什么规矩办事。


    里面一般会交代清楚:




  • 项目现在的核心目标是什么?




  • 当前的主线任务是什么?




  • 哪些东西只是历史遗留,别去管?




  • 哪些核心文件绝对不能乱动?




  • 哪些高危操作必须先请示我?




  • 测试怎么跑?发布走什么流程?




  • 外部给的建议能不能直接用?


    这份文件不是给人看的漂亮 PPT,而是给 AI 设定的底层思想钢印。


    它解决的核心痛点是:





让 AI 每次进项目,先搞懂这个世界的运行法则。



不然每次新开一个对话框,你都得像复读机一样从头解释。你嫌烦,AI 也容易听偏。


二、新项目开荒:先让 AI 自己写规则


如果是刚开坑的新项目,我绝对不会一上来就让 AI 写代码。


我会先让它帮我起草一份项目规则文件(比如 AGENTS.mdCLAUDE.md)。名字不重要,关键是得先把项目的边界给框死。


我一般会让 AI 按这个骨架来起草:


# AI Project Rules

## 1. Project Goal
这项目到底要解决啥问题。

## 2. Current Main Line
当前主线是什么,什么活儿优先级最高。

## 3. Non-Goals
现在明确【不干什么】,防着 AI 自己给自己加戏。

## 4. Priority Order
听话顺序:当前我的指令 > 项目规则 > 当前小批次任务 > 本地代码和测试 > 历史文件和外部建议。

## 5. Editable Areas
哪些目录和文件可以随便改。

## 6. Forbidden Areas
哪些文件、配置、密钥、生产数据、备份,绝对不能读、不能改、不能打印。

## 7. Batch Rule
一次只干一层的活,别把改代码、改测试、跑线上、发版全混在一起。

## 8. Test And Verification
改完之后必须跑哪些检查。

## 9. Release Gate
什么情况下才能发布,什么情况下必须停下来问我。

## 10. Handoff Format
每轮干完活,交接条(closure)应该怎么写。

这一步,别指望 AI 一次性写完美。它的任务只是出个草案,最后必须由你来修改和拍板。


因为这不仅是 AI 的作品,更是你给 AI 立的规矩。你可以这么给 AI 下指令:



“请根据当前项目情况,帮我起草一份 AGENTS.md。要求:先写目标,再写主线和非目标;明确哪些文件不能碰;排好任务优先级;定好小批次执行规则和发布门禁。注意:只输出草案,不要执行任何实际改动。



有了这份“基本法”,后面的 Harness(门禁)和 RAG(检索)才算有了主心骨。不然门禁不知道按什么标准拦人,检索也不知道该过滤什么垃圾信息。


三、项目地图:告诉 AI 东西都放哪了


规则文件解决的是“该不该干”,项目地图解决的是“去哪找东西”。


我会单独弄一份地图,记清楚:




  • 页面入口在哪




  • 核心模块在哪




  • 脚本、测试、配置都在哪




  • 哪里是容易踩坑的高风险区




  • 哪些文件纯粹是文档,哪些会影响实际运行


    在长线项目里,这玩意儿简直是救命的。


    没地图的时候,AI 每次进来都像个无头苍蝇,只能在代码库里到处乱翻。翻多了就容易搞错文件、越界操作,甚至把八百年不用的废弃逻辑当成宝贝。


    项目地图的价值就在于:





让 AI 少走弯路,多走正门。



四、Harness:干活前先过安检


我现在特别看重 Harness。


你可以把它当成**“开工前的安检门”或者“安全带”**。每次 AI 准备动手前,都得先过一遍脑子:




  • 这次任务属于哪一层?是写文档、改代码、写测试,还是发版?




  • 允许碰哪些文件?绝对不能碰哪些?




  • 能不能跑命令?能不能联网?能不能碰生产环境?




  • 有没有把好几个任务搅和在一起?


    这一步极其关键。


    因为 AI 最大的毛病往往不是“不会干”,而是“太勤快”。你让它修个小 Bug,它可能顺手把你整个模块重构了;你让它写个计划,它可能直接上手改文件了。


    Harness 的原则就一句话:





拿不准能不能干的,就先别干。



Vibecoding 不是让 AI 撒欢儿野跑,而是让它在画好的道道里跑得更快。


五、RAG:不是喂得越多越好,而是只喂该吃的


很多人一听 RAG(检索增强生成),就想着“把所有资料一股脑全塞进去”。


但我现在觉得,RAG 最牛逼的地方根本不是“捞得多”,而是**“过滤得准”**。


项目做久了,肯定会攒下一堆破烂:




  • 废弃的旧方案




  • 过期的测试报告




  • 临时搞的实验




  • 外部的审查意见


    这些东西,绝大多数都不该出现在当前的任务里。如果全塞给 AI,它的脑子绝对会被污染:把旧方案当成主线,把临时实验当成正式规矩。


    所以我现在对 RAG 的理解是:





RAG = 资料精准投放 + 垃圾信息过滤。



这次干活需要啥,就给它看啥;不该看的,半个字也别放进上下文里。资料绝对不是越多越好,不受控的资料越多,AI 跑偏得越快。


六、小步快跑:一次只开一个盲盒


我现在几乎不会对 AI 说:“你帮我把这事儿全搞定。”


长任务必须得拆,一口吃不成胖子。常见的拆法是:


L0:只读审计(只看不改)
L1:小范围修改
L2:针对性测试
L3:全量测试
L4:预发布或线上验证
L5:发布决策

每一批活儿都得交代得明明白白:




  • 这次的目标是什么?




  • 允许改什么?明确【不干】什么?




  • 怎么才算过关?




  • 搞砸了停在哪?下一步干嘛?


    看着好像变慢了,其实最省时间。因为一旦 AI 把任务混在一起搞,后面排错能让你抓狂——你根本不知道是代码错了、配置错了,还是 AI 一开始就理解错了。


    小批次的好处就是:





每次只打开一个盒子,出了问题立马就能按住。



七、决策报告:别让历史包袱带偏节奏


长项目里一定会堆积大量历史材料。有的还能用,有的早过期了,有的只是当初随便试了试。


所以我会让 AI 写决策报告,把这些破烂分个类:


keep:留着
rewrite:稍微改改
defer:以后再说
discard:直接扔掉
blocked:现在不能动

这一步真不是强迫症,纯粹是为了防跑题。


AI 的脑回路很直,它很容易觉得:“以前出现过的东西 = 现在还得接着干”。


但真实项目根本不是这样。很多东西只是迭代留下的残骸,如果不把它们筛掉,AI 就会一直被历史包袱拖着走。


八、Closure:给下一次对话留个交接条


每一批活儿干完,我会让 AI 写一份 Closure(交接条)。


不用搞得花里胡哨,把事儿说清楚就行:


## Changed Files
改了啥文件

## Checks Run
跑了啥检查

## Skipped Gates
啥没跑,为啥没跑

## Self-Audit
有没有越界的风险

## Remaining Risks
还有啥坑没填上

## Next Allowed Step
下一步只准干嘛

这玩意儿最大的价值是“跨会话连戏”。


换个窗口、换个上下文,甚至换个模型,只要把最近的交接条扔进去,它立马就能接上茬。这可比让 AI 自己去翻几百页的聊天记录靠谱太多了。


九、测试:看看 AI 有没有把规矩当耳旁风


规则文件是告诉 AI 应该怎么做,而测试就是用来抓它有没有偷懒或越界的。


有些红线,最好直接写成测试代码:




  • 绝对不能碰某些文件




  • 绝对不能生成某些内容




  • 绝对不能泄露内部词汇




  • 绝对不能绕过发布门禁


    测试不是为了证明你的项目有多完美,它更像是个护栏:





当 AI 开始放飞自我的时候,至少有东西能把它硬拽回来。



十、我现在最顺手的完整流程


我现在比较习惯这么个节奏:


新项目开荒

先起草 AGENTS.md / CLAUDE.md

【我】亲自修改并拍板规则

建好项目地图

Harness 按规矩判断任务边界

RAG 按规矩筛选当前需要的资料

AI 写小批次计划

【我】确认计划

AI 在画好的圈子里干活

跑测试

写交接条 (Closure)

进入下一批

这里面最核心的逻辑就是:



AI 可以出谋划策,也可以下地干活,但方向盘必须死死握在人手里。



上不上线、扔不扔代码、扩不扩大范围、碰不碰高危区……这些事,绝对轮不到 AI 来做主。


AI 只管给建议,人来拍板做决定。


十一、这不是管得太死,而是为了跑得更稳


肯定有人会觉得:搞这么多规则、门禁、测试、交接条,会不会把 AI 给管死了?


我的实际体验恰恰相反。


没这些规矩的时候,AI 看着挺自由,但你得天天跟在它屁股后面收拾烂摊子。有了这些规矩,AI 反而能稳稳当当地跑上很久。


因为它心里有数了:




  • 现在的目标是啥




  • 哪里是雷区不能碰




  • 该看什么资料,不该看什么废纸




  • 这波活儿干到哪就得停手




  • 哪些事必须乖乖交还给老板(你)来定夺


    Vibecoding 最爽的状态,绝不是把项目往 AI 手里一扔就不管了。而是:





人定方向,AI 跑执行。

人做决策,AI 做推演。

人画好圈子,AI 在圈子里踩油门。



十二、最后总结一下


我现在理解的“AI 长效记忆”,根本不是让模型去死记硬背几万字的聊天记录。


而是把记忆拆解开,外包给系统:


基本法 (AGENTS.md) = 长期记忆
项目地图 = 空间记忆
Harness = 开工前的安检记忆
RAG = 资料的精准投放记忆
小批次计划 = 当前的任务记忆
决策报告 = 历史的筛选记忆
Closure = 换班的交接记忆
测试 = 规矩的校验记忆

把这套架子搭好,不管你用 Codex 还是 Claude,都不用再靠无限拉长聊天窗口来“续命”了。


每次重新开工,模型都能先读规矩、看地图、过安检、拿资料,然后再利索地干活。这也是我目前折腾下来,最适合长线项目的 AI 编程工作流。


附言


平时我也会顺手用 Mimo 这类国产长文本大模型帮我查漏补缺,挑挑刺,看看计划有没有毛病、AI 有没有越权瞎搞。


多找几个模型交叉“找茬”确实挺香的,但不管怎么折腾,最后的落脚点还是得回到咱们自己定的规则文件、项目地图、门禁和测试上。千万别让 AI 替你拍板做最终决定。


就像智能汽车自动驾驶再好,但是方向盘一定要紧紧握在自己的手里!

最新回复 (5)
  • xzcccc 06-30 11:04
    1

    收藏了,晚点阅读,我感觉重点是不要用/goal,不然很容易把代码改废,除非每次只改小功能

  • gwb 06-30 11:10
    2

    大佬,学习ai使用这个很有用,已经收藏了

  • Bichi_Panda 06-30 11:23
    3

    看起来不错,收藏了。后面具体操作一下试试看。

  • StarArt 楼主 06-30 12:23
    4

    /goal的问题其实是一个回合少看一句Agents.md的约束,好几个回合就去姥姥家了

  • Azero Zf 06-30 12:58
    5

    挺有用的,收藏了,分享一个类似的,code-skills/Spec-skill at main · Fateorcloud/code-skills · GitHub

* 帖子来源Linux.do
返回