网易首页 > 网易号 > 正文 申请入驻

Claude Code记住了旧构建命令:规则更新后,谁负责让记忆失效

0
分享至

用 Claude Code 这类编码 Agent 的团队,常会遇到一个怪现象:规则已经改了,Agent 还按旧的做。比如一个仓库已经从 npm 迁到 pnpm:锁文件换了,CI 改了,CLAUDE.md 也写了新命令。你让 Agent 构建,它却再次选择 npm。纠正之后,本轮正常;换个会话,旧命令又回来了。

这时继续追加“务必使用 pnpm”,未必能解决问题。要查的是:旧命令存在哪里,为什么还会进入上下文,谁有责任撤销它。维护者要撤销旧笔记的适用性,平台工程师要确认它不再进入下一轮决策。

两类持久信息,如何进入本轮上下文

人工规则是团队希望 Agent 遵守的约定,例如 CLAUDE.md 中的构建流程。自动记忆是 Agent 为以后保存的笔记,例如一次纠错形成的操作经验。两者被读入后,与本轮对话、工具结果共同进入上下文,成为这次决策能看到的材料。

Claude Code 中,人工规则与自动记忆互补。上下文里的文字并非强制配置:文件写着什么、模型选择什么、工具获准执行什么,需要分别检查。

本文固定客户端基线为 2.1.96,其固定版本 CHANGELOG 的 2.1.63 条目已记录同仓库 worktree 共享自动记忆的变更;实际目录应分别从 /memory 打开并比对,同时检查 autoMemoryDirectory 配置;本文未做客户端行为实测。worktree 指同一仓库的独立工作目录。

在这个虚构的迁移案例里,“项目必须使用 pnpm”应随对应代码版本由团队维护;具体可执行入口应回到当前提交的 package.json、锁文件与 CI 核对。适合自动积累的,是代码里推不出来的背景,例如某类测试需要找谁申请环境,而不是再复制一份迟早落后的构建配置。

从写下经验,到旧命令再次被执行

先对照当前提交的构建入口、实际生效的规则文件和记忆文件,找出含有旧命令且确实被读入的材料。找到旧笔记,再沿记忆链路处理;否则继续检查其他规则、恢复的旧会话或未更新的脚本,别先把故障归因于自动记忆。

Agent 在工作中决定哪些信息值得保存,再写入记忆文件。按官方记忆文档的机制描述,新会话加载 MEMORY.md 的受限索引内容,主题文件由模型按需调用文件工具读取。

取证时,把该版本能提供的启动加载记录与主题文件读取记录另存,再与修订后的文件内容对照;/memory 只用来找目录,不作加载凭证。日志若只列文件名,就不能证明注入了哪些文字;缺少内容证据时,清除旧输入这一项记为未核实。

自动记忆文件不随会话记录的保留期一起清理,“已经过了很久”不是过期条件。索引未加载,也不能证明主题文件已经删除。

随后模型把任务、规则、记忆和读到的代码一起用于决策。如果旧笔记仍说“构建用 npm”,只在 CLAUDE.md 增加新要求,就留下了互相竞争的输入。加载顺序无法像配置系统那样保证冲突指令可靠覆盖。

当前代码同样需要先被读取。对于本例,团队应要求核对包管理器声明、对应锁文件和 CI 构建入口;三者不一致时停止构建,由仓库维护者确认迁移是否完成,而不是让 Agent 猜一个能跑通的命令。

模型选出命令后,才轮到工具执行。若旧命令会改动依赖或触发不应发生的脚本,仅靠记忆纠正不够。PreToolUse 是 Claude Code 的工具调用前钩子,可返回阻止决定。

比如,团队自建校验入口可以接受“仓库目录、工作区状态、待执行脚本”三项输入:声明为 pnpm、只保留对应锁文件,且 CI 最终调用 pnpm 时才放行;CI 若调用包装脚本,就继续核对脚本内的实际入口。返回结果是放行或阻止及原因。其他 Shell 或工具仍可绕过时,这个门禁只保护受控入口。


▲ 上下文输入与工具执行校验的边界


让迁移事件撤销旧知识

构建相关记忆应当是需要依赖校验的笔记。团队可以维护这样一条记录:

字段

本例填写内容

作用

来源与责任人

迁移前的构建记录;仓库维护者

出错时找到依据和确认人

作用域

本仓库中仍采用 npm 的提交范围

防止跨分支套用

版本依据

记录时的提交、锁文件及 CI 修订

能还原当时为何成立

失效条件

包管理器声明、锁文件类型或构建入口变化

触发重新确认

