Engrim
跨模型跨 Agent 的统一记忆引擎,Cursor/Windsurf/Claude Code 共享项目上下文
项目简介
Engrim 是一款本地优先的跨模型、跨 Agent 记忆存储引擎,用 Python 开发,基于 SQLite + FTS5 全文搜索 + model2vec 静态向量嵌入构建。它解决了一个核心问题:随着 AI 编程工具的普及,开发者往往同时使用 Google Antigravity、Claude Code、Cursor、Windsurf 等多个 Agent 环境,但每次切换工具都会丢失项目上下文,导致重复沟通成本极高。Engrim 将项目决策、约束条件和状态外部化,让不同的 AI Agent 在同一个代码库上无缝接力,真正实现「记忆不丢失、上下文零断层」。
核心功能
- 跨模型记忆共享:在 Google Antigravity、Claude Code、Cursor、Windsurf 四个主流 Agent 环境之间共享项目记忆,同一代码库切换工具后 Agent 可直接继承上一轮的决策上下文。
- FTS5 + 向量混合检索:结合 SQLite FTS5 全文检索(bm25 排序)与 model2vec 静态向量嵌入的混合互惠排名融合(HRRF)引擎,查询延迟接近零。
- 4000 字符精选上下文包:每次启动新会话时自动加载精选的记忆包,将 153,000+ Token 的工作浓缩到 1,000 Token 以内,大幅降低 token 消耗。
- Agent 来源追踪:记录每条记忆的来源 Agent,方便在多 Agent 协作场景下追溯决策历史。
- 零依赖 MCP 服务:通过标准 JSON-RPC 2.0 stdio 协议暴露 MCP 工具,可被任何支持 MCP 的编辑器或 Agent 调用。
- 飞行记录日志:自动记录每一轮对话的原始日志,在清除会话后仍可 review 未捕获的决策。
- 一键自动探测配置:运行
engrim setup自动检测本机已安装的 Agent 环境并批量配置。
技术实现
Engrim 核心架构分为三层。存储层采用本地 SQLite 数据库(~/.engrim/memory.db),包含 MEMORIES、FTS5、VEC、LOG 四个子表。引擎层通过适配器与各 Agent 的生命周期钩子对接:Claude Code 使用 SessionStart/Stop 钩子,Antigravity 使用 PreInvocation/Stop 钩子,Cursor/Windsurf 通过 MCP stdio 连接。检索层将 bm25 关键词检索与向量余弦相似度融合为混合排名结果。
实测中,开发者在 50,000 行算法交易系统上完成 105 个连续会话,跨越 186 个单元测试零回归,153,000+ Token 的工作被压缩到不足 1,000 Token 的活跃记忆包,Token 成本降低 99% 以上。
快速上手
第一步:安装
pip install engrim
第二步:自动配置所有环境
engrim setup
自动检测本机已安装的 Agent 环境并批量配置。
第三步:添加项目记忆
engrim add -t decision -s "切换主数据库从 MongoDB 到 PostgreSQL" --tags "db,schema"
第四步:新会话自动恢复记忆
切换到任意已配置好的 Agent 环境,运行 engrim context,Engrim 自动加载项目记忆包。
第五步(可选):以 MCP 工具方式调用
engrim serve --mcp
然后在 Cursor 的 mcp.json 中添加 engrim 服务。
适用人群
- 多 Agent 混合工作流用户:同时使用多个 AI 编程工具,需要无缝切换不丢失上下文。
- 大型代码库维护者:希望 AI 每次启动时快速获取关键架构决策。
- AI 工程团队:需要追踪多个 Agent 在同一代码库上的决策轨迹。
- 重视本地数据隐私的开发者:所有数据存储在本地 SQLite,不上传云端。
评论与建议
登录 后参与评论或提建议