AMICURA · 安妮 · 记忆方案 v0 · 2026-10-08

安妮的跨天记忆

安妮现在同一天里聊得很好,可到了第二天,她只认得你的脸,不记得聊过什么。这份方案让她像朋友一样:夜里把这一天整理一遍,第二天见面能接上。

现在的情况

记忆状态说明
人格(SOUL.md)在用每段对话开始时读一次
当天的对话在用Hermes 按"日期+人格版本"命名会话,同一天内记得,隔天断开
人脸库、问过记录与雷区在用本地保存,跨天有效,但只管"是谁"和"别再问"
Hermes 常驻记忆 MEMORY.md / USER.md开着,空的新会话开始时会自动读,但从没写过内容
Holographic 知识库开着,0 条可被纠正、带可信度
对话记录没存说过的话只在 Hermes 会话里,我们自己没有留底

做完以后,应该能做到

三层记忆

像人一样分三种记,各自存在不同的地方,用法也不同。

情景记忆

日记

每天一篇,约 300 字:聊了什么、做了什么、发生了什么。最近 3 天的摘要会带进第二天。

data/memory/diary/2026-10-08.md
语义记忆

关于你

长期成立的事实:怎么称呼、作息、目标、喜好、你教的人和物。每条都记来源、日期和可信度。

data/memory/facts.json → USER.md
前瞻记忆

待跟进

约好的事、该问的结果,都带上日期。到期的那天才会被带进对话。

data/memory/follow_ups.json

已有的"问过记录与雷区"(data/annie_social.json)保持不变,夜里总结时会一起参考。

一天是怎么串起来的

白天

每轮对话都留底

你说的话、安妮的回答、时间、她用的情绪、读心结果,逐行写进 data/memory/dialogue/日期.jsonl。画面这边只留行为事实,比如"在书桌前坐了 2 小时"。

夜里 3:00

整理这一天

把当天的对话、画面事件、问过记录交给总结模型(luna,只处理文字),产出四样东西:日记、新事实(包括更新和冲突)、待跟进、新雷区。电脑当时没开,就在第二天第一次启动时补做;网页上也有"现在整理"按钮,方便测试。

整理完

写进 Hermes 常驻记忆

MEMORY.md 写最近 3 天的日记摘要、今天到期的跟进、近期雷区;USER.md 写"关于你"里最重要的事实。两份文件各有字数上限,超出时按重要程度和新旧取舍。

第二天

新对话自动带上

新的一天会开新的 Hermes 会话,开始时自动读这两份文件。另外,当天第一次说话时,附注里会加一句"今天第一次见面",方便她自然地接上昨天。

flowchart LR
  A[当天对话记录] --> S[夜里整理
luna 纯文字] B[画面行为事实] --> S C[问过记录与雷区] --> S S --> D[日记] S --> F[关于你:事实] S --> U[待跟进] D --> M[MEMORY.md ≤2200 字] U --> M F --> N[USER.md ≤1375 字] M --> H[第二天新会话自动读取] N --> H

写进去的样子示例,不是真实数据

Hermes 的记忆文件是"一条一条"的,条目之间用单独一行的 § 隔开。下面是第二天早上 MEMORY.md 可能的样子:

【昨天 10-08】hong 晚上下班回来说被老板当众说了,不想多聊,后来说升职了,很高兴。说想早点睡。我关心过一次他的情绪,他说没事。
§
【前天 10-07】……
§
【今天要跟进】昨天说想 12 点前睡:今天可以轻轻问一句睡得怎么样,只问一次。
§
【近期雷区】工作上被批评的事:他不想多聊,不要主动提,他自己提再接。

USER.md 里是长期事实,比如:

称呼:hong(主人)。
§
作息:工作日晚上 8 点左右到家;目标是 12 点前睡。
§
最近:刚升职(10-08)。

规则

情况怎么处理
情绪不写情绪档案,也不写"他最近很低落"这类推断。只写你亲口说的事,以及安妮问过、你怎么回应的
敏感的事(被批评、身体不适、家事)可以写进日记,但标成敏感:不主动提,你自己提起时再接上
访客和家人只记你教过、并且本人同意的;访客的言行一律不进文字记忆
人脸人脸特征只留在人脸库,文字记忆里只出现名字
说"忘掉某件事 / 某个人"删掉相关的事实和跟进,日记里涉及的段落重新生成或删除,并回一句确认
新事实和旧事实冲突以较新的为准,旧的标为"已过时";你亲口纠正的优先级最高
健康数据(作息、久坐)只写行为事实,比如"这周 3 天过了 1 点睡",不做诊断
你想看她记得什么网页上加"安妮记得什么":日记、事实、跟进都能看、能删
保留多久对话原文和日记先留 30 天,之后只保留事实和跟进(待你决定)

实施步骤

  1. 对话留底
    验证:聊 3 句,当天的 jsonl 文件里有 3 条,主动开口的话也在
  2. 夜里整理:一份脚本读当天记录,产出日记、事实、跟进、雷区
    验证:用今天的真实对话跑一次,人工看内容是否准确、有没有写进情绪推断
  3. 写进 Hermes 记忆:按条目格式写入,超出上限时取舍
    验证:chappie memory status 显示字数没超限;文件按 § 分条
  4. 第二天带上
    验证:模拟"明天"开新会话,问"你还记得昨天吗",她能说出升职、早睡这两件事,而且不主动提被批评的事
  5. 定时与补做:每晚 3:00 自动整理;没开机就在第二天启动时补
    验证:把系统时间设为第二天,重启服务后自动补做一次,不会重复做
  6. "安妮记得什么"页面,以及"忘掉"功能
    验证:删掉一条事实后,重新写入的记忆文件里不再出现

要你决定的

相关文件:docs/安妮语用与记忆机制-v0.md(现状盘点)、docs/逸辰人格与语用设计-v0.md(人格演化机制)、esp32cam/demo/(运行中的 Demo)。