MiMo Code 的持久化记忆并非黑箱操作,而是设计得高度透明,并允许开发者主动调控。你无需等待系统自动归档,即可随时查看、编辑、刷新关键记忆内容。这种设计理念本质上是在告知使用者:你的项目上下文,你拥有完全掌控权。

首先,最基础的问题:这些记忆究竟存储在哪里?
记忆文件位置:如何直接定位 MEMORY.md 和 SQLite 数据库
所有项目级记忆默认存放于当前工作目录下的 MEMORY.md 文件中——这是人类可读的主记忆入口,记录着架构决策、技术选型、命名规范等关键上下文。
底层全文检索索引基于 SQLite FTS5 实现,数据库文件名为 .mimo/memory.db(隐藏目录)。它不依赖任何外部服务,纯本地存储,开箱即用。换言之,即使离线无网络,你的记忆体系依旧能正常运行。
手动更新 MEMORY.md:修改后立即生效
你可以像编辑普通 Markdown 文件一样修改 MEMORY.md。例如补充新的接口约定、删除过时的调试技巧、调整模块职责说明。
保存后,下次调用 mimo 时,主 Agent 会自动重新加载并理解变更。以下是几个实用建议:
- 保持标题层级清晰(如
## API 规范、### 身份验证流程),有助于子 Agent 精准检索 - 避免大段无结构描述,多用列表、代码块、引用块提升解析效率
- 删除已废弃条目时,建议保留时间戳或添加
[已弃用]标记,便于日后回溯
这些细节看似琐碎,但在团队协作或长期迭代中,能大幅节省排查时间。
重置或重建 SQLite 记忆索引
当 MEMORY.md 修改较多,或发现检索不准确(比如搜索“登录逻辑”未返回相关段落),手动重建索引便是最直接的解决方案:
- 运行命令:
mimo --reindex,触发 FTS5 全量重建 - 想清空全部记忆(谨慎使用):
mimo --reset-memory,会删除.mimo/memory.db并清空MEMORY.md内容(不删文件本身) - 仅刷新某类记忆:
mimo --reindex --section="测试策略",按二级标题精准重建
精准重建这个能力尤其实用。例如项目重构后,你只想更新“测试策略”相关模块的记忆,完全无需将整库推倒重来。
利用 /dream 命令进行高质量记忆收敛
/dream 默认每7天自动运行一次,但你也可以随时手动触发:
- 输入
/dream now,让子 Agent 立即执行记忆清洗:合并重复项、校验路径是否存在、剔除失效引用 - 它会生成一份
.mimo/dream-snapshot-20260625.md,供你人工复核后再确认合并 - 特别适合在版本发布前、交接给新成员前,或重构完成后的记忆同步节点
这种“自动操作+人工兜底”的节奏,既降低了维护负担,又保留了最终决策权——真正做到了可控又不啰嗦。
