iFlow记忆飞轮 让你的iflow的记忆永不断档

不好意思,上一篇帖子,我不能编辑了,但是上一篇帖子写的有些仓促,很多内容并没有写,所以新开一篇帖子详细介绍一下,这是上一篇帖子的链接。

虽然iflow在官方要退役了,但是在我这里依旧发光发热,我开发了一个iflow的记忆相关的项目,记忆飞轮,大家可以试用

iFlow MemFly — 记忆飞轮

别人的 AI 醒来时是空白的,我们的 AI 醒来时已经知道自己是谁。

给 AI CLI 助手加上持久记忆的守护进程。自动从对话中提取记忆,新会话启动时注入上下文,让 AI 跨会话保持连续的认知状态。

1 进程,64MB 内存,Python 3.10+。无需外部数据库。


最简上手方式

把这个仓库地址发给你的 AI 助手(iFlow CLI / Claude Code / Cursor 等),告诉它:

“这是 iFlow MemFly 记忆飞轮项目,帮我部署这个项目并进行评测。”

仓库地址:https://github.com/plhys/iflow-memfly

AI 助手会自己 clone、安装、配置、启动。你只需要等它跑完就行。


功能全貌

记忆提取与分类

守护进程自动监听 AI 的 session 文件,检测到新对话后,通过 LLM 提取 6 类结构化记忆

分类 说明 示例
身份 (identity) 用户和 AI 的身份信息 “用户的 GitHub 用户名是 plhys”
偏好 (preference) 用户的习惯和偏好 “用户偏好用中文交流”
纠正 (correction) 用户纠正 AI 的错误 “用户指出 AI 搞混了两个项目”
实体 (entity) 项目、服务、工具等实体知识 “A 计划运行在端口 18788”
事件 (event) 发生过的重要事件 “v1.3.4 已推送到 GitHub”
经验 (insight) 踩坑教训和最佳实践 “daemon 重启后需要重新注入记忆”

每条记忆自动去重,不会重复存储相同内容。

三层记忆架构

L1 索引层    index.md          每条对话一句话摘要(≤40 字),快速定位
L2 摘要层    2026-04-02.md     LLM 生成的结构化摘要,保留关键细节
L3 原始层    2026-04-02.md     完整的对话原文,按时间戳归档

三层各司其职:L1 用于注入上下文(轻量),L2 用于回顾和检索,L3 用于追溯原始对话。

AGENTS.md 自动注入(预装范式)

这是记忆飞轮的核心机制。守护进程自动将以下信息写入 AGENTS.md

  • 分类记忆:身份、偏好、纠正、实体、事件、经验

  • 最近对话索引:最近 10 条对话的时间和摘要

  • 工作状态存档:上次对话的目标、进度、决策、下一步

  • 氛围快照:上次对话结束时的情绪和互动氛围

  • 每日简报:当天记忆的总结概览

  • 时间感知:当前时间和上次对话的时间间隔

AI 启动新会话时,AGENTS.md 已经包含了所有这些信息。AI 不需要主动"回忆",记忆已经在那里了。

对话续接

每次对话结束时,守护进程自动生成:

  • 工作回顾:这次对话做了什么、做到哪了、下一步是什么

  • 氛围快照:对话的情绪基调和互动风格

  • 状态快照:当前工作的技术状态(正在改的文件、遇到的问题等)

下次对话开始时,这些信息自动注入,AI 可以无缝接续上次的工作。

影子记录

AI 对话存在上下文压缩的问题——当对话太长时,早期的消息会被丢弃。守护进程在正常处理消息的同时,维护一份 滚动 6 小时的影子副本。当检测到 session 文件被重写(消息数突然减少)时,自动从影子记录中恢复未处理的消息。

不丢消息,不漏记忆。

知识图谱

记忆不是孤立的。每条新记忆写入后,系统自动通过 向量相似度 寻找相关的已有记忆,建立关联链接。向量搜索不可用时,自动降级为 关键词匹配

你可以从任意一条记忆出发,沿着关联链接扩展,发现相关的知识网络。

每日简报

每天自动生成一份记忆简报,总结当天的对话要点和重要事件。简报由 LLM 生成,如果 LLM 不可用则自动降级为模板生成。简报会注入到 AGENTS.md,让 AI 在新会话中快速了解"昨天发生了什么"。

搜索与检索

两种搜索方式并存:

  • 向量搜索:基于语义相似度,用 sqlite-vec + embedding 实现,能找到意思相近但用词不同的记忆

  • 全文检索:基于关键词匹配,用 SQLite FTS5 实现,精确查找包含特定词语的记忆。FTS5 查询失败时自动降级为 LIKE 模糊匹配

MCP 工具

通过 MCP 协议对外提供三个工具,AI 助手可以在对话中直接调用:

  • search_memory:搜索历史记忆(支持关键词过滤和分类过滤)

  • save_memory:手动保存一条记忆

  • get_recent_context:获取最近对话的索引摘要

