这个项目能做什么
agentmemory 是一个为 AI 编码代理设计的自托管持久内存引擎。它解决了代理在会话之间丢失上下文的问题,通过静默捕获代理的操作,将其压缩为可搜索的内存,并在下次会话开始时注入相关上下文。该项目基于 iii 引擎(固定为 v0.11.2)构建,需要 Node.js 20 或更高版本。
安装只需一条命令:`npx -y @agentmemory/agentmemory@latest`。首次运行为交互式,让您选择要连接的代理(如 Claude Code、Cursor、Codex、Gemini CLI、OpenCode 等),选择 LLM 提供商或保持无密钥模式,并可选择全局安装。演示命令会填充示例会话并测试召回功能以验证设置。
该系统适用于任何支持钩子、MCP 或 REST API 的代理。它内置了针对 Claude Code(12 个钩子)、Codex CLI(6 个钩子)、OpenCode(22 个钩子)、Devin(6 个钩子)等的原生插件和钩子,并支持 GitHub Copilot CLI、Cursor、Gemini CLI、Cline、Goose、Kilo Code、Claude Desktop、Roo Code 等 MCP 服务器。所有连接的代理共享一个内存服务器,因此无论切换到哪个代理,内存都会持久保留。
搜索采用混合方法,结合 BM25 关键词搜索、向量嵌入和结构图匹配,并通过倒数排名融合(RRF)进行融合。在无密钥模式下(无 API 密钥),向量嵌入被禁用,由 BM25 处理检索。要实现免费的设备端语义召回,设置 `EMBEDDING_PROVIDER=local` 会在首次请求后本地下载 Xenova/all-MiniLM-L6-v2 模型。项目报告在 LongMemEval-S(500 个问题)上 R@5 为 95.2%,在其内部 coding-agent-life-v1 语料库上 top-5 命中率为 100%。
内存生命周期包括四级整合、衰减和自动遗忘,因此过时信息会被自动修剪。系统提供 54 个 MCP 工具和 12 个自动钩子,实现零手动捕获。实时查看器运行在端口 3113 上,用于检查存储的内存。运行时使用四个端口:3111 用于 REST/MCP HTTP,3112 用于 iii 流,3113 用于查看器,49134 用于 iii worker WebSocket。持久状态存储在平台特定目录中(macOS:~/Library/Application Support/agentmemory,Linux:$XDG_DATA_HOME/agentmemory,Windows:%APPDATA%\agentmemory),并可通过 --data-dir 或 AGENTMEMORY_DATA_DIR 覆盖。
该项目强调令牌效率,声称每年约 17 万令牌,而粘贴完整上下文需 1950 万以上,成本约每年 10 美元或使用本地嵌入为 0 美元。除了 SQLite 和捆绑的 iii-engine 外,无需外部数据库。项目包含用于 LongMemEval-S 及其内部语料库的可复现评估框架,并在 docs/benchmarks 目录中发布评分卡。它还可与 codegraph、Understand Anything 和 Graphify 配合使用,以扩展上下文层能力。
评论
0 评分人数达到10人后显示
登录后参与讨论。