Agentmemory
Agentmemory 是一个本地优先、零外部数据库的内存运行时,用于编码代理,它通过钩子自动捕获会话,通过 BM25+向量+知识图谱检索在毫秒内调用上下文,并持续将原始日志整合为持久语义记忆——通过 MCP 和 HTTP 公开,并带有内置查看器。
https://agent-memory.dev/?ref=producthunt&utm_source=aipure

产品信息
更新于:2026年05月18日
什么是 Agentmemory
Agentmemory 是一个为 AI 编码代理设计的持久内存层,否则这些代理会在会话之间忘记所有内容。它作为单个 Node 进程在本地运行(无需 Postgres/Redis/Kafka/向量数据库),并捕获代理工作期间发生的事情——提示、工具调用、会话事件——因此未来的会话可以重用该上下文,而无需您重新解释架构、偏好或过去的决策。它支持 MCP 和 HTTP 优先的 API 表面(每个 MCP 工具都有一个 REST 对等体),并附带一个实时查看器和控制台,因此您可以在检查会话、内存和系统运行状况的同时将所有数据保存在您的机器上。
Agentmemory 的主要功能
Agentmemory是一个本地优先、单进程的持久化内存运行时,专为AI编码代理设计。它通过自动钩子捕获每个会话,将原始观察结果整合为持久的语义记忆,并使用混合三流检索(BM25 + 向量 + 知识图谱)和设备端重排序在毫秒级内召回相关上下文。它提供了广泛的MCP接口(51个工具)和等效的REST接口(121个端点),包含内置的查看器/控制台UI,支持导入过去的会话记录,导出为Markdown/Obsidian格式,并能通过经过身份验证的HTTPS在节点间同步记忆——同时避免使用Redis/Postgres/Neo4j等外部数据库,并将数据以JSON格式保存在磁盘上。
自动捕获钩子(12个钩子): 自动记录提示、工具调用、会话生命周期事件(例如,PreToolUse/PostToolUse/Stop),并将其压缩为观察结果,无需自定义胶水代码。
毫秒级混合召回: 使用三流检索(词法BM25 + 语义向量 + 知识图谱信号)和设备端重排序来浮现最相关的先前上下文(在LongMemEval-S上报告R@5为95.2%;在笔记本电脑上p50 < 20ms)。
整合管道(原始 → 语义): 定期运行扫描,将观察结果压缩为语义记忆,合并重复项,通过保留评分衰减陈旧行,并为治理目的在删除时发出审计记录。
MCP原生 + HTTP优先API: 提供51个MCP工具(保存/召回/搜索/会话/治理/审计/导出/图谱),并在/agentmemory/*下为每个工具镜像REST端点,便于集成和调试。
内置UI和可观察性: 提供实时查看器(端口3113),用于实时流、会话回放、记忆浏览和图谱可视化,以及引擎级控制台和OpenTelemetry跟踪/日志,以实现操作可见性。
本地优先存储 + 联邦/导出: 作为单个Node进程运行,具有磁盘上的JSON状态(无外部数据库),支持JSONL会话导入、Obsidian就绪的Markdown导出,以及agentmemory节点之间经过身份验证的对等同步。
Agentmemory 的使用场景
软件开发连续性: 在编码会话中持久化项目约定、先前的架构决策和过去的调试结果,以便Claude Code/Cursor/Codex等代理无需重新解释上下文即可继续工作。
工程组织的团队知识捕获: 记录并整合重复的故障排除步骤、运行手册和事件学习,形成可搜索的语义记忆,从而减少入职时间和重复调查工作。
复杂构建中的多代理协作: 使多个代理/工具能够共享一致的内存层(通过MCP/REST和可选的联邦),以便并行任务可以引用相同的不断演进的项目知识。
受监管或隐私敏感环境: 将记忆本地保存在磁盘上,不使用外部数据库,并使用审计/治理界面跟踪删除和管理保留——适用于有数据本地化要求的企业。
个人生产力与笔记充实: 将带有前置标签的Markdown导出到Obsidian库中,将代理交互转化为可导航的个人知识库,并带有图谱可视化功能。
通过API进行代理平台集成: 使用REST端点(支持curl/浏览器/代理)将记忆保存/召回功能嵌入到自定义开发工具或内部平台中,而无需受限于特定的代理框架。
优点
本地优先、单进程设计,0个外部数据库,简化了部署并将数据保存在开发人员机器上。
强大的集成界面:12个自动钩子、51个MCP工具和REST副本使其易于连接到许多代理客户端和工作流。
通过混合BM25+向量+图谱和设备端重排序实现快速而强大的检索;包括内置查看器和OTEL可观察性。
缺点
尽管对微小进程的健康状况有所改善,但在小型机器上,所有内容都在一个Node进程中运行可能需要仔细的资源管理。
某些提供商选项和配置(例如,可选的Claude代理SDK回退)如果使用不当,可能会引入操作风险(已指出递归风险)。
主要针对编码代理工作流进行优化;非编码领域可能需要对捕获/整合策略进行额外调整。
如何使用 Agentmemory
1) 启动本地 Agentmemory 服务器: 在单独的终端中,运行:npx @agentmemory/agentmemory。这会在 http://localhost:3111 启动内存运行时,并在 http://localhost:3113 启动实时查看器。
2) 验证服务器是否健康: 检查健康端点:curl http://localhost:3111/agentmemory/health。在连接任何客户端之前,确认它报告健康。
3) 打开实时查看器(可选但推荐): 导航到 http://localhost:3113 以观看实时观察流、浏览内存、重放会话并检查知识图谱。
4) 连接支持 MCP 的客户端(通用 MCP 配置): 使用以下命令在客户端的 MCP 配置中添加一个 MCP 服务器条目:command=npx, args=["-y","@agentmemory/mcp"],并设置 env AGENTMEMORY_URL=http://localhost:3111。这将向客户端公开 Agentmemory 的完整 MCP 工具表面。
5) (Hermes) 将 Agentmemory 配置为 MCP 服务器: 在 ~/.hermes/config.yaml 中,为 agentmemory 添加一个 mcp_servers 条目,该条目运行 npx,参数为 ["-y","@agentmemory/mcp"],并将 AGENTMEMORY_URL 设置为 http://localhost:3111,以便 Hermes 可以访问全套内存工具。
6) (Hermes) 启用 Agentmemory 作为内存提供程序: 在相同的 Hermes 配置中,将 memory.provider 设置为 agentmemory,以便 Hermes 使用 Agentmemory 在会话之间保存/调用。
7) 在工作期间使用内存工具: 从您的 MCP 客户端,调用 Agentmemory 工具来存储和检索信息(例如,保存关键决策/结果,然后稍后调用它们)。Agentmemory 还通过其 MCP 工具表面支持智能/混合调用和会话浏览。
8) 直接使用 REST API(可选): 如果您喜欢 HTTP 调用,请使用 localhost:3111 上 /agentmemory/* 下的 REST 端点(每个 MCP 工具都有一个 REST 对等体)。这对于脚本编写、调试或从您自己的代理进行代理很有用。
9) 导入过去的会话(可选): 如果您有现有的编码代理记录(例如,JSONL),请使用 Agentmemory 的会话导入功能将先前的会话重新填充到存储中,以便它们变得可搜索和可重放。
10) 在使用代理时保持服务器运行: 让 Agentmemory 服务器在后台运行。在您工作时,它会捕获会话(通过支持的钩子/插件),并使其在未来的会话中可用于快速调用。
11) (更深层次的 Hermes 集成) 安装 Hermes 插件(可选): 对于钩子驱动的捕获和更丰富的集成(预上下文注入、回合捕获、MEMORY.md 镜像、系统提示块),将 Hermes 集成插件从 agentmemory 仓库复制到 ~/.hermes/plugins/agentmemory。
12) 端到端确认捕获 + 调用: 在您的代理中运行一个简短的任务,然后使用查看器 (3113) 或调用/搜索工具调用来确认会话已被捕获,并且可以在不重新解释先前上下文的情况下在以后的会话中检索。
Agentmemory 常见问题
agentmemory是一个为AI编码代理提供持久内存运行时的工具,它能够捕获会话、快速回忆相关上下文,并将原始观察结果整合为更长期的语义记忆。它被定位为“您的编码代理从一开始就应该拥有的内存层”,不仅仅是一个库或向量存储。











