MadoHub Docs

记忆(Memory)

你的 Agent 跨会话与项目召回的长期事实、偏好和决策。

Memory 是 MadoHub 的 Agent 在会话之间记住事情的方式。没有它,每次新开一个终端都意味着 Agent 要重新学一遍你的约定、你的技术栈、你的代码风格,以及你上周做的决策。Memory 跨会话和项目留存,所以 Agent 能从上一次结束的地方继续,而不是从零开始。

Memory 与会话的聊天历史是分开的。聊天历史是你当下正在进行的对话;Memory 是 Agent 依赖的持久背景。你对"什么值得记住"始终有控制权:Agent 对"什么值得记住"的猜测会先进入一个审核队列,由你批准后才进入长期记忆。

你能用它做什么

  • 存储六种类型的内容 —— 偏好(preference)、事实(fact)、决策(decision)、模式(pattern)、复盘(postmortem)和事件(event)。每条记录都带类型标签,方便 Memory Dashboard 干净地过滤和标注。
  • 按命名空间组织 —— 把 persona 相关的记忆与项目相关的记忆分开。Agent 召回某个项目约定时不会拉进每个 persona 的个人偏好。
  • 先审核再入库 —— 每条候选记忆先进入 pending 队列等你批准。可以编辑措辞、改类型、拒绝,或原样批准。
  • 自动注入相关记忆 —— 打开自动 recall,匹配的条目会前置到每段新对话,相关的偏好和决策无需 Agent 主动询问就会浮现。
  • 手动检索 —— Agent 需要具体信息时可以显式调用 recall 做全文检索。

如何使用

  1. 打开 Settings → Memory 进入 Memory Dashboard。
  2. 在 Pending review 标签页审核候选。每条都可以:
    • 原样批准
    • 编辑内容或类型后再批准
    • 拒绝
    • 跳转回产生它的那条原始对话
  3. 在 Approved 标签页浏览并管理已批准条目,按命名空间分组。可在此编辑、删除或手工新增记忆。
  4. 切换自动 recall 注入开关,决定匹配的记忆是否自动前置到新对话,还是仅在 Agent 显式调用 recall 时才浮现。
  5. 可选:在 Advanced 区块启用策略,例如候选被以足够高的置信度看到足够多次后自动批准。

常见用例

  • "我们用 pnpm,绝不用 npm。" —— 一条偏好,Agent 在每个新会话都能召回,而不是先失败一次才发现。
  • "我们决定把 auth 留在单体里,不拆出去。" —— 一条决策,应该持续浮现,让未来的 Agent 不再重新讨论。
  • "payments.spec 里那个 flaky 测试是 mock clock 的竞态导致的。" —— 一条复盘,下次有人碰那个文件时值得被记住。
  • "这个项目的 API 响应是 camelCase JSON。" —— 一条事实,Agent 在该工作空间生成或编辑 API 代码时会拉进来。

提示与最佳实践

  • 定期审核 pending 队列。一条错误或过时的 decision 或 postmortem 比缺失一条更糟,因为它会在未来的 recall 中不断被重新呈现。
  • 有意识地使用命名空间——把项目约定限定到 workspace: 命名空间,避免泄漏到其他项目。
  • 置顶你永不想被自动取代的条目;置顶条目在 recall 时优先呈现。
  • 如果记忆开始变得嘈杂,关掉自动注入,让 Agent 仅在需要时显式调用 recall。

相关功能

  • MadoAgent —— Agent 使用记忆最频繁的面板。
  • Settings —— Memory dashboard 及其策略所在之处。

局限

  • Recall 查询至少需要 3 个字符——更短的查询会被拒绝,让 Agent 知道应换种说法,而不是默默拿不到任何东西。
  • 候选在 30 天无活动后会自动归档,所以别让队列一直搁着。
  • Memory 不替代聊天历史;它是一层更小、经过筛选的持久事实。

On this page