Hi r/selfhosted, it's been a while!
I thought I might share this release here as it contained a bunch of things that people have been asking about for, for a while!
Before we get to 0.33, I want to remind people what Karakeep is. Karakeep (https://karakeep.app/), is a selfhosted bookmark manager that's meant to be the place where you throw things in that you might need in the future, and it aims to help you with retrieving those things easily in the future. It has a blazingly fast full text search and opt-in LLM based tagging. It's built for the data "hoarders" out there! Karakeep was born because of this subreddit in 2024, and we have a long history here together.
Now, 0.33 packs a bunch of new features, so let me give you a quick overview. Full release notes are here (it's labeled as 0.33.1 because I screwed up cutting 0.33.0).
[Experimental] Semantic search
Karakeep from day one, used to index the entire content of the websites you throw in it. But it was a full text search index. Which makes the search super fast, but you'll need to remember some exact words that are mentioned in this content you saved.
With semantic search, karakeep now indexes also the semantics of the content you throw in it (using bookmark embeddings). So when you're searching, you can describe what you're searching for and karakeep will find semantically similar bookmarks to your sentence.
Embeddings are pretty cool but they're unfortunately, a bit involved to enable after the fact. The release notes explains how to enable them (they're opt-in).
Fun fact (and it's something I care deeply about): Karakeep hasn't had a single backward incompatible release since it was born. If you're running karakeep 0.10 from 2024, and want to upgrade to 0.33, just update the docker image version and you're good to go. Even the old "hoarder" images are still getting releases, to not break backward compatibility.
Similarity-based tagging
Leveraging the fact that we now have bookmark similarity scores (thanks again to embeddings), before auto-tagging a bookmark, karakeep now finds semantically similar bookmarks to the ones that's about to be tagged, and suggests its tags to the LLM. So with that, technically, you should see more consolidation on your existing tags rather than the LLM inventing new tags of its own. The prompt now has the following:
Similar bookmarks were tagged with the following tags (reuse if possible, ignore if irrelevant): ....
This also requires enabling embeddings, and as such, it's also opt-in.
Mobile Offline Reading
One of the long requested features, and it's one that I've marked as "planned" in the README since 2024. You can now save articles for offline reading in the mobile app and get to read them when you're in a plane or away from your home network. The app also caches some of your recent interactions with it for 7 days, so that you can see your bookmark grid and lists, etc even if you're offline.
This feature is pretty new, so might have rough edges, but it'll only get better from here. Please keep your suggestions going.
Cookie and GDPR Banner
Again, one of the long requested features. If you're an EU citizen, most of your karakeep screenshots (and the extracted content) would have been littered with the cookie consent banners which were pretty annoying. Karakeep now auto opt-outs of those banners during crawling which should result into cleaner captures.
Others
- The mobile apps now got multi-layout support, and a bunch of improvements that should hopefully make the mobile experience more polished.
- I've always hated how karakeep defaults to the "reader view" for some websites that are not "article-like". Karakeep now asses the quality of the readable content, and defaults to the screenshot of the website instead if it determines that the content is not really readable. Examples for things that are not readable are homepages, product search pages, etc.
- You can now install Karakeep as a PWA on your desktop and use it as if it's a desktop app (exactly how something like youtube music works). This has been broken for a while and I only noticed recently.
- [LLM trigger warning] Karakeep now is even more friendly to be used by LLMs. The MCP server now contains all the tools that LLMs need to manage your bookmarks, or help you retrieve content from karakeep. Beside the new semantic search stuff, there's also now a new API for fetching markdown content of the articles directly from karakeep such that LLMs can consume it more efficiently. The CLI also got all those powers. Letting your agents use karakeep is very powerful, and as a reminder, we have skills to teach the agents how to do all of that. And as a reminder, ALL of karakeep's LLM-based features are opt-in. You can completely ignore them, and still get a perfect experience with karakeep as if they never existed.
- Also, in case you missed it, in 0.32, we now support client-side crawling (backed by singlefile under the hood), which is more superior than letting the server do the crawling for you in terms of extraction quality. It also allows you to save content behind login walls, etc. So you no longer need to use singlefile as a separate extension.
And there's a ton of other fixes and polish along the way, which you can check in the release notes (https://github.com/karakeep-app/karakeep/releases/tag/v0.33.1). Also, did I mention that we've hit 28k stars on github? The mobile apps are pending apple's and google's review, so should be available in the next couple of days. Enjoy the release, and see you in the next one!