Why Second Brain runs on your Cloudflare account, not ours

Most AI memory tools store your data on their servers. That means your context, decisions, and personal knowledge live in someone else's infrastructure, governed by their retention policies, subject to their pricing changes, and potentially readable by their team.

Second Brain v2 runs entirely on your own Cloudflare account.

What that means in practice:

Your Cloudflare Workers and D1 database hold the graph. Queries run on your infrastructure. We never see your memories, because they never touch our servers. Your data does not disappear if we shut down.

The setup takes about ten minutes. You deploy a single command, connect your Cloudflare credentials, and the MCP endpoint is live. From that point, you own the stack completely.

Cloudflare's free tier covers most individual use cases. Vectorize, D1, and Workers all sit within the free limits for personal memory graphs.

The tradeoff is that you manage your own deployment. If something breaks, you are debugging your own infrastructure. We try to make this as rare as possible, but it is a real tradeoff.

For teams and shared contexts, Cloudflare's access controls let you gate who can query the graph without building auth from scratch.

What made you most interested in self-hosting your memory layer?

18 views

Add a comment

Replies

Best
How do you know I’m doing this already on my Cloudflare ?! ✨😎

honestly it's less "self-hosting" and more "not wanting a startup's shutdown to be the thing that erases my memory graph" - I've had that happen with a note-taking tool before and it's a bad feeling. the part I'd want to know before deploying: when you ship a schema change to the D1 tables or the Workers logic, does my existing self-hosted instance need a manual migration step, or does the deploy command handle upgrading in place without me losing data?

Good question: no manual steps. When you update, you just run the same deploy command again. The app upgrades its own database in place, and it only ever adds new stuff, never deletes or changes what’s already there. Updates also never touch your data directly. Everything lives in your own Cloudflare account, so even if this project disappeared tomorrow, you’d keep the version you have and all your data with it. And you can pull a full backup anytime with one command. Though there are no plans of this going away

 that's the answer I was hoping for - additive-only migrations mean I can't get stuck mid-upgrade with a half-migrated schema and no rollback. good to know the backup command exists too, that's the thing I'd actually reach for the one time something did go wrong. thanks for the detail.

the answer for me is the compelled-disclosure question. when memory lives on someone else's infra, they can be subpoena'd, they can pivot, they can shut down. when it's mine, it's mine.

the second reason is more subtle. i want the record of what i decided and when i decided it to be evidence i control. cursor/claude assertions in my own workers is a signed history of my thinking. that graph becoming a credential someday feels closer to how professional records should have worked all along.