MiMo Code 的项目记忆更新机制,并非依赖后台自动扫描代码来触发。它依靠的是清晰的交互操作与周期性的整理流程——既不监听文件系统变化,也不在编码过程中悄悄提取源代码。整个记忆更新过程是可控、可追溯且具有节奏感的。

/dream 命令是核心入口
这是 MiMo Code 提供的显式记忆整理指令。执行 /dream 后,一个独立的子 Agent 会开始处理以下任务:
- 扫描最近若干轮对话轨迹(默认包含约7天内的有效交流)
- 提取其中沉淀下来的项目知识(例如:“这个仓库采用的是 Rust + WASM 构建流程”“config.toml 的 schema 已确认”)
- 写入项目专属记忆文件(
.mimo/memory/project.mem) - 清理过期或冲突条目,合并重复认识
你可以在任意会话中手动执行:
/dream
系统会返回整理摘要,例如:“合并3条路径认识,验证2个模块依赖关系,压缩记忆体积至1.2MB”。
自动触发依赖时间策略,而非文件监听
MiMo Code 默认每7天自动执行一次 /dream(从首次启动时开始计时)。该周期不可缩短,但可以重置:
- 删除
.mimo/memory/.last_dream文件,下次启动时便会重新计时 - 或直接手动运行
/dream覆盖自动节奏
项目记忆仅来自“被确认的对话内容”
它不会读取未在会话中提及的代码文件。例如,你从未讨论过 src/utils/date.rs,即使该文件确实存在,也不会进入记忆。只有当你问过类似:
“这个日期解析函数为什么返回 None?能加个 fallback 吗?”
系统才会将该函数的位置、行为以及上下文纳入记忆索引。
想让记忆更准确?注意以下三点
- 在提问时带上具体的路径或模块名,例如 “
lib/core/auth.rs里的 token 验证逻辑” - 对 AI 的修正反馈要明确,比如 “不对,实际是用 Redis 缓存 session,不是本地内存”
- 避免模糊表述,像 “那个工具类” 不如改成 “
src/shared/tools/mod.rs中的FileHelper”
记忆不是快照,而是语义提炼。它所记载的是“你关心什么”,而非“代码长什么样”。
