mimo code 的 memory agent 是长程编程任务的底层支柱,通过四层记忆体系(项目记忆、会话检查点、任务进度、全局记忆)协同实现工程化记忆管理,并需开发者配合指定项目路径、执行 /sync、/load 等命令确保记忆准确生效。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

MiMo Code 的 Memory Agent 不是附加功能,而是整个长程编程任务能跑通的底层支柱。它不靠模型“努力记住”,而是用工程化方式把记忆拆解、分层、自动维护,让 AI 在上百轮交互后依然清楚你在做什么项目、改过哪些文件、卡在哪一步。
四层记忆体系怎么协同工作
MiMo Code 的记忆不是单一层级堆叠,而是按粒度和生命周期划分为四层,各自承担明确职责:
- 项目记忆(Project Memory):绑定具体代码仓库,记录项目结构、技术栈、关键配置(如 package.json、tsconfig.json 内容),每次进入新项目自动加载,是所有后续操作的上下文锚点;
- 会话检查点(Session Checkpoint):在每轮对话结束时,由 Writer subagent 自动提取关键状态(当前编辑文件、终端输出、Git 差异摘要),生成轻量快照,避免整段历史重复传入模型;
- 任务进度(Task Progress):针对当前正在执行的多步任务(如“重构用户登录模块”),单独维护状态机,记录已完成子任务、待验证点、失败回退位置,支持中断后 resume;
- 全局记忆(Global Memory):通过 /dream 命令定期压缩沉淀,把分散的项目记忆与跨项目共性知识(如你常用 ECharts 配置模式、偏好 TypeScript 接口命名风格)融合为紧凑向量,供后续所有会话调用。
如何让 Memory Agent 真正“记住”你的项目
记忆不会自动生效,需要开发者配合几个关键动作:
- 首次启动 MiMo Code 时,务必使用
mimo code --project ./my-app指定根目录,否则项目记忆无法激活; - 长任务中若手动修改了文件(比如自己补了一行 import),建议紧接着运行
/sync命令,主动触发检查点更新,避免 Agent 依据过期快照做决策; - 遇到 Agent 反复误解需求时,不要只重试指令,可输入
/memory status查看当前加载的记忆摘要,确认项目结构识别是否准确、最近检查点是否包含关键变更; - 跨会话继续开发前,用
/load my-app显式唤起对应项目记忆,比直接打开终端更可靠——尤其当多个项目并行时。
Compose 模式下记忆如何参与全流程
Tab 切换进入 Compose 模式后,Memory Agent 不再被动存储,而是主动参与规划与校验:
- 收到“用 Vue3 写登录页”这类模糊指令,主 Agent 会先查项目记忆确认是否已有 Vue 环境、router 配置、API 封装方式,再生成适配现有架构的方案;
- 编码阶段,Writer subagent 每次写入文件前,会比对任务进度中已记录的组件依赖关系,自动补全 missing import 或调整 props 类型定义;
- 测试执行环节,Goal 停止条件验证器不仅检查终端输出,还会读取项目记忆里的 jest.config.ts 配置,确保运行的是你项目实际采用的测试策略;
- 最终交付前,系统自动调用 Git diff 与项目记忆中的 baseline 对比,标记新增/修改文件,并生成符合你团队规范的 commit message 草稿。
调试记忆失效的常见路径
当发现 AI “突然忘了”或给出脱离上下文的代码,优先按以下顺序排查:
- 检查当前终端是否仍在项目根目录下运行 —— 记忆绑定依赖路径,cd 出目录会导致项目记忆断连;
- 运行
/dream --dry-run查看最近一次记忆压缩日志,确认是否有报错(如 JSON 解析失败、路径权限不足); - 对比
/memory list输出与实际文件变更时间,若检查点时间早于你上次手动修改,说明 sync 未触发; - 临时禁用 Dynamic Workflow(加参数
--no-dynamic),排除并行子 Agent 状态同步异常干扰,回归单线程验证基础记忆链路。











