别让好文章躺在收藏夹:我把直连 OpenViking 的浏览器插件开源了

预计阅读 5 分钟

看到一篇好文章,点收藏,想着下次一定用得上。真正开始做事时,却常常想不起它存在哪个文件夹,更别说让 AI 接着用。

前面折腾共享记忆库时,我一直想补上这个入口:在浏览器看到值得留下的内容,检查一下,直接收进自己的 OpenViking(下文简称 OV),保留出处,也保留“我为什么收藏它”。现在,这个 Chrome 插件已经开源,名字叫 OV Web Clipper。

它不需要经过 Obsidian 中转。你可以在本地整理,也可以确认后上传到自己的 OV。本文配图均为明确标注的界面演示,使用示例文章、占位服务器和模拟回执,不展示私人部署或真实密钥。

本地收件箱,正文与个人批注分别保留
本地收件箱,正文与个人批注分别保留 · 界面演示

收藏的不只是链接,还有下次用得上的上下文

这个插件的起点很简单:把“我看过”变成“以后能找到、能核对的参考资料”。

点击 Chrome 工具栏图标,它会在本机提取当前网页正文,整理成 Markdown。只想留下某一段,也可以选中文字后通过右键菜单采集。标题、来源、作者和采集时间随正文一起保留,个人批注单独填写。

比如看到一篇知识库组织方法,可以在批注里写:“下次重整项目资料时参考这个分类思路。”这比只保存一个链接,多了一条属于自己的使用线索。

整理时可以编辑正文,原始采集快照仍会保留;也可以导出 Markdown。暂时不接服务器,它依然是本机的资料收件箱。本地保存和上传 OV 是两个独立动作。

连接设置,先确认自己的服务器、身份和目标目录
连接设置,先确认自己的服务器、身份和目标目录 · 界面演示

放进哪台 OV、属于谁,上传前就要说清楚

我不希望一个收藏按钮背后藏着不明确的数据去向。因此,公开版本不预设任何人的服务器,也不附带可共用的密钥。

使用前,需要在连接设置里填写自己的 OV 地址和用户 API Key,保存设置,授权该服务器,再做只读连接测试。扩展会展示服务器实际返回的账号、用户、角色与目标位置,不能只凭一个“连接成功”就把身份问题略过去。

默认收录位置是个人资源收件箱:viking://~/resources/inbox/web-clipper。长期资料可以放个人 sites,需要共享的项目资料可以选项目目录。这里的 ~ 根据当前验证的用户展开。

需要分清两件事:项目目录用于组织资料,真正的隔离仍由 OV 的账号、用户与访问权限负责。 给文件夹取一个项目名,并不会自动获得安全隔离。

文章进入的是 Resource,也就是参考资源。外部文章不应直接当成我的个人事实、工作经验或 Skill。资料、记忆和可复用方法,各自有合适的位置。

上传前的确认窗口,核对文章、身份和服务器
上传前的确认窗口,核对文章、身份和服务器 · 界面演示

安装后,先用一篇公开文章走完流程

目前发布的是手动加载的 Chrome 扩展包,还没有上架 Chrome 网上应用店。安装不需要 Node.js,但需要在 Chrome 中开启开发者模式。

  1. 到 GitHub 的 Releases 下载 ov-web-clipper-0.5.1.zip,解压到准备长期保留的文件夹。不要误选页面自动生成的源码 ZIP。
  2. 打开 chrome://extensions,启用“开发者模式”,点击“加载已解压的扩展程序”,选择直接包含 manifest.json 的目录。
  3. 固定扩展图标,进入连接设置,配置自己的 OV 服务和用户 Key。推荐使用权限范围合适的专用 USER Key,不使用 ROOT Key。
  4. 打开一篇有权保存的公开文章,点击工具栏图标,检查正文、出处和批注,再预览上传位置。确认后才会向服务器提交。

密钥默认只在当前浏览器会话保存,也可以选择本机持久保存。但扩展本地存储不是加密保险箱。远程 OV 地址要求使用 HTTPS;只有本机开发地址允许 HTTP。

首次测试不要选敏感资料。只读测试能确认读取和身份,不证明有写权限,也不证明模型与索引都已经配置好。服务器后续处理可能调用它配置的模型,费用由自己的服务配置决定。

模拟的处理完成与检索回读回执,用来说明验收界面
模拟的处理完成与检索回读回执,用来说明验收界面 · 界面演示

上传成功之后,还要看 AI 能不能找到它

做这个插件时,我最在意的一点,是不要把几个不同状态都叫“成功”。

保存到本地,表示资料还在这台浏览器里。上传已受理,表示服务器接到了请求。处理完成,表示任务结束。只有继续检索并读回原文,才能判断本次查询是否真的找到了这篇资料。

扩展会核对命中的资源、来源、采集指纹和正文首尾,避免用一篇主题相近的文章冒充正确结果。网络超时、提交结果不明时,也不会盲目自动重发,而是保留待确认状态,先查已有回执。

这仍不代表任何问法都一定命中,更不代表装上插件后所有 AI 都自动拥有记忆。其他工具还需要接入同一台授权的 OV,使用正确身份,并在工作时实际调用检索。这个插件负责补上“网页资料进入 OV”的入口。

当前公开版本的 GitHub 自动检查已经启用,30 项测试、扩展构建与发布预检均通过。它们验证了所覆盖的程序行为与打包规则,不代替每个人在自己 Chrome 和 OV 上的实际验收。接口针对 OV 0.5.x,开发阶段验证过 0.5.3,其他版本仍需自行确认兼容性。

项目采用 MIT 许可证,源码、安装说明、脱敏截图和可下载扩展包都已公开。这是独立社区项目,并非 OpenViking 官方产品。复杂动态网页可能需要改用选区采集;本地资料不会自动跨设备同步,手动安装版也没有自动更新。

我想补上的,是看完好文章之后,到下一次真正用上它之前的那一段路。先把来源和判断留下,再让授权的工具在需要时检索它,知识库才有机会参与后面的工作。

项目与下载入口:OV Web Clipper。安装遇到问题,或有更合适的收录方式,欢迎在仓库提交 Issue 或参与讨论。

发表评论