跨多个 AI 助手的浏览器上下文同步方案
实用教程讲解如何在 ChatGPT、Claude、Perplexity 等工具间共享对话上下文,显著提升多工具协作效率。
实用教程讲解如何在 ChatGPT、Claude、Perplexity 等工具间共享对话上下文,显著提升多工具协作效率。
如今,大多数人都会使用不止一个 AI 助手,比如 ChatGPT、Claude、Perplexity。但它们之间并不共享上下文。
结果就是,你不得不反复说明同样的事情、粘贴冗长的 prompt,甚至忘记之前究竟讨论过什么。
今天,我们将了解现有 AI 工具为什么做得还不够,以及 OpenMemory Chrome 扩展如何解决这个问题。我们会介绍它的架构、核心流程、代码概览、实用功能、隐私模型,以及一些实际用例。
它能帮你理顺同时使用多个 AI 助手带来的上下文混乱。
概括来说,我们将详细讨论以下主题:
如果你有兴趣自行探索,可以前往 GitHub 查看该仓库。
如果你曾经在 ChatGPT、Claude、Perplexity、Perplexity、Grok 或其他 AI 助手之间切换,就会明白真正的痛点:每个助手都活在自己的信息孤岛里。上下文不共享,也没有共同记忆。
同时使用多个 AI 工具,就像拥有一群聪明绝顶、却拒绝相互沟通的同事。
效率低下、混乱,而且支离破碎。
每次 AI 会话都从零开始。你的偏好、之前的对话,甚至上传过的文件,全都无法延续到另一个助手中。
你可能早上告诉了 ChatGPT 某件事,下午切换到 Claude 时,却不得不从头再解释一遍。
复制粘贴在大多数情况下确实可行,但当你的上下文散落在五个标签页和多个对话中时,这就没那么轻松了。
没错,有些助手能够“记住”最近几条消息。但受 token 限制,较长的对话或文档还是会被截断。
重要细节就这样消失了,后续追问也会失去基础。
假设你想让 AI 助手通过调用外部 API 来处理多步骤任务,通常需要构建一条脆弱的 prompt 链。JSON 数据块中只要有一个字段出错,或者 API 规范发生一点小改动,整个流程就会崩溃。
助手非但无法执行任务,反而开始产生幻觉,而调试也变成了靠猜。
你为 GPT‑4 精心设计了 prompt?很好。但如果之后切换到 Claude 或 Perplexity 等其他助手,就得从头重写函数描述、system prompt 和预期输出。
这看起来或许不算特别严重,但目前并没有一个通用的解决方案。这也意味着你需要不断返工。
Mem0 最近推出了 OpenMemory Chrome 扩展,为你常用的 AI 助手增加了一个通用的“记忆层”,让你再也不必重复介绍自己。
无论使用哪个 LLM 助手,它都能实时、无感地捕获、检索并注入“上下文记忆”。
无论你正在使用 ChatGPT、Grok、DeepSeek、Claude、Replit、Gemini 还是 Perplexity,它都会在后台运行,解决我们在第一部分讨论的那些问题。
你可以在 Chrome Web Store 中完全免费地安装这款 Chrome 扩展。它是开源项目,在 GitHub 上已经获得 450 多颗 Star。
下面是官方演示视频!
以下是它实际运行时的核心流程:
安装扩展 → 单击工具栏图标 → 通过 Google 登录(API key/access token 会存储在 Chrome storage 中)。
登录后,你可以单击扩展图标,或使用快捷键 Ctrl + M。扩展会在当前页面中注入一个可折叠的侧边栏,并且适用于所有 URL,让你无论身处哪个页面都能访问自己的记忆。
侧边栏 UI 使用 GET /v1/memories 获取记忆,允许你通过 POST /v1/memories 添加记忆,并在客户端展示相关记忆。
上下文注入聊天的工作方式如下:在支持的 AI 网站上,包括 ChatGPT、Claude、Perplexity、Grok、Deepseek、Replit 和 Gemini,content script 会监听你的 Mem0 触发操作,然后调用 Mem0 搜索 API(POST /v1/memories/search),取回相关的内容片段。
检索到的记忆会以辅助说明的形式添加到聊天输入内容前面,让 AI 了解你的上下文;之后还可以选择由扩展自动帮你发送 prompt。单击三点菜单后,你还可以在这个弹窗中删除记忆。
消息发送后,完整的聊天消息历史会通过 POST /v1/memories 异步回传给 Mem0,并设置 infer=true,让你最新的交流内容成为未来可用的记忆。
每次切换、添加、编辑、删除或退出登录操作,都会通过 POST /v1/extension/ 发送一个轻量级事件,用于使用情况分析,帮助扩展持续改进。
通过侧边栏的三点菜单,你可以立即在新标签页中打开完整的 Mem0 Web Dashboard,进行更深入的记忆管理。它位于 app.mem0.ai/dashboard/user/chrome-extension-user。
下面通过功能介绍和截图来帮助你理解。
侧边栏 UI 可以帮助你管理记忆。每条记忆都会显示文本内容和分类标签,并且可以直接在列表中一键复制或查看。
你还可以通过侧边栏实时查找相关记忆,并查看目前保存的记忆总数。
单击 Open Dashboard 按钮,可以在新标签页中打开完整的 Mem0 Web Dashboard,进行更深入的记忆管理。你也可以在这个 Dashboard 中编辑和删除记忆。
最实用的功能是 One-Click Sync,它可以将 ChatGPT 中的记忆批量同步到 Mem0。这样,你现有的全部记忆都能得到复用,从而改善使用体验。
从整体来看,这款扩展遵循 Chrome Manifest V3 模型。UI、后台逻辑和 content script 之间的所有连接关系,都在 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 service worker 运行它监听工具栏单击事件,在安装时初始化默认设置,并在收到请求时打开 Dashboard。
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();
}
});
});
content.js这些文件位于各自的网站目录下,并且都遵循类似的模式:
例如,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.js、mem0/content.js、grok/content.js、deepseek/content.js。
popup.js)负责身份验证中的“Sign in with Google”流程它会提示用户登录,存储用户的 userId,然后重定向到 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)提供通用侧边栏该侧边栏会被注入所有页面()。它提供了完整的记忆 Dashboard,任何人都可以:
下面是 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();
}
…
对于 LLM 应用来说,隐私始终是一个值得关注的问题。不过,Mem0 的设计目标就是让你对个人数据保持 100% 的控制权。
✅ Chrome Manifest V3 带来了更严格的安全模型,包括禁止远程代码、使用 service worker 作为后台,以及默认启用 CSP。
✅ 所有敏感的用户凭据,包括 apiKey、access_token、userId 和用户偏好,都会通过 chrome.storage.sync 存储。数据采用静态加密,并且可以在用户主动选择后跨设备同步。任何凭据都不会被记录到控制台,也不会发送给任何第三方。
✅ 登录流程(popup.js)会设置这些值。除非通过 HTTPS 调用 Mem0 API(https://api.mem0.ai/* 和 https://app.mem0.ai/),否则它不会将这些值发送到任何域名。
✅ Mem0 只会在已知的 AI 助手域名中注入逻辑,同时为了提供侧边栏 UI,也会在所有页面中注入相关逻辑。这可以确保它不会嗅探任意页面,除非用户明确打开了它的 UI。
✅ 页面内容不会被外传。侧边栏唯一的用途,就是作为一个 Dashboard,展示你自己的记忆;这些记忆从 api.mem0.ai 获取。
✅ 每个助手的 content script,例如 chatgpt/content.js,只会执行以下操作:
该扩展没有嵌入任何第三方分析工具或跟踪器。得益于这些最佳实践,你的数据是完全安全的。
熟悉这款 Chrome 扩展后,你就会意识到:只要希望 AI 在不同交互之间记住某些内容,就可以使用它。下面是几个实际用例。
作为开发者,我们经常通过复制粘贴代码来理解知识、学习内容和寻找解决方案。我们没有意识到的是,有时自己会反复复制粘贴同样的东西。
假设你将很长的代码片段复制到 ChatGPT 中,请它进行解释。在后续的追问中,你希望这些片段能够自动重新出现,而不必一直保留在剪贴板里。
技术流程可以是:
chatgpt/content.js 拦截提交操作 → 通过 POST /v1/memories 异步回传给 Mem0。chatgpt/content.js 拦截提交操作 → 通过 POST /v1/memories 异步回传给 Mem0。POST /v1/memories,并设置 infer=true,让这次对话成为未来可用的记忆。POST /v1/memories,并设置 infer=true,让这次对话成为未来可用的记忆。我们都认同,每个 AI 助手都有各自擅长的领域,例如:
假设你正在撰写某个技术主题。
当然,大多数人不会同时使用三个以上的助手,但这个例子依然说明了 OpenMemory Chrome 扩展可以如何显著改善你的工作流。
再也不需要复制粘贴聊天记录,也不必反复提醒 AI 你刚才说过什么。
OpenMemory 会安静地在后台运行,让你的多个 AI 助手终于像同一个大脑一样协同工作。
如果你有任何问题或反馈,请告诉我。
祝你今天过得愉快!我们下次再见 :)
部分评论可能只有登录后的访客才能看到。请登录以查看全部评论。
如果需要采取进一步措施,你可以考虑屏蔽此人和/或举报滥用行为。