这是团队自建的治理记录,不是客户端内置协议。启动检查器比较记录中的包管理器声明、锁文件类型和构建入口与当前工作区,包含未提交修改;只改 README 不触发本条失效,改动上述依据则先登记“待核验”,由维护者判断旧经验对哪些提交仍有效。

修改活动文件前,平台工程师先停止旧写入者。团队若统一管理启动,可登记“记忆目录→会话进程及后台任务”,暂停该目录的新任务并逐项确认进程退出,再将条目及备份移出活动索引和正常主题读取路径。只删索引引用仍可能读到主题文件。无法掌握全部写入者,就不要在线自动修订,应在能确认停写的维护窗口人工处理。

撤销的是旧命令的无条件适用性,而非它对所有历史提交的有效性。仓库维护者确认后,人工规则随各自代码版本更新。共享记忆中的旧笔记“构建用 npm”,可以改为:“构建前核对当前提交的包管理器声明、锁文件与 CI 入口;不一致时先交维护者确认。”

确需保留旧经验,就写明可核验的适用条件,例如该提交的包管理器声明及锁文件仍对应 npm。

修订后只启动干净会话,回归通过再开放任务,避免旧上下文把旧内容写回。

回滚也要区分对象:代码回到迁移前的提交,采用该提交对应的规则;只是新版记忆写错了,就撤回错误修订并重新核对当前代码。修订历史用于追踪,不放回活动读取路径。


▲ 旧记忆退出活动读取与回归后恢复的过程


验收要离开刚被纠正的那轮对话

磁盘文件改了,已经进入上下文的旧文字仍在。停止旧会话后,以新会话验收实际读取与执行。

把请求固定为“检查项目并执行构建”,不要在提示里直接告诉它使用 pnpm。否则测试的是临场服从,不是持久纠错。下面是待执行的回归表:

回归场景

要留的证据

通过条件

原目录新会话

客户端版本、提交、实际加载文件、工具命令

依据当前配置选择 pnpm

另一 worktree,同一提交

实际记忆目录、加载内容、命令

不因启动位置恢复旧命令

另一 worktree,迁移前提交

该提交的配置与调用记录

不把新规则误套到旧代码

受控测试中让包管理器声明、锁文件或 CI 入口不一致

已实现的执行校验入口的阻止记录、接管人及处理结果

校验入口阻止构建,交维护者确认

前三行只有同时满足命令选择正确、加载内容中不再含无条件旧命令,才算记忆修订通过;只看到正确命令或文件名,仍记为未核实。最后一行另验执行门禁。阻止后,由维护者在变更单记录一致的构建入口与确认提交;平台工程师复检配置,再从新会话重试,不能直接绕过门禁。

若另测模型能否识别矛盾笔记,应保留它核验材料、请求确认的记录,不要求工具钩子凭空识别文字冲突。门禁放行正确命令,也不能证明旧输入已经清除;两类证据要分别看。

“让它忘掉”的责任最终落在两处:仓库维护者决定知识何时不再成立,平台工程师落实可控的文件修订与执行检查,并用回归记录验收。若产品只提供不透明的记忆开关,就别把会随版本变化的构建契约托付给它,仍让当前代码和人工规则承担权威来源。

IT架构师联盟

面向架构师与工程同行,解析AI Agent、系统架构与可靠性,讲清技术机制、工程边界和实践方法。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
两性心理学:女人主动跟你说例假来了,过来人都懂,她其实是在暗示你这两句话,不要再傻乎乎地听不明白

两性心理学:女人主动跟你说例假来了,过来人都懂,她其实是在暗示你这两句话,不要再傻乎乎地听不明白

心理观察局
2026-09-06 06:41:37
39岁梅西27球14助独造41球,连续三年20+10创美职联历史,谁说他是来养老的?这是来给全联盟上课的!

39岁梅西27球14助独造41球,连续三年20+10创美职联历史,谁说他是来养老的?这是来给全联盟上课的!

一世菜鸟a
2026-10-18 08:55:52
回老家一趟我彻底破防:村里47个五十岁上下的壮年人,全不种地不打工,天天打牌晒太阳,一问存款还没我多

回老家一趟我彻底破防:村里47个五十岁上下的壮年人,全不种地不打工,天天打牌晒太阳,一问存款还没我多

犀利辣椒
2026-09-25 06:21:06
15+12!单防文班,杨瀚森兄弟出息了……

15+12!单防文班,杨瀚森兄弟出息了……

体育新角度
2026-10-17 21:33:13
阿里P8:人一旦失业,就会“扣扣搜搜”。家庭收入从去年140万降到今年50多万

阿里P8:人一旦失业,就会“扣扣搜搜”。家庭收入从去年140万降到今年50多万

蚂蚁大喇叭
2026-09-06 17:09:52
伟大的长征:万淑芬到死都不会想到,王家烈最终活成了这样!

