浏览器书签和独立书签管理工具之间的割裂,一直是书签管理的核心痛点。你在 Chrome 中随手收藏了一个网页,但它不在你的管理系统中;你在管理系统中精心分类了书签,却无法在浏览器中直接使用。MarkStackAI 通过 Chrome 扩展实现了真正的双向同步,让浏览器书签和管理平台始终保持一致。

安装 Chrome 扩展

MarkStackAI 提供了一个基于 Manifest V3 规范的 Chrome 扩展。安装步骤如下:

  1. 从项目仓库下载扩展源代码,解压到本地文件夹。
  2. 打开 Chrome 浏览器,访问 chrome://extensions/ 页面。
  3. 打开右上角的「开发者模式」开关。
  4. 点击「加载已解压的扩展程序」,选择扩展所在的文件夹。
  5. 安装完成后,工具栏会出现 MarkStackAI 的图标。

如果你自行部署了 MarkStackAI 后端服务,需要在扩展的设置页面中修改服务器地址为你的实际部署地址。默认配置指向本地开发环境 http://localhost:8001

登录与连接

点击扩展图标会弹出一个小面板,首先需要用你的 MarkStackAI 账号登录。输入用户名和密码后,扩展会通过 API 获取 JWT 令牌,之后的所有同步请求都通过这个令牌进行认证。

令牌会安全地存储在 Chrome 的 chrome.storage.local 中,浏览器关闭后重新打开不需要重新登录。令牌的有效期为 30 天,过期后会提示重新登录。

安全提示:扩展通信全程使用 HTTPS(生产环境),JWT 令牌不会在网络传输中暴露。建议在生产部署时务必启用 HTTPS。

首次同步方向选择

首次使用同步功能时,系统会询问你选择同步方向。这是一个关键步骤,因为你的 Chrome 书签和 MarkStackAI 中的书签可能完全不同:

首次同步完成后,后续的同步都是增量式的双向同步,只传输有变更的部分。

实时监听变更

Chrome 扩展会注册一系列浏览器书签事件监听器,实时捕捉你在 Chrome 中对书签的任何操作:

同样,当你在 MarkStackAI 的 Web 界面中修改书签时,扩展也会定期拉取最新数据,将变更同步到 Chrome 浏览器中。这个拉取间隔可以在扩展设置中配置,默认为每 5 分钟检查一次。

离线暂存与自动重试

网络不是永远稳定的。当你在离线状态下操作书签时,扩展不会丢失这些变更,而是将操作记录暂存在本地队列中。

暂存机制的工作流程如下:

  1. 捕获到书签变更事件。
  2. 尝试向服务端发送同步请求。
  3. 如果网络不可用或请求失败,将变更操作序列化后存入本地队列。
  4. 当网络恢复时,自动按顺序重放队列中的操作。
  5. 重放成功后清除队列中已处理的记录。

自动重试采用指数退避策略:第一次失败后等待 5 秒重试,第二次等待 15 秒,第三次等待 45 秒,以此类推。最长等待时间不超过 5 分钟。这种策略既保证了同步的及时性,又不会在网络长时间中断时过度消耗资源。

冲突解决

双向同步不可避免地会遇到冲突。比如你在 Chrome 中修改了书签的标题,同时在 Web 端也修改了同一个书签的标题,两边的修改内容不同。

MarkStackAI 采用「最后写入优先」(Last Write Wins)的冲突解决策略,配合时间戳比对:

这种策略简单直观,在绝大多数场景下都能给出合理的结果。如果你需要精确控制同步行为,可以在扩展设置中暂时关闭自动同步,手动触发同步操作。

快速收藏功能

除了同步已有书签,Chrome 扩展还提供了快速收藏当前网页的功能。点击扩展图标后,面板会显示当前网页的标题和 URL,你可以:

快速收藏会同时在 MarkStackAI 服务端和 Chrome 本地创建书签,无需等待下次同步。整个操作可以在两三秒内完成,比 Chrome 自带的收藏功能更加灵活。

同步配置选项

扩展的设置页面提供了以下配置选项:

常见问题排查

使用同步功能时可能遇到以下问题:

问题:扩展显示"连接失败"

检查服务器地址是否正确,确保后端服务正在运行。如果是自部署环境,确认防火墙没有阻断 API 端口。

问题:书签没有同步过来

检查同步范围设置,确认目标文件夹在同步范围内。也可以点击「手动同步」按钮强制触发一次完整同步。

问题:重复书签出现

首次同步时如果选择了「双向合并」模式,可能会因为 URL 的细微差异(比如带不带末尾斜杠)导致未能去重。可以在 MarkStackAI 的 Web 端使用搜索功能找到重复项并手动清理。

小结

Chrome 书签双向同步是 MarkStackAI 区别于其他书签管理工具的核心特性之一。通过实时监听、离线暂存、自动重试和智能冲突解决,它真正实现了浏览器和管理平台的无缝衔接。你不再需要在两个地方分别维护书签,只需要在任何一端操作,变更就会自动同步到另一端。这种体验一旦用上,就再也回不去了。