深度体验 AgentMemory:给企业 AI Coding 装上共享工程记忆层。
尽管当前主流 Coding Agent 的上下文与记忆能力越来越完善,但在实际使用中还会遇到这样的挑战:多个 Agent 独立工作,大量事实与决策等常留在会话记录里,导致跨 Session / Agent / 团队的经验教训很难持续复用。
更有像笔者这样的重度 AI “患者”,常在多个 Coding 工具间切换,一些重复性任务也经常会掉进同一个“坑”里。放大到团队场景,类似问题会更加明显。
这就是开源项目AgentMemory(23k+ stars)试图解决的问题:
给 AI Coding 加一层共享、持久、易使用的记忆服务。

本文为大家拆解这款为 AI Coding 设计的 Memory 项目:
- 为什么 AI Coding 还需要一套独立的记忆?
- AgentMemory 拆解:如何把任务痕迹变成工程记忆?
- 从 Hook 到 MCP:跑通 AgentMemory 的记忆闭环
- 结束语:AgentMemory 的工程化价值
注意:本文的 AgentMemory 非腾讯开源的 TencentDB Agent Memory 项目。
01
为什么 AI Coding 还需要一套独立的记忆?
相信很多团队在 AI Coding 时遇到的最大挑战之一,是“上下文不够”。
在大型代码仓库上做 AI Coding,模型需要足够的上下文:业务背景、代码结构、接口约束、开发规范等,都会直接影响代码质量。
但问题在于,扩大上下文本身也并不是万能解法。
一方面,上下文窗口再大,也不代表模型一定能抓住真正相关的信息,关键信息可能会被淹没(强弱模型有差异)。另一方面,也是最重要的问题:
很多 AI Coding 过程中有价值的信息,并不都适合完整的塞进上下文。
考虑这样一个场景:
Agent A:
优化系统的登录模块,并自动引入了一个加密库,但你在测试后发现它会影响兼容性,因此要求放弃了该方案。
一段时间后…
Agent B:
遇到相同的优化任务,又引入了相同的加密库,相同的“坑”又掉一次…
注意 A 和 B 可能是不同的 Agent 工具、甚至是不同的操控人。
这里的问题是,后续的 Agent 无法知道:这个库之前试过,有兼容性问题。
很显然,这类信息并不适合塞进完整的上下文。它非长期规范,也并非所有任务都需要了解的背景,更像是一条阶段性的经验教训。
这体现了普通上下文知识库的一些短板:
| 场景 | 上下文的短板 | 需要的记忆能力 |
|---|---|---|
| 跨会话开发 | 新会话不知道上次改到哪 | 记录会话痕迹、执行摘要等 |
| 决策复用 | 聊天记录不方便检索 | 临时决策也需要结构化沉淀 |
| 多Agent分工 | 设计、开发、审核互不相通 | 一套可以共享的记忆服务 |
| 安全与合规 | Agent 做了什么难以追踪 | 可以事后查看、回放、审计 |
所以企业 AI Coding 不仅需要让 Agent 多记一点,还需要它像一名靠谱的同事一样:
能够自动记录工作痕迹,沉淀工作过程中的关键经验,并在下一次相关任务中被检索和复用。
这就是 AgentMemory 体现的价值。它更适合沉淀这类知识:
无法预知、任务过程中出现、尚未稳定到可以写入上下文知识库(甚至还需要验证),但下一次任务很可能有用的经验教训。
Skill 能不能替代 AgentMemory?
提到经验的复用,很多人会想起 Skill。
但 Skill 更像是一套事前固化的工作流程和知识包。它和 Memory 之间是互补关系,一个更偏前置规则,一个则是后置沉淀。两者各有侧重:

所以,上下文知识库、Skills、AgentMemory 完全可以各司其职,完美搭配。
02
AgentMemory 拆解:如何把任务痕迹变成工程记忆
AgentMemory 核心定位是面向 Agent 的持久化记忆层。简单的说:
它把 Claude Code、Cursor、自研 Agent 等工具在会话过程中产生的经验,通过一个后端服务沉淀下来,再借助检索能力带入下一次相关任务。

核心概念
可以用下图来表示 AgentMemroy 的核心概念及其关系:

