karakeep
自托管的书签管理应用,可保存链接、笔记和图片,并利用 LLM 自动打标签、摘要和 OCR 识别。亮点在于支持本地模型(如 Ollama),兼顾隐私与智能化,同时提供完整的浏览器插件、移动端和 CLI 工具。项目采用 AGPL-3.0 协议,适合个人数据囤积者自建。
README
Karakeep(曾用名 Hoarder)是一款可自托管的“收藏一切”应用,为数据囤积者而生,并带有一点 AI 特性。

功能特性
- 🔗 收藏链接、记笔记、存储图片和 PDF。
- ⬇️ 自动抓取链接标题、描述和图片。
- 📋 将书签整理到列表中。
- 👥 与他人协作共享同一列表。
- 🔎 对所有已存储内容进行全文搜索。
- ✨ 基于 LLM(大型语言模型)的自动标签和摘要,支持使用 ollama 的本地模型!
- 🤖 与 LLM 智能体(如 OpenClaw、Hermes)友好兼容,配有强大的 CLI 和官方技能。
- ⚙️ 基于规则的自定义管理引擎。
- 🎆 OCR(光学字符识别)用于从图片中提取文字。
- 🔖 Chrome 插件、Firefox 附加组件和 Safari 扩展 用于快速收藏。
- 📱 iOS 应用和 Android 应用。
- 📰 从 RSS 订阅源自动收藏。
- 🔌 REST API 和多个客户端。
- 🌐 多语言支持。
- 🖍️ 标记并保存已收藏内容中的高亮部分。
- 🗄️ 完整页面归档(使用 monolith)以防止链接失效。
- ▶️ 使用 yt-dlp 自动存档视频。
- ☑️ 批量操作支持。
- 🔐 SSO(单点登录)支持。
- 🌙 深色模式支持。
- 💾 优先支持自托管。
- ⬇️ 从 Chrome、Pocket、Linkwarden、Omnivore、Tab Session Manager 导入书签。
- 🔄 通过 floccus 与浏览器书签自动同步。
- [计划中] 移动端离线阅读、书签间的语义搜索等……
⚠️ 本应用正在密集开发中。
文档
演示
你可以访问 https://try.karakeep.app 体验演示。使用以下凭据登录:
邮箱:demo@karakeep.app
密码:demodemo
演示环境预填了一些内容,但处于只读模式以防止滥用。
关于名称
Karakeep 这个名字源自阿拉伯语单词 "كراكيب"(karakeeb),一个口语化的词汇,常用来指代各种杂乱物品、零碎东西或看似无序却往往承载个人价值或潜在用途的物品。它让人联想到一个凌乱的抽屉或被人遗忘的盒子,里面塞满了你舍不得扔掉的东西——因为某种原因,它们很重要(或者更可能的是,因为你是个囤积狂!)。
技术栈
- NextJS 用于 Web 应用,使用 App Router。
- Drizzle 用于数据库和迁移。
- NextAuth 用于身份验证。
- tRPC 用于客户端与服务器通信。
- Puppeteer 用于爬取书签。
- OpenAI,因为 AI 现在太火了。
- Meilisearch 用于全文搜索。
为什么构建它?
我经常在手机上浏览 Reddit、Twitter 和 Hacker News。经常发现有趣的内容(文章、工具等),想收藏起来,等坐到笔记本电脑前再阅读。典型的“稍后阅读”应用场景。最初我用的是 Pocket。后来我开始自托管,想把这一场景也自托管起来。我用 memos 来做快速笔记,很喜欢它,但它缺少一些我认为重要的功能,比如链接预览和自动打标签(下一节再详述)。
我的本职是系统工程师(已经干了 7 年),不想与 Web 开发领域脱节太多。我决定构建这个应用,既能保持对 Web 开发的熟悉度,又能打造一个我在乎且每天使用的东西。
对比竞品
- memos:我很喜欢 memos。我在家庭服务器上跑着它,是我最常用的自托管应用之一。但它不会归档或预览分享的链接。我只是往里面扔了很多链接,如果能通过时间线一眼看出是哪个链接就好了。另外,鉴于我扔进去的东西五花八门,如果它能对我保存的内容进行某种自动归类就更好了。这正是 Karakeep 试图解决的场景。
- mymind:Mymind 是与本项目最接近的替代品,也是我获得很多灵感的地方。不过它是一个商业产品。
- raindrop:一个打磨得很好的开源书签管理工具,支持链接、图片和文件,但不可自托管。
- 书签管理器(主要关注链接收藏):
- Pocket(已停止维护):Pocket 让我迷上了“稍后阅读”应用。我曾大量使用它。然而,最近我开始折腾家庭实验室,并对在家庭服务器上运行自己的服务着了迷。Karakeep 被设计成优先自托管的应用。Mozilla 最近宣布将关闭 Pocket。
- Linkwarden:一个开源的自托管书签管理器,我在家庭实验室中用了一段时间。它主要关注链接,并支持协作集合。
- Wallabag:Wallabag 是一个成熟的开源“稍后阅读”应用,用 PHP 编写。
- Shiori:Shiori 旨在成为一个用 Go 语言编写的开源 Pocket 替代品。
翻译
Karakeep 使用 Weblate 管理翻译。如果你想帮助翻译 Karakeep,可以在此处贡献。
Karakeep Cloud ☁️
如果你不习惯自托管,可以使用我们的托管版 Karakeep 云服务:cloud.karakeep.app。云订阅的费用将支持 Karakeep 的开发。
支持
如果你喜欢使用 Karakeep,请在仓库上点个 ⭐️!
社区渠道
- 加入我们的 Discord。
- 在 Twitter 上关注我们:@karakeep_app。
许可证
Karakeep 基于 AGPL-3.0 许可证,由 Localhost Labs Ltd 所有。

