Memoria
AI Agent 的 Git 级别记忆管理:零拷贝分支、快照、回滚,Powered by MatrixOne
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
AI Agent 的 Git 级别记忆管理:零拷贝分支、快照、回滚,Powered by MatrixOne
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:Memoria 项目 Logo —— 将 Git 版本控制理念引入 AI Agent 记忆管理的开创性项目
你花了三个月时间教 AI 助手记住项目的技术栈:React、TypeScript、Zustand 状态管理模式。每次新的对话,你都要重复说"用 React+TypeScript+Zustand 开发"。打开 MEMORY.md 看看,已经累积了三百多条凌乱的记录。
然后换了一台电脑——一切归零。
这不是某个用户的个人烦恼,这是 2026 年数百万开发者的日常。AI Agent 的记忆系统,普遍停留在"把对话存成 Markdown 文件"的原始阶段:无结构、无版本、无检索优化。当记忆量增长到一定程度,要么信息淹没在噪声里,要么模型产生幻觉——记住了但记错了。
MatrixOrigin 团队(数据库基础设施公司,旗下有 MatrixOne 分布式数据库)决定解决这个问题。他们的方案出人意料:把 Git 的版本控制思想,搬进 AI Agent 的记忆层。
Memoria 的定位是为 AI Agent 提供持久化记忆层 + 类 Git 版本控制。它不是 RAG 框架,不是向量数据库替代品,而是介于两者之间的新范式——用数据库原生能力管理 Agent 的"认知资产"。
核心卖点六个:
| 能力 | 描述 |
|---|---|
| 🔀 Git 级别版本控制 | 零拷贝分支、即时快照、时间旅行回滚 |
| 🔍 语义检索 | 向量 + 全文混合检索,按语义而非关键词搜索 |
| 🛡️ 自治治理 | 自动检测矛盾信息、隔离低置信度记忆、保留审计链 |
| 🔒 隐私优先 | 支持本地 embedding 模型,数据不出本机 |
| 🧠 跨会话记忆 | 用户偏好、项目事实、决策结论跨会话保持 |
| 📋 完整审计链 | 每次记忆变更都有快照 + 血缘追溯 |
Memoria 主体采用 Rust 开发,编译成单一二进制 memoria,通过子命令驱动。
| Crate | 职责 |
|---|---|
memoria-core | 共享类型和 trait 定义 |
memoria-storage | 基于 sqlx 的 MatrixOne 存储层 |
memoria-embedding | 向量 embedding 提供商(HTTP + 本地 FastEmbed) |
memoria-service | 业务逻辑:治理、调度、记忆生命周期 |
memoria-git | Git-for-Data 实现(快照/分支/合并/回滚) |
memoria-api | 基于 Axum 框架的 REST API |
memoria-mcp | MCP (Model Context Protocol) 标准输入/输出服务器 |
memoria-cli | 统一入口 CLI(serve / mcp / init / status) |
memoria-test-utils | 测试工具 |
云端模式(推荐,最简单): 直接在 thememoria.ai 注册,获取 API token,一行命令配置完成。无需 Docker,无需数据库。
自托管模式:
git clone https://github.com/matrixorigin/Memoria.git
cd Memoria
docker compose up -d # 启动 MatrixOne + API 服务
memoria init -i # 交互式配置,选择 Embedded 模式
Docker Compose 编排了 MatrixOne 数据库 + Memoria API Server,内存需求约 4GB,无 GPU 依赖。
Memoria 将 Agent 记忆分为五种类型,各有生命周期:
| 记忆类型 | 用途 | 示例 |
|---|---|---|
semantic | 项目事实、决策 | "项目使用 Go 1.22 模块管理" |
profile | 用户偏好 | "用户更喜欢 pytest 而非 unittest" |
procedural | 工作流程、如何做 | "部署命令:make build && kubectl apply" |
working | 临时任务上下文 | "当前正在调试 auth 模块" |
episodic | 会话摘要 | "本次会话:优化了数据库、添加了索引" |
| 能力 | Memoria | Letta / Mem0 / 传统 RAG |
|---|---|---|
| Git 级别版本控制 | 原生零拷贝快照和分支 | 文件级或无 |
| 隔离实验 | 一键分支,验证后合并 | 手动数据复制 |
| 审计链 | 每次变更带快照 + 来源 | 有限日志 |
| 语义检索 | 向量 + 全文混合搜索 | 仅向量检索 |
| 自治治理 | 自动矛盾检测 + 隔离 | 手动清理 |
Memoria 通过 MCP (Model Context Protocol) 暴露记忆工具,兼容所有主流 AI 编码助手:Kiro、Cursor、Claude Code、OpenAI Codex、Gemini CLI、OpenClaw。MCP 工具覆盖完整记忆生命周期:memory_store、memory_retrieve、memory_search、memory_correct、memory_purge、memory_snapshot、memory_branch、memory_merge、memory_rollback、memory_governance 等。
memoria-core 定义 trait 接口,memoria-service 承载业务逻辑,memoria-api 和 memoria-mcp 对外暴露接口,良好的分层设计tokio 全量特性集,axum 构建 HTTP APIsqlx + MatrixOne,支持 MySQL 协议,有离线编译模式适用场景:
局限性:
Memoria 的出现代表了一个趋势:AI Agent 的记忆系统正在从"简单存储"向"结构化管理"演进。传统 RAG 解决的是"如何检索",Memoria 解决的是"如何管理"——版本、回滚、隔离、治理。
它背后的学术支撑是 MatrixOrigin 团队 2026 年发表的论文《Version Control System for Data with MatrixOne》(arXiv:2604.03927),将 MatrixOne 数据库的 MVCC 架构和不可变存储特性应用于记忆版本控制,具备数据库级别的原子性和一致性保障。开源获得 350+ GitHub Stars,增长速度在 AI Agent 基础设施类项目中属于较快梯队。