关注【索引目录】服务号,更多精彩内容等你来探索!
如今,大多数人都会使用多个 AI 助手,例如 ChatGPT、Claude 和 Perplexity。但它们都没有共享上下文。
您最终会重复相同的内容,粘贴长提示或忘记之前讨论过的内容。
今天,我们将了解现有 AI 工具的不足之处,以及 OpenMemory Chrome 扩展程序如何解决这个问题。我们将介绍其架构、核心流程、代码概述、实用功能、隐私模型以及一些实际用例。
这将帮助您同步与多个 AI 助手合作的混乱情况。
涵盖哪些内容?
总之,我们将详细介绍这些主题。
-
现有AI助手的问题。 -
OpenMemory Chrome 扩展如何解决这个问题? -
仪表板上提供所有功能。 -
架构和代码概述。 -
隐私和数据安全。 -
带有示例的实际用例。
如果您有兴趣自己探索,请查看GitHub 上的存储库。
1、现有AI助手的问题。
如果你曾经在 ChatGPT、Claude、Perplexity、Grok 或其他任何 AI 助手之间切换过,你就会明白其中的痛点:每个助手都各自为政。没有共享上下文。没有记忆。
使用多种人工智能工具的感觉就像拥有一支才华横溢的同事团队,但他们却拒绝互相交谈。
它效率低下、混乱不堪、支离破碎。
1. 上下文碎片化
每次 AI 会话都从零开始。你的偏好设置、之前的聊天记录,甚至你上传的文件,都不会被继承。
您可能在早上告诉 ChatGPT 一些事情,下午切换到 Claude,然后必须从头开始重新解释一切。
复制粘贴在大多数情况下都可以发挥作用,但当您的内容分布在五个选项卡和多个对话中时,复制粘贴就变得不那么容易了。
2. 有限的上下文窗口
是的,有些助手确实会“记住”最近的几条消息。但令牌限制意味着长线程或文档会被截断。
重要细节消失了,后续工作也变得支离破碎。
3. 脆弱的提示链
尝试让AI助手通过调用外部API来处理多步骤任务,你构建了一个脆弱的提示链。JSON blob中的一个错误字段,甚至API规范中的一个小调整,都可能让整个系统崩溃。
您的助手不会执行任务,而是开始产生幻觉,调试也变成了猜测。
4. 供应商锁定
为 GPT-4 设计提示?很酷。但是,如果你切换到 Claude 或 Perplexity 等其他助手,则需要从头重写功能描述、系统提示和预期输出。
这不是一个大问题,但没有通用的解决方案。这意味着需要不断地返工。
2. OpenMemory Chrome扩展程序如何解决这个问题?
Mem0 最近推出了一个OpenMemory chrome 扩展,它为您最喜欢的 AI 助手添加了一个通用的“记忆层”,这样您就不必重复自己了。
无论您使用哪种 LLM 助手,它都可以实时透明地捕获、检索和注入“上下文记忆”。
无论您使用 ChatGPT、Grok、DeepSeek、Claude、Replit、Gemini 还是 Perplexity 聊天,它都会在后台工作以解决我们在第一部分讨论的问题。
您可以在 Chrome 网上应用店完全免费安装此Chrome 扩展程序。它是开源的,在 GitHub 上已获得 450 多颗星。
这是官方演示视频!
工作原理(基本流程)
以下是核心流程:
1)安装扩展程序→单击工具栏图标→通过 Google 登录(将您的 API 密钥/访问令牌存储在 Chrome 存储中)。
2) 登录后,您可以单击图标(或使用快捷方式Ctrl + M),它会将可折叠的侧边栏插入当前页面(在所有 URL 上),这样您就可以随时随地访问您的回忆。
3) 侧边栏 UI 使用(GET /v1/memories)获取您的记忆,让您添加(POST /v1/memories)并在客户端显示相关的记忆。
4) 这就是将上下文注入聊天的工作原理。在支持的 AI 网站(ChatGPT、Claude、Perplexity、Grok、Deepseek、Replit、Gemini)上,内容脚本会监听您的Mem0 trigger,然后调用 Mem0 搜索 API(POST /v1/memories/search)来提取相关的代码片段。
5) 检索到的记忆会作为辅助注释添加到您的聊天输入中,以便 AIknows识别您的上下文,然后(可选)自动为您发送提示。您将在此弹出窗口中看到删除记忆的选项(点击三个点后)。
POST /v1/memories6) 发送后,您的完整聊天消息历史记录将使用( )和异步发布回 Mem0 infer=true,因此您最近的交流将成为未来的记忆。
7)每个切换/添加/编辑/删除/注销操作都会触发一个轻量级事件(POST /v1/extension/)以进行使用情况分析,从而帮助随着时间的推移改进扩展。
8) 通过侧边栏的点菜单,您可以立即在新标签页中打开完整的 Mem0 网页控制面板,进行更深入的内存管理。该控制面板的网址为app.mem0.ai/dashboard/user/chrome-extension-user。
3. 所有有用的功能。
以下是带有屏幕截图的功能,以帮助您理解。
-
侧边栏用户界面助您管理回忆。每条回忆都会显示其文本和类别标签。此外,列表中还提供一键复制或查看控件。
-
您还可以从侧边栏实时查找相关回忆,并获取迄今为止的回忆总数。
-
您可以点击“打开仪表板”按钮,在新标签页中打开完整的 Mem0 网页仪表板,以便更深入地管理内存。您还可以在此仪表板中编辑和删除内存。
-
最实用的功能是 One-Click Sync它可以帮助您将 ChatGPT 记忆批量同步到 Mem0。这样,您现有的所有记忆都可以重新使用,从而提升您的体验。
4. 架构和代码概述。
从总体上看,该扩展遵循 Chrome Manifest V3 模型。UI、后台逻辑和内容脚本之间的所有连接都在 manifest.json 中声明。
⚡ 顶级文件布局如下所示。
.
├── background.js # MV3 service worker for toolbar actions & init
├── popup.html / popup.js # sign‑in UI for Google login
├── sidebar.js # injected sidebar for memory dashboard
├── chatgpt/ # site specific integration scripts
│ └── content.js
├── claude/ # … for Claude.ai
│ └── content.js
├── perplexity/ # … for Perplexity.ai
│ └── content.js
├── mem0/ # … for the Mem0 dashboard app itself
│ └── content.js
├── grok/ # … for Grok.ai
│ └── content.js
├── deepseek/ # … for Deepseek Chat
│ └── content.js
├── icons/ # All extension icon assets
├── manifest.json
├── README.md
└── privacy-policy.md
⚡ 它background.js作为 MV3 服务工作线程运行。它会监听工具栏点击事件,在安装时初始化默认值,并在请求时打开仪表板。
chrome.action.onClicked.addListener((tab) => {
chrome.storage.sync.get(["apiKey","access_token"], data => {
if (data.apiKey || data.access_token) {
chrome.tabs.sendMessage(tab.id, { action: "toggleSidebar" });
} else {
chrome.action.openPopup();
}
});
});
⚡ 对于每个支持的 AI 聊天站点,其文件夹下都有一个特定于站点的 content.js 文件。它们都遵循类似的模式:
Add related memories在网站的聊天 UI 中注入一个按钮。 Observe DOM changes当聊天界面更新时重新注入按钮 Capture the current user message,调用Mem0 API搜索相关记忆,并 inject those memories在发送之前进入聊天提示Asynchronously send新消息加上上下文作为精炼记忆返回到 Mem0
例如,ChatGPT 集成器(chatgpt/content.js)是这样开始的:
let isProcessingMem0 = false;
let observer;
async function handleMem0Click(clickSendButton=false) {
const memoryEnabled = await getMemoryEnabledState();
if (!memoryEnabled) { /* just send the message */ return; }
const message = getInputValue();
// Call Mem0 search endpoint
const searchResponse = await fetch("https://api.mem0.ai/v1/memories/search/",{…});
const responseData = await searchResponse.json();
// Inject UI into the chat input …
// Then send memory back to Mem0 service …
}
相同流程在以下位置重复/调整:claude/content.js,,,,,。perplexity/content.jsmem0/content.jsgrok/content.jsdeepseek/content.js
⚡ Popup( popup.js) 处理“使用 Google 登录”的身份验证流程。它提示用户登录,存储其用户 ID,然后重定向到 Mem0 Web 应用。
// not the complete code
googleSignInButton.addEventListener("click", function () {
chrome.storage.sync.set({ userId: "chrome-extension-user" });
const url = data.userLoggedIn
? "https://app.mem0.ai/extension"
: "https://app.mem0.ai/login?source=chrome-extension";
chrome.tabs.create({ url }, () => window.close());
});
⚡ 侧边栏仪表板 ( sidebar.js) 提供了一个通用的侧边栏,可注入所有页面 ( )。它提供了一个完整的内存仪表板,任何人都可以:
-
查看和搜索记忆 -
打开/关闭相关记忆 -
打开完整的 Mem0 网页仪表板 -
登出
以下是一小段摘录sidebar.js:
function initializeMem0Sidebar() {
chrome.runtime.onMessage.addListener((request,_,__) => {
if (request.action === "toggleSidebar") {
chrome.storage.sync.get(["apiKey","access_token"], data=>{
if (data.apiKey||data.access_token) toggleSidebar();
else chrome.runtime.sendMessage({action:"openPopup"});
});
}
});
}
function toggleSidebar() {
if (!document.getElementById("mem0-sidebar")) createSidebar();
sidebarVisible = !sidebarVisible;
fetchAndDisplayMemories();
}
…
5.隐私和数据安全。
对于法学硕士 (LLM) 应用来说,隐私始终是一个令人担忧的问题。但 Mem0 的设计旨在让您完全掌控自己的个人数据。
✅ Chrome Manifest V3 带来了更严格的安全模型(无远程代码、服务工作者背景、默认 CSP)。
✅ 所有敏感的用户凭证(apiKey、access_token、userId、user preferences)均使用 进行存储chrome.storage.sync,并进行静态加密(如果用户选择启用,则可以跨设备同步)。所有凭证都不会记录到控制台,也不会发送给任何第三方。
✅ 登录流程 ( ) 设置这些值,并且在调用 Mem0 的 API ( & )popup.js时绝不会将它们发送到除通过 HTTPS 之外的任何域。https://api.mem0.ai/*https://app.mem0.ai/
✅ Mem0 仅向已知的 AI 助手域(以及侧边栏 UI 的所有页面)注入逻辑。这确保了除非用户明确切换其 UI,否则它无法嗅探任意页面。
✅ 页面内容不会被泄露。侧边栏的唯一用途是显示您自己的记忆(取自api.mem0.ai)。
✅ 每个助手的内容脚本(例如chatgpt/content.js)仅限:
-
阅读您最近的几条用户/助手消息。 -
将这些消息(加上您当前的提示)发送到 Mem0 的搜索 API。 -
将返回的“记忆”作为上下文注入聊天输入。 -
可选择将对话数据发布到 Mem0 的记忆 API(以存储新的记忆)。
该扩展程序不嵌入任何第三方分析或追踪器。得益于最佳实践,您的数据绝对安全。
6. 带有示例的实际用例。
熟悉了 Chrome 扩展程序后,你就会发现它可以在任何需要 AIremember跨交互操作的地方使用。以下是一些实际用例:
✅ 开发人员笔记和捕获代码片段以供将来重用
作为开发人员,我们总是复制粘贴代码来理解、学习并找到解决方案。我们没有意识到的是,我们有时会一遍又一遍地重复同样的事情。
假设您将内容复制long code snippets到 ChatGPT 中进行解释。在后续的跟进提示中,您希望这些代码片段自动重新显示(而不是保留在剪贴板中)。
技术流程可以是:
-
在 ChatGPT 上,只需按下 Ctrl + M(或点击工具栏图标)。输入提示文本 → 粘贴代码片段 → chatgpt/content.js拦截提交 → 使用 → 异步回发到 Mem0POST /v1/memories。 -
输入您的问题 → 像往常一样按 Enter → 扩展程序将相关的过去片段作为前面的内容添加 helper note(以便 ChatGPT 立即了解您的项目背景)。 -
ChatGPT 回复后 → 会自动拨打 POST /v1/memories,infer=true因此这次对话就成为了未来的记忆。
✅ 跨助理研究与头脑风暴
我们都同意每个人工智能助手都有特定的优势,例如:
ChatGPT用于通用推理 Perplexity用于研究(提取已验证的来源) Claude用于长期上下文理解(适合起草) Grok获取实时趋势洞察,尤其是围绕 X(Twitter)内容。
假设您正在撰写有关任何技术性内容的文章。
-
您首先研究 Perplexity,关键统计数据和片段通过 Mem0 保存以供日后使用。 -
现在你切换到 Claude 进行草稿。当你开始输入时,Mem0 会自动将 Perplexity 的研究笔记插入到你的提示中,以便它具有完整的上下文。 -
您可以尝试使用 ChatGPT 来优化语气/片段。同样, no repetition→ 您的原始大纲 + Claude 的草稿已由 Mem0 添加,以帮助 GPT 在先前工作的基础上进行构建。 -
最后,如果您要在 X 上创建一个线程( ),您可以向 Grok 询问任何热门标题或 Twitter 角度,以将它们全部联系在一起。
当然,大多数人不会同时使用超过三个助手,但这个例子展示了 OpenMemory Chrome 扩展程序如何让您的工作流程变得更好。
关注【索引目录】服务号,更多精彩内容等你来探索!