支持 stdioHTTP 两种模式,兼容 iFlow CLI、Claude Code 等主流 AI 工具。

Web 管理后台

内置 Web 界面,可以浏览、搜索、管理所有记忆。

数据安全

  • 原子写入:所有文件写入使用临时文件 + os.replace(),进程崩溃或磁盘满不会损坏文件

  • 自动备份:每次写入 AGENTS.md 前自动创建 .bak 备份

  • 事务完整性:数据库写入使用单一事务,不会出现半写入状态


设计理念

预装范式

AI 记忆系统有两条路径:一种是需要时去查(检索范式),另一种是在思考发生之前就已存在(预装范式)。

检索范式的流程是:用户提问 → AI 意识到需要记忆 → 调用工具搜索 → 获取结果 → 继续回答。问题在于,新会话的第一个 token 生成之前,AI 对之前的一切一无所知,它甚至不知道自己应该去搜索。

iFlow MemFly 走预装范式:守护进程自动将记忆写入上下文 → 新会话启动 → AI 已经拥有完整认知状态 → 直接开始工作。就像你早上醒来时脑子里已有的东西——你不需要「搜索」自己的名字,不需要「查询」昨天做了什么。

为什么叫「飞轮」

  1. 自转:守护进程自动运行,无需任何人推动。对话发生 → 记忆自动产生 → 自动注入下次会话。没有手动步骤。

  2. 惯性:对话越多 → 记忆越丰富 → AI 表现越好 → 用户越愿意深入对话。正反馈循环,转得越久势能越大。

  3. 动力源:记忆不是被动的仓库,而是驱动 AI 认知的主动引擎。它决定了 AI「是谁」「知道什么」「接下来该做什么」。

上下文即身份

AI 没有持久的自我。它的「自我」完全由上下文窗口中的内容决定。同一个模型,注入不同的记忆,就是不同的「人」。iFlow MemFly 自动从历史交互中构建这个身份——不是给 AI 贴标签,而是让它在每次醒来时,自然地成为「那个一直陪你工作的伙伴」。

状态恢复 vs 信息检索

信息检索:f(query) → relevant_facts     # 回答「我知道什么」
状态恢复:f(last_session) → cognitive_state  # 回答「我是谁、我在做什么、我做到哪了」

大多数记忆系统解决的是信息检索问题。iFlow MemFly 解决的是状态恢复问题——让 AI 不只是「知道一些事」,而是「回到上次离开的状态」。

记忆生命周期

感知 → 提取 → 分层 → 存储 → 关联 → 衰减 → 注入 → 消费 → 新对话(闭环)

记忆不是静态数据,而是有生命周期的活体。它从对话中被感知,经 LLM 提取和分层,存入数据库,与已有记忆建立关联,随时间衰减,被注入新会话,被 AI 消费,然后在新对话中产生新的记忆——完成闭环。

回答一下这位iflow友的问题 虽然iflow在官方要退役了,但是在我这里依旧发光发热,我开发了一个iflow的记忆相关的项目,记忆飞轮,大家可以试用 - #10,来自 10012968312

注入到 AGENTS.md 的内容顺序是:

  1. 开机自检指令 — 告诉 AI 启动时先检查 daemon 状态
  2. 时间感知 — 现在几点、距上次对话多久
  3. 今日简报 — 当天记忆的总结概览(v1.3.4 新增)
  4. 最近对话 — 最近 10 条对话的时间和摘要(从 index.md 取)
  5. 上次工作回忆 — 上次对话做了什么、做到哪了
  6. 上次对话记忆(氛围快照) — 情绪基调和互动风格
  7. 上次工作状态存档 — 目标、进度、决策、下一步、关键上下文
  8. 分类记忆 — 按类别排列:身份 → 偏好 → 纠正 → 实体 → 事件 → 经验

✦ 设计逻辑是:越紧急的越靠前。AI 读上下文是从上往下的,先看到自检指令确保系统正常,再看时间定位"我在哪",然后看简报和最近对话了解"发生了什么",再看工作状态知道"我在做
什么",最后是长期记忆(身份、偏好等)作为底层认知。

1 个赞

会额外消耗token吗,要怎么验证

验证你运行几天直接问iflow感受如何,他的回答是最直观的验证,记忆飞轮肯定会额外消耗token,因为你做索引, 摘要,整理记忆都要llm来做,让iflow时刻保持清醒本来就是奢侈的事,

但它的价值不在省 token,在于:

  1. 注入只占上下文窗口的 2.6% — 5200 tokens / 200K,微乎其微
  2. 后台提取用的是便宜模型 — 配置里可以用 mini/flash 级别的模型,成本很低
  3. 省的不是 token,是人的时间和精力 — 不用每次开会话重新交代背景、不用反复纠正 AI 犯过的错、不用提醒 AI “你上次做到哪了”
  4. 避免隐性浪费 — 没有记忆的 AI 会重复犯错、走弯路、问已经回答过的问题,这些来回才是真正的 token 黑洞