进阶 docs.antigma.ai 2026-10-08 09:54:38 · 6 阅读
第18章 自动记忆系统
MemoryAnte 具备持久化记忆系统,让智能体能够跨越会话积累知识。洞见、模式和经验教训会被存入记忆文件,并在后续会话中自动加载到系统提示词中。
工作原理
每个项目在 `~/.ante/projects//memory/` 下都有独立的记忆目录,其中 `` 是项目绝对路径的净化形式。核心文件是 MEMORY.md——它的内容会在每次对话开始时注入系统提示词。
交互式 TUI 中默认启用自动记忆,而无头模式的 `-p` 运行则默认关闭。你可以通过 `--enable-auto-memory` 为无头运行开启记忆,或用 `--disable-auto-memory` 在 TUI 会话中关闭记忆。若要让该设置持久生效,请在 settings.json 中配置 auto_memory。
自动行为
当智能体在你的项目上工作时,它会:
• 查阅现有记忆文件,基于过往经验开展工作
• 遇到常见错误或有益模式时,记录新洞见
• 更正或删除被证实有误或过时的记忆
MEMORY.md
主记忆文件。注入系统提示词时,长度上限为 200 行或 25 KB,以先达到的为准(超出部分会附加截断说明)。请保持精简——如需详细说明,请链接到单独的专题文件。
# 项目模式
- 所有可能失败的函数均使用 `anyhow::Result`
- 测试放在代码旁的 `#[cfg(test)]` 模块中
- 常见问题请参阅 [debugging.md](debugging.md)
# 已知问题
- auth 模块需要重构(跟踪在 #123)
专题文件
对于详细笔记,创建单独的文件并从 MEMORY.md 中引用它们:
memory/
├── MEMORY.md # 主文件(自动加载,最多 200 行)
├── debugging.md # 详细调试笔记
├── patterns.md # 代码模式和惯例
└── architecture.md # 架构决策
内存类型
开启 auto-memory 后,agent 会学习保存带类型的记忆——每个主题文件都带有 name、description 和 type 的 frontmatter,以便后续会话判断哪些内容相关。共有四种类型:
TypeWhat it capturesuser用户角色、专业领域、目标和偏好——以便调整解释方式和默认设置。feedback关于如何在这个项目中工作的指导,来源于纠正和确认。以规则开头,随后是 Why 和 How to apply 两行。project无法从代码或 git 中推导出的进行中工作、决策或约束。同样采用 Why / How to apply 结构;相对日期保存为绝对日期。reference指向外部系统中当前真实信息所在位置的指引(如 Linear 项目、Grafana 面板、Slack 频道)。
带类型的主题文件示例如下:
---
name: bundle-refactors
description: Prefer one bundled PR for refactors in this area
type: feedback
---
For multi-file refactors here, prefer a single bundled PR over splitting.
Why: the user confirmed it — a validated call, not a correction.
How to apply: multi-file refactors touching this area.
该智能体有意识地不保存密钥、任务中间状态,或任何能从代码仓库直接读取的内容(如代码结构、文件路径、规范——这些应写入 AGENTS.md)。召回的记忆被视为反映过去某一时刻的背景上下文,因此智能体在依据记忆操作前,会重新验证其中提到的文件、标志位或函数。 指南 记忆系统遵循以下原则: 简洁——MEMORY.md 在超过 200 行后会被截断,因此请保持内容聚焦 语义化——按主题而非时间顺序组织 准确——及时更新或删除过时信息 可执行——记录哪些做法有效、哪些无效以及原因 导入 Claude Code 记忆 /import-claude 命令将当前目录下 Claude Code 的项目记忆(即 ~/.claude/projects//memory/ 下的顶层 .md 文件)复制到 Ante 的项目记忆中。现有的 Ante 文件永远不会被覆盖,因此重复运行该命令是安全的空操作。命令会报告哪些文件被导入,哪些因已存在而被跳过。
记忆按项目隔离
记忆作用域限定在每个项目目录。不同项目拥有独立的记忆目录。这意味着智能体关于你 React 前端的积累知识,不会干扰其关于 Rust 后端的知识。
手动编辑
你可以直接编辑记忆文件——它们是纯 Markdown 格式。智能体也可以在会话期间使用 Write 和 Edit 工具自动更新这些文件。
name: bundle-refactors
description: Prefer one bundled PR for refactors in this area
type: feedback
---
For multi-file refactors here, prefer a single bundled PR over splitting.
Why: the user confirmed it — a validated call, not a correction.
How to apply: multi-file refactors touching this area.
该智能体有意识地不保存密钥、任务中间状态,或任何能从代码仓库直接读取的内容(如代码结构、文件路径、规范——这些应写入 AGENTS.md)。召回的记忆被视为反映过去某一时刻的背景上下文,因此智能体在依据记忆操作前,会重新验证其中提到的文件、标志位或函数。 指南 记忆系统遵循以下原则: 简洁——MEMORY.md 在超过 200 行后会被截断,因此请保持内容聚焦 语义化——按主题而非时间顺序组织 准确——及时更新或删除过时信息 可执行——记录哪些做法有效、哪些无效以及原因 导入 Claude Code 记忆 /import-claude 命令将当前目录下 Claude Code 的项目记忆(即 ~/.claude/projects/