For about a decade, nobody worried about where their bookmarks lived. You saved a link, it went somewhere, and it was there when you came back. The cloud was assumed to be permanent, the way a public library is permanent. Then two of the most loved read-later apps on the internet shut down inside eight months of each other and took millions of libraries with them.
Now there is a whole category of bookmark tools whose main selling point is that they run on your own hardware. Self-hosted, Docker-composed, SQLite on a disk you can hold. The pitch is simple. Nobody can take this away from you.
I think the people building these tools are mostly right about the problem and slightly wrong about the fix. Local-first won the argument. It has not yet won the job.
- Local-first bookmark managers are back because the cloud proved it forgets. Omnivore died in 2024, Pocket died in 2025.
- Local-first means your data lives on hardware you control, and the app works with the network unplugged.
- Most local-first bookmark apps deliver four of the seven original ideals well and go quiet on the rest.
- The two gaps that hurt most are longevity in practice and reach into your X, Reddit and LinkedIn saves. ContextBolt closes the second. It captures those saves automatically, keeps the library on your machine on the free Basic plan, and on Pro hands it to your agent over MCP.
- The axis that matters is not local versus cloud. It is whether your data is escapable and machine-readable.
What local-first actually means
The phrase is not marketing. It comes from a 2019 essay by the research lab Ink & Switch, and it is specific enough to argue with.
Local-first software keeps the primary copy of your data on your own device. The network is an enhancement, not a dependency. The original manifesto lays out seven ideals a local-first app should hit. Fast, because reads and writes never wait on a server. Multi-device, so your stuff follows you. Offline, meaning full function with the wifi off. Collaboration, so other people can still work with you. Longevity, meaning the software outlives the company. Privacy, because the data does not have to leave your machine. And user control, which is the right to take your data and go.
Seven ideals. Read that list again, because almost every conversation about local-first bookmarks only ever discusses three of them.
The idea has grown a real community around it. There is an annual Local-First Conference now, with Ink & Switch running a lab day. This is not a fringe position anymore. It is a movement with a conference and a manifesto and a lot of very good engineering behind it.
Why they are coming back
The revival has a cause, and the cause has dates.
Omnivore was an open-source read-later app with an unusually devoted following. In late October 2024 its team was acquihired by ElevenLabs. The product shut down on November 15, 2024, and the data-export window closed two weeks later after users complained. ElevenLabs wanted the engineers. The app was not the point.
Then Pocket. Mozilla bought it in 2017, invested less every year, closed new signups in May 2025, and shut the service down on July 8, 2025. Roughly 35 million people had been saving articles into it. The export window closed that November, and the remaining accounts were queued for deletion.
Two of the biggest names in saving things for later, gone in eight months. Neither died because the technology failed. They died because the business around them stopped making sense to somebody in a meeting.
That is the lesson people actually absorbed. Not “the cloud is unreliable.” The cloud was extremely reliable right up until the day it was switched off on purpose. What people absorbed is that your library’s lifespan is tied to a strategy document you will never read. So a generation of tools appeared with a different promise. Run it yourself. Karakeep is the one most people land on, a self-hostable bookmark-everything app with local LLM tagging and full-text search. Linkwarden sits next to it with better page archiving. Both are free if you run them, and both are well built.
The instinct is correct. I want to push on the fix.
The ideals most local-first bookmark apps skip
Here is the scorecard nobody publishes. Take a typical self-hosted bookmark manager and grade it honestly against the seven ideals it is implicitly claiming.
| Ideal | Typical self-hosted bookmark app | Honest grade |
|---|---|---|
| Fast | Local database, no round trip | Excellent |
| Offline | Works with the network unplugged | Excellent |
| Privacy | Data never leaves your box | Excellent |
| User control | It is your disk, your file | Excellent |
| Multi-device | Needs a server, a domain, a VPN, or all three | Depends on your patience |
| Collaboration | Rarely a goal, often absent | Weak |
| Longevity | Survives the vendor. Does not survive you. | The quiet failure |
Four straight wins. Those four are real and they are why the category deserves its comeback. But look at the bottom row, because that is where the argument gets uncomfortable.
The self-hosted graveyard nobody talks about
Longevity is the ideal everyone cites and nobody tests. “The software works in ten years even if the vendor is gone.” Fine. Does it work in ten years if you are gone? Not dead. Just busy.
Here is the take I will defend. A self-hosted bookmark manager you stopped patching, whose Docker image is three major versions behind, whose backup cron job silently broke in March, is not safer than Pocket was. It is a shutdown with extra steps. Pocket at least emailed you. Your unmaintained container will not.
Self-hosting does not delete the risk of losing your library. It transfers the risk from a company with a status page and a paid ops team to a person who has a day job. For a small number of people, that trade is clearly correct, and they know exactly who they are. They already run a NAS. They already have backups they have actually restored from, not just configured.
For everybody else, “I own the data” quietly means “I am now the single point of failure.” That is a real answer to the wrong question. The reason people lose bookmarks has never mostly been vendor shutdowns. It has been neglect, drift, and never being able to find the thing again.
The saves a local-first app cannot reach
There is a second gap, and it is bigger than the first.
Open your phone and think about where you actually save things now. You are not copying URLs into a self-hosted web app. You are tapping the bookmark icon on a post in X, hitting save on a Reddit thread, tapping save on a LinkedIn article. That is where modern saving happens, inside the platform, in one tap, twenty times a week.
Local-first bookmark managers cannot see any of it. There is no export button on your X bookmarks. Reddit will show you roughly your last thousand saves and no more. These saves are not even copies, they are pointers, so when the original post is deleted your bookmark quietly rots. A self-hosted app running perfectly on your own metal captures precisely none of this unless you paste every link in by hand, which you will do for a week.
So the sovereign, private, offline library you built contains the twelve links you were motivated enough to file manually. The four hundred things you actually saved are still trapped in three apps that do not care about them. That is the split between browser bookmarks and social bookmarks, and local-first only ever addresses the half that was already fine.
Escapable and machine-readable beat local and cloud
I think the local-versus-cloud axis is the wrong one to organize your choice around. Two other properties predict whether a library survives and stays useful, and they cut across both camps.
Escapable: Can you get everything out, today, in a format that another tool will read, without asking permission? Not “is there an export feature buried in settings.” Have you run it? A cloud app with a one-click complete export is more escapable than a self-hosted app whose data sits in a schema only it understands. Pocket’s failure was not that it was cloud. It was that 35 million people had never tested the exit.
Machine-readable: Can something other than the app’s own search box read your library? For the last twenty years this did not matter much. It matters enormously now, because the thing you most want to do with a decade of saved links is ask an AI about them. A library your agent cannot reach is an archive, not a tool. This is what MCP exists to solve, a standard way for an AI agent to read a data source directly.
Grade your current setup on those two and the answer is usually more interesting than its hosting model. A private SQLite file nothing can read is sovereignty with nothing to show for it. You own it completely and it does nothing for you.
Recall any post you ever saved.
Instant search across every page you save and every bookmark you've made on X, Reddit and LinkedIn. Free up to 150 bookmarks. Personal MCP endpoint on Pro for $6/mo.
Where ContextBolt sits, honestly
We build a bookmark tool, so let me be straight rather than clever about this.
ContextBolt Basic is local in the sense this post cares about. It is a Chrome extension, the library is stored on your machine, and search runs on your device, instant, ranked and typo-tolerant. There is no account, no card and no trial clock. It is capped at 150 bookmarks. What it adds to the local-first pitch is the half the self-hosted apps leave to you. One click saves any web page with its article text, and your X, Reddit and LinkedIn saves are captured automatically as you make them, with nothing to paste and no export file to request. Every save is AI-tagged and clustered into a topic on arrival, so the library organizes itself while you keep saving the way you already do.
Pro is $6 a month, month to month. It removes the cap, adds cloud sync, and gives the library a personal MCP endpoint, so Claude, Claude Code, Cursor or Codex can search your saves by meaning mid-conversation. That is the machine-readable ideal from the section above, delivered as one URL you paste into the agent once. It covers the escapable ideal too. Pro can export the whole library to CSV, JSON or XLSX at any time, and the endpoint includes an export tool that hands the collection back to whatever you point it at.
The trade, named plainly. Pro’s cloud sync puts a copy of your library on our servers, so on Pro the privacy ideal rests on trusting a hosted service rather than on your disk. It runs in desktop Chrome, and there is no version you host yourself, so if running your own server is the requirement, that is a different job. What ContextBolt is for is the person who saves twenty things a week across four platforms and wants to find them again, or ask an agent about them, without becoming their own ops team.
What I would push back on is the idea that self-hosting settles the question. It answers one risk, loudly, and leaves the other two untouched. The library still has to be findable, and it still has to be readable by the machine you now ask everything.
How to choose
Pick by what actually worries you.
If you want the capture and the agent access, start with ContextBolt. Basic is free, needs no account, stores the library on your machine, and fills itself from your next save. Turn on Pro when you want the full library, cloud sync, and an agent reading it.
If you are worried about a company deleting your library, and you genuinely maintain your own infrastructure, self-host. Karakeep or Linkwarden. You will get four of the seven ideals at full strength and keep them as long as you keep patching, and you will still be pasting your X, Reddit and LinkedIn saves in by hand, which is the gap this whole post is about.
If you are worried about never finding anything again, hosting is not your problem. Retrieval is. Solve that first, and then insist on a complete export you have personally tested, so you can leave whenever you like.
And if you are worried about both, no tool clears all seven ideals today for social saves, because the platforms will not let one exist. What you can demand right now is a library that fills itself from the places you actually save, one you can walk out of, and one your AI can read while you stay. Local-first got the diagnosis right. ContextBolt is the prescription for the half it left out, and the free plan is the way to test that claim on your own saves.