Open Memory Protocol – 一个用于Claude、ChatGPT、Curso的统一内存存储
摘要
Open Memory Protocol是一个开放标准,用于跨工具的可移植AI内存,使得Claude、ChatGPT、Cursor等能够无缝共享用户上下文。
查看缓存全文
缓存时间: 2026/06/30 03:33
SMJAI/open-memory-protocol
来源:https://github.com/SMJAI/open-memory-protocol
Open Memory Protocol (OMP)
一个开放标准,用于跨工具、会话和设备实现可移植、可互操作的AI记忆。
问题所在
每个AI工具都以不同方式记住你——而且只在它自己的围墙内。
- Claude 知道你昨天对它说了什么。Cursor不知道。
- ChatGPT 已经了解了你的偏好。你的自定义代理却一无所知。
- Copilot 看到了你的代码风格。你的终端AI则从零开始。
每次切换工具,你的AI都会忘记你。你会重复自己。上下文丢失了。那个终于开始了解你的AI重置成了一个陌生人。
这就是 AI 记忆孤岛问题。它的解决方案与之前所有孤岛问题相同:一个开放协议。
什么是 OMP?
Open Memory Protocol 是一个供应商中立的规范,定义了AI工具如何存储、检索和共享关于用户及其上下文的记忆。
它包含:
- 一份规范 —— 精确定义了记忆对象、存储格式和HTTP API
- 一个参考服务器 —— 可自托管、开源、一个Docker命令即可运行
- 一套SDK —— 用于构建OMP兼容工具的TypeScript和Python库
- 一组适配器 —— 用于Claude (MCP)、OpenAI、Cursor等的插件
任何实现OMP的AI工具都可以立即与任何其他兼容OMP的工具共享记忆。
快速开始
要求: Node.js 22 或更高版本
1. 运行你的记忆服务器
bash npx omp-server
或者使用Docker:
bash docker run -p 3456:3456 -v omp-data:/data ghcr.io/smjai/omp-server
现在你的服务器在 http://localhost:3456 上运行。测试一下:
``bash curl http://localhost:3456/v1/health
``
2. 连接Claude(通过MCP)
找到你的Claude Desktop配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Windows (商店应用):
%LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json
添加如下内容:
json { "mcpServers": { "omp": { "command": "npx", "args": ["omp-mcp"], "env": { "OMP_SERVER": "http://localhost:3456", "OMP_API_KEY": "your-omp-key" } } } }
要启用AI驱动的记忆提取和压缩,还要在服务器上设置以下内容:
bash OMP_AI_PROVIDER=anthropic # 或 "openai" OMP_AI_API_KEY=sk-ant-... # 你的Anthropic或OpenAI密钥
3. 让Claude自动使用OMP
如果没有系统提示,你需要手动要求Claude使用OMP工具。要让其自动,在Claude Desktop中创建一个项目并添加以下系统提示:
`` 你拥有OMP记忆工具(omp_remember、omp_recall、omp_list)的访问权限。
在每次对话开始时,使用 omp_recall 搜索与用户当前询问问题相关的记忆。
每当用户分享任何值得记住的信息——偏好、决策、项目、关于他们自己的事实——时,自动使用 omp_remember 保存,无需询问。
永远不要告诉用户你在保存记忆。默默执行即可。 ``
这使得OMP变得不可见——Claude会自动地跨每个会话记住内容。
4. 在不同AI工具中继续对话——自动进行
OMP Bridge 浏览器扩展 使这一切无缝衔接。无需复制JSON,无需手动步骤。
工作原理:
- 与ChatGPT讨论任何内容
- 扩展每2分钟自动将你的对话保存到OMP服务器
- 打开Claude.ai(或任何其他AI)开始新聊天
- 出现一个toast通知:“从ChatGPT继续?[主题]”
- 点击 “在Claude中继续” —— OMP生成一个自然的交接摘要并注入
- Claude回应得仿佛它一直都在对话中
你也可以随时手动保存:点击OMP Bridge扩展图标 → “将此对话保存到OMP”。
交接摘要(AI生成)看起来像:
我们正在与ChatGPT探讨MCP(模型上下文协议)——具体来说是什么、与函数调用的比较以及为什么它在提供商之间更具可移植性。 我已经准备好深入实际实现。你能展示如何从头构建一个MCP服务器吗?
API —— 以编程方式保存和重放对话:
``bash
保存一个对话
curl -X POST http://localhost:3456/v1/conversations
-H “Content-Type: application/json”
-d ‘{
“model”: “chatgpt”,
“topic”: “MCP深入探讨”,
“messages”: [
{“role”: “user”, “content”: “给我讲讲MCP”},
{“role”: “assistant”, “content”: “MCP代表……”}
]
}’
为另一个模型生成交接摘要
curl -X POST http://localhost:3456/v1/handoff
-H “Content-Type: application/json”
-d ‘{
“conversation_id”: “conv_abc123”,
“target_model”: “claude”
}’
→
``
从任何工具写入记忆
bash curl -X POST http://localhost:3456/v1/memories \ -H "Content-Type: application/json" \ -d '{ "content": "用户偏好TypeScript而非JavaScript,并且不喜欢冗长的注释", "type": "semantic", "source": { "tool": "claude" }, "tags": ["偏好", "编码"] }'
从任何其他工具查询
bash curl "http://localhost:3456/v1/memories/search?q=编码+偏好"
工作原理
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Claude │ │ Cursor │ │ Your Agent │ │ (MCP) │ │ (SDK) │ │ (REST API) │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │ │ └───────────────────┼───────────────────┘ │ ┌────────▼────────┐ │ OMP Server │ │ (自托管) │ │ │ │ ┌───────────┐ │ │ │ SQLite │ │ │ │ / Pgvec │ │ │ └───────────┘ │ └─────────────────┘
每个工具都可以读写由你控制的唯一一个OMP服务器。一个记忆存储。所有工具。零孤岛。
规范
OMP定义了:
- 记忆对象 —— 记忆的规范模式(内容、类型、来源、标签、时间戳、可选的嵌入向量)
- 记忆类型 ——
episodic(事件)、semantic(事实/偏好)、procedural(如何做的知识) - REST API —— 标准的CRUD + 语义搜索端点
- 认证 —— Bearer令牌、每个工具独立的API密钥
- 导出/导入 —— 用于在服务器之间移动记忆的可移植JSON格式
阅读完整规范:SPEC.md
记忆对象
json { "id": "mem_01j9xk2p3q4r5s6t", "content": "用户正在构建一家金融科技初创公司,偏好清晰架构,不喜欢过度工程", "type": "semantic", "source": { "tool": "claude", "session_id": "sess_abc123", "timestamp": "2026-06-29T12:00:00Z" }, "tags": ["个人资料", "偏好", "工程"], "created_at": "2026-06-29T12:00:00Z", "updated_at": "2026-06-29T12:00:00Z", "expires_at": null }
适配器
| 工具 | 状态 | 安装方法 |
|---|---|---|
| Claude (MCP) | ✅ 可用 | npx omp-mcp |
| 浏览器扩展 | ✅ 可用 | 加载已解压的扩展 — Chrome/Edge/Brave |
| OpenAI Assistants | 🙋 寻求帮助 | 打开issue (https://github.com/SMJAI/open-memory-protocol/issues) |
| Cursor | 🙋 寻求帮助 | 打开issue (https://github.com/SMJAI/open-memory-protocol/issues) |
| Copilot / VS Code | 🙋 寻求帮助 | 打开issue (https://github.com/SMJAI/open-memory-protocol/issues) |
| Gemini | 🙋 寻求帮助 | 打开issue (https://github.com/SMJAI/open-memory-protocol/issues) |
| 自定义 (REST) | ✅ 可用 | 任何HTTP客户端 |
OMP Bridge —— 浏览器扩展
浏览器扩展将OMP带到每个AI工具的网页版本,无需对方做任何设置。
功能:
- 在Claude.ai、ChatGPT、Gemini和Perplexity上显示一个浮动的🧠按钮
- 从你的服务器显示OMP记忆
- 一键将你的记忆注入任何聊天——AI瞬间了解你的上下文
- 跨模型工作:将Claude保存的相同记忆注入ChatGPT
安装(Chrome / Edge / Brave):
bash cd adapters/browser-extension npm install && npm run build
然后打开 chrome://extensions → 启用开发者模式 → 加载已解压的扩展 → 选择 adapters/browser-extension 文件夹。
想要自己构建一个? 一个适配器通常只有100–200行代码——阅读CONTRIBUTING.md并使用adapters/claude-mcp作为模板。
SDK
OMP API是纯REST——任何HTTP客户端都可以直接使用。类型安全的SDK已在路线图中。
想要自己构建一个? 需要Python、Go、Rust和Ruby的SDK。参见CONTRIBUTING.md。
REST (任何语言)
``bash
保存一条记忆
curl -X POST http://localhost:3456/v1/memories
-H “Content-Type: application/json”
-d ‘{“content”:“用户偏好TypeScript”,“type”:“semantic”,“source”:{“tool”:“myapp”,“timestamp”:“2026-06-30T00:00:00Z”}}’
搜索记忆
curl -X POST http://localhost:3456/v1/memories/search
-H “Content-Type: application/json”
-d ‘{“q”:“TypeScript”,“limit”:5}’
``
为什么要开源?
你的记忆属于你。它们不应该被锁定在某个公司的数据库里,未经你同意用来训练模型,或者在你切换工具时丢失。
OMP基于以下原则设计:
- 首先自托管 —— 你运行服务器,你拥有数据
- 供应商中立 —— 没有公司控制这个标准
- 设计保护隐私 —— 除非你主动导出,否则你的记忆永远不会离开你的服务器
- 可移植 —— 一个命令导入/导出你的全部记忆
路线图
- v0.1 —— 核心规范、参考服务器、MCP适配器
- v0.2 —— AI记忆提取、对话压缩、MCP资源和提示
-
v0.3 —— 跨模型对话交接(浏览器扩展 +
/v1/conversations+/v1/handoff) - v0.4 —— 基于嵌入向量的语义搜索,pgvector支持
- v0.5 —— 记忆命名空间(按项目划分的记忆)
- v0.6 —— 多用户支持、访问控制
- v1.0 —— 稳定规范,提交给开放标准组织
贡献
OMP由社区驱动。我们需要:
- 适配器开发者 —— 连接你最喜欢的AI工具
- SDK贡献者 —— 欢迎Go、Rust、Java的SDK
- 规范审阅者 —— 阅读SPEC.md并提交issue
- 早期采用者 —— 尝试并向我们报告问题
参见CONTRIBUTING.md开始。
社区
- GitHub Discussions —— 问题、想法、反馈
- Issues —— bug报告和规范澄清
许可协议
Apache 2.0 —— 免费使用、修改和分发。参见LICENSE。
由SMJAI (https://github.com/SMJAI) 和贡献者共同构建。
相似文章
我构建了一个可在 Claude、ChatGPT 和 Cursor 之间共享的自托管记忆层
作者介绍了一个运行在 Cloudflare Workers 上的开源 MCP 服务器,它利用向量嵌入和重复检测技术,为 Claude、ChatGPT 和 Cursor 等 AI 客户端提供持久化、可搜索的记忆功能。
@nicos_ai: 现在你可以给 Claude、Codex 和 Cursor 无限记忆。100% 免费且开源。Memanto 正在迅速走红…
Memanto 是一个免费、开源的工具,通过保存、压缩和检索会话上下文,在 90 毫秒内为 Claude、Codex 和 Cursor 等 AI 编码智能体提供无限记忆。
rohitg00/agentmemory
agentmemory 是一个开源的持久化记忆层,专为 AI 编程智能体(Claude Code、Cursor、Gemini CLI、Codex CLI 等)设计。它通过知识图谱、置信度评分和混合搜索技术,借助 MCP、Hooks 或 REST API,为智能体提供跨会话的长期记忆能力。该项目基于 iii 引擎构建,无需外部数据库,提供 51 个 MCP 工具。
MemPalace/mempalace
MemPalace 是一款本地优先的开源 AI 记忆工具,能够逐字存储对话历史,并通过语义搜索进行检索,在 LongMemEval 上达到 96.6% R@5,无需任何 API 调用或 LLM。它采用可插拔后端架构,提供 CLI 界面,支持 Claude Code、Gemini CLI 以及 MCP 兼容工具。
Memoriq
Memoriq 是一个私有的AI记忆服务,可在ChatGPT、Claude、Gemini和Grok上使用。