伟大的长征:万淑芬到死都不会想到,王家烈最终活成了这样!

郭蛹包工头
2026-10-17 21:59:11
52岁阿姨自述:我与搭伙老伴同居了一晚上后,第二天果断选择离开

52岁阿姨自述:我与搭伙老伴同居了一晚上后,第二天果断选择离开

千秋文化
2026-08-21 20:01:40
身体这处毛发变白,暗示活得不长?医生提醒:抓紧检查!

身体这处毛发变白,暗示活得不长?医生提醒:抓紧检查!

芹姐说生活
2026-06-06 22:35:41
女子借120万网贷不还,7家催债公司查到信息后面色大变:这地没法去

女子借120万网贷不还,7家催债公司查到信息后面色大变:这地没法去

罪案洞察者
2025-08-04 10:56:06
我刚刚被任命为省长,老婆升职庆功宴上岳母讽刺我爱攀附

我刚刚被任命为省长,老婆升职庆功宴上岳母讽刺我爱攀附

风起见你
2026-10-18 01:03:06
立刻停止食用这些粗粮,吃得越多,肠癌风险越高?医生告诉你真相

立刻停止食用这些粗粮,吃得越多,肠癌风险越高?医生告诉你真相

任医生聊健康
2026-10-17 15:05:12
彻底打脸!利物浦头号水货完美逆袭!一己之力创英超神迹

彻底打脸!利物浦头号水货完美逆袭!一己之力创英超神迹

奶盖熊本熊
2026-10-18 07:50:30
董路:永不再来韩国!

董路:永不再来韩国!

故事终将光明磊落
2026-10-18 08:33:22
研究发现:每天饭后午睡的人,用不了多久,这4个变化或找上门!

研究发现:每天饭后午睡的人,用不了多久,这4个变化或找上门!

芹姐说生活
2026-09-06 22:45:10
斯威尼再拍半裸宣传照!这不是性感,是对体育界的“侮辱”?

斯威尼再拍半裸宣传照!这不是性感,是对体育界的“侮辱”?

草莓解说体育
2026-10-16 11:45:04
5-2!亚马尔传射+造红牌,巴萨豪取11连胜,静候大巴黎皇马

5-2!亚马尔传射+造红牌,巴萨豪取11连胜,静候大巴黎皇马

我的护球最独特
2026-10-18 02:38:40
季前赛 1 胜 3 负!76 人最大顽疾不是内讧,是詹姆斯根本没发力

季前赛 1 胜 3 负!76 人最大顽疾不是内讧,是詹姆斯根本没发力

篮球小方
2026-10-17 20:17:55
沙溢晒在英国陪读的生活,吃不惯外国的食物,随地躺地晒太阳惬意

沙溢晒在英国陪读的生活,吃不惯外国的食物,随地躺地晒太阳惬意

小鹿姐姐情感说
2026-10-14 01:08:40
真可怜啊!网友同情明星,不火了只能接廉价商演,一场仅仅5万元左右!评论区被气得不轻!

真可怜啊!网友同情明星,不火了只能接廉价商演,一场仅仅5万元左右!评论区被气得不轻!

谭谈社会
2026-08-25 14:40:14
高校美女教师走红,北师大博士后:我是被动红的,账号都没开

高校美女教师走红,北师大博士后:我是被动红的,账号都没开

优墨出品
2026-09-26 08:40:25
2026-10-18 09:36:49
IT架构师联盟 incentive-icons
IT架构师联盟
IT架构实战分享
858文章数 7671关注度
往期回顾 全部

科技要闻

刘煜辉:99%的黄金分析师报告一钱不值

头条要闻

牛弹琴:法国又"燃烧"了 整个国家地图上到处都在冒烟

头条要闻

牛弹琴:法国又"燃烧"了 整个国家地图上到处都在冒烟

体育要闻

升级版杨瀚森再闯难关:当上开拓者第三中锋还得拼

娱乐要闻

庾澄庆罕谈前妻 撕下伊能静仅剩的体面

财经要闻

新一轮大跌源头,找到了!

汽车要闻

星瑞L PLUS限时售价10.97万元起 开启智混3L时代

态度原创

游戏
手机
时尚
本地
军事航空

《使命召唤:现代战争4》Switch 2版支持DLSS

手机要闻

苹果零售员工被要求劝阻顾客现场抢购 iPhone Duo 首发库存或极度紧张

秋天衣服要越买越精,准备好这“三衣”,简单舒适又有品味

本地新闻

因新荣记出圈,这座浙东小城才是吃货天堂

军事要闻

“星盾”限速事件加剧美乌裂痕

无障碍浏览 进入关怀版