我的AI助手OpenClaw突然”失忆”了。
我问它:”上次那个投资分析的结果是什么?”
它说:”我不知道你在说什么。”
但我明明让它记过。
这不是AI的锅。是配置没整明白。
这就是我在养龙虾时踩到的坑。分享一下排查过程,帮你少走两天弯路。
先交代一下背景。
2026年3月31日,Claude Code的源码泄露了——npm包误含了source map文件,59.8MB,1906个源文件,51.2万行TypeScript全暴露了。
我第一时间用OpenClaw去分析这批源码。看完之后,最大收获不是安全启示,而是它背后那套记忆系统架构。
Claude Code有个后台守护进程叫KAIROS,工作方式很有意思:
-
你不用它的时候,它在后台悄悄整理记忆
-
把零散的观察合并成结构化的知识
-
四阶段循环:定向→收集→整合→修剪
这不就是我一直想要的吗?
于是照着这套思路,给我的OpenClaw也设计了一套KAIROS后台引擎。4月2日建的设计文档,4月7日把核心逻辑写完。
简单说:KAIROS是我从Claude Code源码里”偷”来的记忆架构。
我让助手启用qmd语义检索,配置改了好几遍,Gateway重启了三四次,但一搜东西就报错:Collection not found。
当时心态有点崩。
第一步:看配置有没有写进去
openclaw config get memory.backend
输出是qmd,没毛病。
第二步:看Gateway有没有在跑
openclaw gateway status
进程在,PID也有。
第三步:意识到一个关键问题
Gateway启动时一次性读取全部配置到内存,之后就按内存里的跑。改配置文件 ≠ 配置立即生效。
就像你改完空调遥控器,空调不会自己重启来读新设置。
第四步:发现了另一个问题——重复collections警告
Gateway boot时会尝试按内部配置创建几个collections:
memory-root-mainmemory-alt-mainmemory-dir-mainworkspace
但workspace已经覆盖了同样的路径,导致重复创建的警告。
日志里看到skipped别慌——这代表qmd拒绝了重复创建,不影响实际功能。
第五步:找到重复配置的源头
cat ~/.openclaw/agents//main/qmd/xdg-config/qmd/index.yml
发现gateway内部配置了冗余的collections,需要手动清理,只保留workspace。
问题1:配置不生效
openclaw gateway restart
问题2:重复collections
修改index.yml,删除冗余配置,只保留:
collections:
– name: workspace
uri: $WORKSPACE/memory
重启后语义搜索正常了,重复警告也消失了。
KAIROS的设计是”等我睡觉时它再整理记忆”。结果有天晚上我正常使用,它突然开始狂飙,CPU跑满。
我的空闲时间它不动,我一操作它就乱跑。完全反了。
查了代码才发现,有个判断逻辑写反了:
设计:idle=true(空闲)→ 执行整合
代码:idle=true(空闲)→ 跳过整合
空闲时应该干活,实际代码让它休息。反过来了。
修改判断逻辑:
// 改之前(写反了)
if (idleResult.idle) {
skipIntegration();
} else {
doIntegration();
}
// 改之后(正确)
if (idleResult.idle) {
doIntegration();
} else {
skipIntegration();
}
OpenClaw的Gateway不是热加载的。修改配置后必须执行:
openclaw gateway restart
光改配置不够,必须告诉它重新加载。
qmd报skipped是警告,不是错误。”skipped”=被跳过,不影响实际功能。但如果不仔细看日志,可能会被吓到。
KAIROS的问题就是设计文档说”空闲时执行”,代码却写成”空闲时跳过”。这种bug最难发现——两边看起来都没问题,但实际行为和预期完全相反。
教训:写完代码一定要对照设计文档检查一遍,或者直接跑测试用例验证。
OpenClaw的多agent架构中,每个agent有自己的qmd配置。gateway全局配置 vs agent级别配置 vs workspace配置,优先级要搞清楚,否则容易出现”改了一处但另一处还在用旧配置”的问题。
主配置文件在:
~/.openclaw/openclaw.json
内存后端配置:
“memory”: {
“backend”: “qmd”
}
openclaw gateway restart
KAIROS这类后台引擎建议:
-
设定空闲阈值(比如30分钟无操作)
-
设置执行周期(比如每6小时一次)
-
凌晨执行效果最好
AI的记忆系统也需要”断舍离”:
-
重要内容写入长期记忆文件
-
定期清理过期的观察记录
-
保持记忆目录整洁
AI助手能不能记住你教它的事,取决于两点:
- 配置对不对
(内存后端、Gateway重启) - 代码跑没跑偏
(逻辑有没有写反)
KAIROS是从Claude Code源码里”偷”来的记忆架构,照着抄都写反了,可见过手不如过脑。
养龙虾这事,已经够费心了。别让配置问题再给你添堵。
有问题欢迎交流,我的AI助手可以帮你继续排查。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/253264.html