爱意满满的作品展示区。
angiie

Omnipotent-Pocket:把标签页收进口袋的 Chrome 扩展(本地优先,可选 Gist 备份)

  •  
  •   angiie · 2 days ago · 429 views

    拖延症患者的日常:开了三十个标签页,关掉觉得可惜,留着又碍事,最后浏览器卡到重启,收藏夹里全是没看过的链接。

    所以我写了个扩展,叫 Omnipotent-Pocket ,逻辑很简单:把想留住的页面收进一个本地收藏库,然后放心关掉。

    ■ 它做什么

    · 按域名规则收集:只收你关心的站点,子域名一起匹配;范围可以是当前窗口或全部窗口 · 自动去重:同一个 URL 只留一条,跟踪参数( utm_*、fbclid 之类)会先被剥掉再比 · 收藏库:搜索标题/网址/域名/摘要,按域名筛,按时间或标题排,可编辑可删除 · README 摘要:保存 GitHub 仓库时抓 README ,优先用中文版本,存一段能直接读的摘要 · GitHub 增强搜索:按语言、star 、fork 过滤,选中的结果直接进库 · 导出:Markdown 清单(适合贴进笔记)或完整 JSON (可还原) · 可选 Gist 同步:填自己的 token ,备份写进自己账号下的私有 Gist

    ■ 几个刻意的取舍

    1. 不做后端。数据全在 chrome.storage.local ,卸载即删。要跨设备就自己开 Gist 同步,请求直连 api.github.com ,不经过任何中转。
    2. 不做全量收集。默认只收匹配域名规则的页面,不然收进来的全是垃圾,库很快就废了。第一次装会种一条 github.com 的规则。
    3. 中文 README 优先。很多仓库有 README_zh.md / README.zh-CN.md ,抓的时候会按候选列表挨个试,找不到才回落到英文。
    4. 摘要不用 AI 。就是挑重点段落截断,不花钱、不联网、也不会瞎编。想要更好的摘要,可以手动改。

    ■ 技术上的几件事

    · Manifest V3 ,service worker 里做消息路由,页面和后台通过 sendMessage 通信 · 没有构建步骤,源码即产物,改完直接 reload 扩展 · 去重先规范化 URL (小写 host 、去默认端口、排序 query 、剥跟踪参数)再比 · GitHub API 未认证时有速率限制,所以 README 抓取有并发上限( 3 )和每轮上限,失败会留待补全,不阻塞收集 · 界面中英双语,跟随浏览器语言,也可以在收藏库左下角手动切

    ■ 它不是什么

    · 不是 Pocket / Raindrop 的替代品:那两个是云端稍后读,这个默认不联网 · 不是 OneTab:OneTab 是「把标签页堆成一个列表」,这个是可检索、可编辑的库,还能导出 · 没有 AI 摘要、没有团队协作、没有移动端,这些我短时间内也不会做

    ■ 现在的状态

    已经上架 Chrome 应用商店。中文说明和截图在产品页: https://holatiger.com/omnipotent-pocket

    商店地址: https://chromewebstore.google.com/detail/omnipotent-pocket/fegafpjecnmogggggafkdalcgccaojpo

    想听两类反馈:

    1. 域名规则这个粒度对不对?有人可能想要「按标签页分组」或者「按窗口」来收。
    2. Gist 同步有人真的会用吗?我怀疑大多数人的真实需求只是「别丢」,那本地导出就够了。

    拍砖随意,功能上的取舍我大概率会听。

    zhuanggu
    zhuanggu
    2 days ago
    1
    本地优先、不做后端这个取舍很对。我做的也是同方向的扩展(把 AI 对话存到本地,IndexedDB ),踩过的坑里有两个可能对你有用:

    1 ) chrome.storage.local 默认配额是 10MB (加 unlimitedStorage 可以解),但它是整键序列化写入,库大了以后每次全量重写会明显卡;换成 IndexedDB 分条写之后才顺。
    2 ) URL 规范化时如果排序 query ,会把部分预签名链接( OSS/S3 )弄失效。我现在只剥 utm_*/fbclid 这类已知跟踪参数,其余保持原样。

    另外好奇 README 摘要有做空文件兜底吗?有些仓库 README_zh.md 存在但是空的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1089 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:29 · PVG 07:29 · LAX 15:29 · JFK 18:29
    ♥ Do have faith in what you're doing.