Skip to content

Why Engram

Your notes are a record of how you think. They should outlive any single app, any company, any business model — including ours. Engram is built around that conviction.

Engram is three things wrapped around your existing Obsidian vault:

  • A real-time sync backend that keeps your vault live across devices and the web.
  • A semantic search index so you can ask questions of your notes, not just grep them.
  • An MCP server so Claude, Cursor, ChatGPT, and other AI assistants can read and update your notes with your permission.

Runs as a managed cloud service or on your own hardware. The plugin, the protocol, and the release are the same on both sides. If that’s all you needed to know, head to Getting Started — the rest of this page is the why.

Three commitments shape every tradeoff. Everything else follows from them: a note tool should be portable, owned by you, and open to the AI of your choice.

The canonical copy of your knowledge is a plain-markdown Obsidian vault on disk — not a proprietary database, not a SaaS account, a folder. If Engram disappears tomorrow, your vault still opens in Obsidian, in VS Code, in cat; sync metadata is a side car that can be regenerated, and the notes themselves are never trapped behind us. That choice forces a discipline — anything Engram does on top of your vault has to round-trip cleanly back to markdown, and features that can’t respect that rule don’t ship.

Engram protects your data with industry-standard encryption in transit (TLS) and at rest (AES-256), and follows the security practices you’d expect of any product handling personal data. The features that make Engram useful — semantic search, AI memory, fast sync — need the server to read your notes, and we treat that access as a responsibility, backed by guardrails that don’t depend on you trusting us alone:

  • Never training data, never sold, never shared beyond what you explicitly connect via MCP, the API, or a sharing link.
  • Source-available under the PolyForm Small Business License. If we ever quietly betray these commitments, the diff is public.
  • The canonical copy lives on your disk, not in our database — walk away whenever you want.

Self-host is the metric that keeps us honest. The moment our promises stop matching the code, the whole stack is already in your hands — same software, same protocols, your hardware. That structural exit, not a policy page, is what backs every commitment above.

AI memory should be yours, not a vendor’s

Section titled “AI memory should be yours, not a vendor’s”

The AI you reach for today probably isn’t the one you’ll reach for in two years. Pinning your memory to whichever assistant you set up first means rebuilding it from scratch every time something better ships — and hoping that company doesn’t raise prices, kill features, or change the model out from under you.

Engram works with the AI you already use. Whether that’s Claude, Cursor, ChatGPT, or something that doesn’t exist yet, it points at the same vault and the same memory. Switch assistants whenever you want; your notes and everything built on top of them stay put. We don’t ship an “Engram AI” with our model choice baked in — the right assistant for you next year isn’t a decision we should be making for you.

A familiar story: you pick a beautiful note app and it feels great for a year — then the company pivots, raises prices, or gets acquired, and your export turns out to be a half-broken zip of HTML. You move to a cloud-only competitor that can read every note you’ve ever written, including the ones you’d never put on a billboard. AI shows up, the same vendor announces “AI features,” and your notes quietly become training data, retention data, or both. You decide to self-host something instead — and the export still loses links, attachments, or formatting, so you start over in plain markdown anyway.

We’ve all lived parts of that loop. Engram exists to make the next trip through it the last one.

A useful way to describe a product is what it refuses to do. Engram will not:

  • Use your notes as training data — not for our models, not for any vendor’s, not as part of any business model we ever ship.
  • Ship a proprietary AI assistant that only works against Engram.
  • Lock your vault into a format only we can read.
  • Charge you to access notes you’ve already written. Storage and retrieval are not the meter.
  • Quietly change these commitments. If any of them shift, you’ll see it in the changelog and a versioned license update — not a blog post.

Engram’s backend is source-available under the PolyForm Small Business License 1.0.0. You can read every line that touches your data, run the whole stack yourself, and fork it for personal or small-business use without paying us a cent. PolyForm SBL (rather than MIT or AGPL) is a deliberate middle path: maximum transparency for you, with a clause that stops a hyperscaler from reselling our work as their own managed service.

The bet: a private, portable, open-protocol note tool is more valuable to its users than a slightly cheaper closed one is to a competitor’s quarterly revenue. We’d like to be wrong about how few companies agree with that, but here we are.

The team’s daily-driver stack is a pile of self-hosted, open-source tools — Postgres, Caddy, Tailscale, a NAS humming in the corner, Linux boxes running the services we’d be furious to lose to a SaaS pivot. Engram exists because the notes tool that belonged in that stack didn’t exist yet, so we built it.

That shapes how the product is put together. Self-host isn’t a sales checkbox tacked onto a cloud product — it’s the same code, the same protocols, the same release. There is no crippled open-source build, no features paywalled into the cloud tier, no telemetry phone-home you have to disable. We run our own instance the way you’d run yours: docker compose up, point a vault at it, done. When the hosted version gets a feature, the self-host build gets it in the same commit.

That alignment is structural rather than marketing. If we ever stop treating the self-host build as the canonical one, the commits stop matching, and the diff is public. Until then, every line we ship has to survive the people on the team who run it on their own hardware — which means we don’t ship lines that wouldn’t.