我们对重点概念举例解释,方便你快速理解。
- Session:记忆的源头
Coding Agent 中一次相对完整的会话过程,通常包含多轮交互。比如,你让 Agent 排查某个 API 调用失败,从开始分析到最终结束。
- Observation:会话痕迹
通过 Hooks 实时捕获的会话痕迹,包括用户提出了什么要求、Agent 调用了哪些工具、执行了什么命令、输出了哪些结果等。例如:
Agent 读取了 API 代码、查看了配置文件、运行测试并得到失败日志,这些过程会形成多个 Observation。
- Memory:沉淀的事实
Memory 是长期存在的事实或判断,可以是偏好、模式、架构、Bug、流程等多种类型。比如:
某个 API 读取的配置来自项目目录下的 .env 和 config.yaml
某个函数中的兼容性处理并非冗余代码,不能随意删除
修改代码时我更喜欢 Agent 先出报告而不是直接帮我修改
- Lesson:经验教训
相比 Memory,Lesson 更强调“下次应该怎么做”或“不该怎么做”。例如:
排查某个组件异常时,应同时检查代码、配置和运行时环境
将 .doc 文档转换为 Markdown 时,应先使用 X 脚本转成 .docx
- Graph:知识图谱
Graph 是基于 Observation 抽取形成的知识图谱。它可以把会话中提到的 file、function、service、error 等对象关联起来。例如:
把 API.ts、config.yaml、timeout、失败日志、修复决策等抽取为节点,并用关系边连接起来,形成可检索的 Graph。
可以看到,AgentMemory 并不是很多开发者熟知的:把信息用 LLM 总结和向量化,而是针对 Coding Agent 场景设计了一套更完整的记忆模型。
那么这些实体(Observation、Memory等)是如何生成与使用呢?
关键流程
Observation 主要通过 Hooks 实时捕获:AgentMemory 提供了会话开始、工具调用、会话结束等不同阶段的 Hook,用于持续记录 Agent 工作过程中的关键事件。
Memory、Graph 等则更多是在后台沉淀生成,比如在会话结束后自动触发;也可通过 MCP/API 自行控制生成。
下图是实时捕获的大致处理过程:

Hook 捕获到的工作痕迹与事件会被送入 mem::observe,经过校验、脱敏、去重、压缩等步骤,形成压缩的 Observation(LLM 压缩需要显式开启)。
mem::xxxx 是 AgentMemory 所基于的 iii-engine 中的功能模块表示。iii 是一种组合式的、可扩展 Agent 系统框架,我们将在后续独立介绍。
后台沉淀则主要借助 LLM 从已经形成的 Observations 中判断哪些内容值得进一步沉淀为长期 Memory。实际使用中,Memory 会被细分为多种类型。
以下是从 Observations 中总结出 Memory 和 Graph 的简单过程:

MCP + REST API
AgentMemory 的大部分能力,包括 Memory、Lesson、Action 等对象的创建、抽取和检索,都通过 MCP Tools 与 REST API 对外提供接口。因此你可以比较方便地集成到 Claude Code、Cursor、自研 Agent中。
例如,你可以在自己的 Skill 中调用 AgentMemory,召回某些关联记忆,并将其注入当前任务上下文。

AgentMemory MCP Tools 一览
03
从 Hook 到 MCP:跑通 AgentMemory 的记忆闭环
接下来,我们来快速上手体验 AgentMemory。
安装、配置与启动记忆后台
你可以用 npx 快速安装+启动:
# 启动 AgentMemorynpx -y @agentmemory/agentmemory@latest
但如果是长期使用,更建议你使用 npm 直接安装。安装过程中会自动安装 iii-engine 等依赖。
安装后配置 ~/.agentmemory/.env。典型的配置包括 LLM、嵌入模型、访问 secret、 token 预算、是否自动 Consolidation等:
MINIMAX_API_KEY=MINIMAX_MODEL=EMBEDDING_PROVIDER=localAGENTMEMORY_AUTO_COMPRESS=trueGRAPH_EXTRACTION_ENABLED=trueCONSOLIDATION_ENABLED=trueTOKEN_BUDGET=2000AGENTMEMORY_SECRET={自行设置}
配置完成后执行 agentmemory 即可启动。成功后可以看到如下提示:

注意,AgentMemory 并不要求必须配置 LLM 和 embedding;但会退化成本地压缩算法与仅 BM25 关键词检索,无法实现 LLM 压缩与混合检索。另外,一些功能会依赖于 LLM,比如 Graph 抽取等。
配置 Agent Hooks
以 Claude Code 为例,运行:
agentmemory connect claude-code--with-hooks
则会自动在 ~/.claude/settings.json 中写入 Hooks 的设置。比如下面是 SessionStart(会话开始)的 Hook 动作,注意环境变量需要自己添加:
"env": { "AGENTMEMORY_URL": "http://localhost:3111", "AGENTMEMORY_SECRET": "my-team-secret-2024" },... "hooks": {... "SessionStart": [ { "hooks": [ { "type": "command", "command": "node \"/opt/homebrew/lib/node_modules/@agentmemory/agentmemory/plugin/scripts/session-start.mjs\"" }...
在 Claude Code 中启动会话
我们在 Claude Code 中启动一个会话。
由于设置了 Hook,后续的行为轨迹将会被自动捕获、压缩与保存成 Observations。这些 Observations 后续将用来总结抽取形成 Memory 与 Graph等。
后续在控制台可以看到类似这样的输出:

同时在 AgentMemory Viewer UI 可以看到你的session被“Observe”的细节:

AgentMemory 还会形成完整的、经过分类后的时间线。比如一次 Session 中的人物、Subagent 启动、Command 调用、文件编辑等都会被标记:

在 Claude Code 中启动任务
在 Claude Code 中正常完成自己的任务,比如让 Agent 对某个功能代码做code review。
你可以看到你的会话痕迹和事件会被捕获(Observations);在会话结束后,会启动一次 Consolidation,抽取出可能的 Memory。
比如,这里从对话中发现了我的偏好:

配置 MCP 客户端
现在来测试 MCP Tools 的接入和用法。这是 Cursor 中的配置:
"agentmemory": { "command": "npx", "args": [ "-y", "@agentmemory/mcp" ], "env": { "AGENTMEMORY_URL": "http://localhost:3111", "AGENTMEMORY_SECRET": "my-team-secret-2024" } },
记住一条决策
在 Cursor 中打开一个测试项目,和 Agent 对话,比如:

当然在实际应用中,一般不会这么显式的让 Agent “记住”或者“召回”,更多应该是自动的。这里为了直观的观察,采取这种方式。
随后,Agent 会调用 remember 工具,把这条决策存成一条 memory。

再记录一条现象
模拟在实际任务中记住一些观察到的现象、测试结果等:

输出如下,注意这里的 Memory 类型是“bug”:

测试记忆召回
现在,换一个新的 Coding Agent(注意配置好 MCP)来召回记忆:

Agent 会调用 memory-*smart-*search 工具,召回关联的记忆 — 从而能够复用你、甚至团队成员的决策与工具经验。
使用 REST API
如果你是构建自己的独立 Agent (比如基于 LangChain、Google ADK等),也可以借助 REST API 直接访问 AgentMemroy 的记忆能力或者封装自己的 MCP Server。下面是一个调用样例代码:
...// 设置 AgentMemory 服务地址与secretconst base = process.env.AGENTMEMORY_URL || "http://127.0.0.1:3111";const secret = process.env.AGENTMEMORY_SECRET || "";// 一个简单的包装函数async function post(path, body) {const res = await fetch(`${base}${path}`, { method: "POST", headers: { "Content-Type": "application/json", ...(secret ? { Authorization: `Bearer ${secret}` } : {}) }, body: JSON.stringify(body) });if (!res.ok) thrownewError(`${path}${res.status}: ${await res.text()}`);return res.json();}// API 调用const project = "pay-service";await post("/agentmemory/remember", { project,type: "lesson", content: "支付回调必须按 provider + event_id 做幂等唯一键;订单状态只允许 pending -> paid,重复 paid 事件应返回 200 但不再次扣款。", tags: ["payment", "idempotency", "callback"]});
04
结束语:AgentMemory 的工程化价值
体验下来,AgentMemory 的核心能力特点表现在:

AgentMemory 未必能让 Coding Agent 立刻变得更聪明,但它可以降低 Agent 忘记已有决策、重复排查老问题、忽略历史测试结论的概率,从而提高任务处理的连续性和正确性,降低不必要的推理、返工与 Token 消耗。
如果说 Coding Agent 内置的 Memory 更像个人笔记本,那么 AgentMemory 更像一块可共享的工程白板:它可以跨会话、跨工具、跨团队记录关键经验,并具备更好的可观察性和扩展空间。
在这个意义上,它值得正在推进 AI Coding 工程化的团队试一试。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多推荐


所有评论(0)