Developers
Build on memory
that you don't own.
Your user's. It lives on their machine, it's encrypted, and they govern it — including against you. That's the constraint, and it's what makes everything else possible.
Your own code
Point it at your project. It takes on its memory.
Declare your repo folder: Mnemosyne vectorizes your code — the files, the docs, your working conversations — and doesn't stop at search. Its consolidation turns it into a synthesized memory of the project: its architecture, the decisions you made, and why.
It's not a search engine handing you a line. You ask "why did we choose this?" and you get the synthesis — across months of work, without the right keyword. All local: your code never leaves your machine.
The rule
Three surfaces. They're not interchangeable.
Different transports, different manifests, different libraries. The routing rule fits in two lines, and it's the first thing to read:
Do you draw pixels inside Mnemosyne? → Cartridge.
Are you a separate process? → App Layer 2 — or MCP if the caller is an AI agent.
I
Cartridge
@mnemosyne_os/cartridge-sdk 0.1.0
You draw pixels INSIDE Mnemosyne.
An isolated iframe that talks to the OS over postMessage. It's the only distributable surface on MnemoHub. No Node or Electron access: 86 host actions, 5 of them open without permission.
The cartridge SDK is NOT @mnemosyne_os/sdk. Installing the wrong package is mistake #1.
II
App Layer 2
@mnemosyne_os/sdk 1.4.1
Your app is a separate process.
WebSocket JSON-RPC on 127.0.0.1:7799, one JWT per app, an allowlist of origins. You declare a manifest, the user grants the rights in a real system window, and you query the memory.
The OS must be running. Remote web pages are refused, by design.
III
MCP
@mnemosyne_os/mcp 1.2.0
Your caller is an AI agent.
Claude Code, Claude Desktop, Cursor. A thin client on the same 7799, eight tools: query, ask, ingest, vaults, resonances, dream bridges, position, git log. Zero lines of code to write.
Same constraint: the Infinity app must be open.
Get started
The shortest path, by surface.
MCP — zero lines of code
Infinity open, Node 18+, then in your project's .mcp.json:
{ "mcpServers": { "mnemosyne": {
"command": "npx",
"args": ["-y", "@mnemosyne_os/mcp"],
"env": { "MNEMO_DEFAULT_VAULT": "DEV" }
} } } App Layer 2
pnpm add @mnemosyne_os/sdk import { MnemoClientBrowser } from '@mnemosyne_os/sdk';
const client = await MnemoClientBrowser.connect(); // 127.0.0.1:7799
await client.register(MANIFEST); // the user grants, or refuses
await client.ingest('A note to remember', 'NOTE', 'DEV');
const chronicles = await client.query('my search', 'DEV', 10); Cartridge
Copy apps/mnemo-cartridge-boilerplate/, replace the
workspace:* dependency with the npm version, then:
pnpm add @mnemosyne_os/cartridge-sdk
pnpm dev # vite, 127.0.0.1:5185
pnpm build # tsc && vite build -> dist/ In the app: MnemoHub → My dev apps → link your folder. The first link is free; the second requires an active Engramm license — better you learn it here than in the middle of your integration.
The pact
Your app has exactly one vault. And it can't get out of it.
One vault per app, derived by the server, isolated from federated search, invisible to the neural map and the dream state. Your app can't widen its own walls: opening permanence is an operation the network can't reach — only the user, in their vault manager, can.
It's not a policy, it's a transport asymmetry. You can propose. You can't carve. If that sounds harsh: it's exactly what makes your user agree to install your app.
The three traps that cost you an evening
Silent
vault:write is load-bearing, and its absence says nothing.
Without it declared in your manifest, ensureSandbox() is
refused with no visible error — you simply never get a vault. The
boilerplate doesn't declare it.
Irreversible
Renaming your app orphans its vault. Ownership is indexed on the manifest
name: the next ensure creates a fresh vault and
abandons the old one. No migration exists.
Good to know
The vault only exists on first launch, never at install.
And all cartridges share one origin: put no secret in
localStorage.
Soon · the creator economy
An economy where the creator keeps the biggest share.
When the store economy opens, the rule will be simple and public: the developer keeps 80% of every sale, the hub takes 15%, and 5% funds a community DAO that gives back to the ecosystem's development. No hidden cut, no terms that shift.
80% developer · 15% hub · 5% community DAO
The rest — how it works, when it opens — is coming. Leave your email and be first to know. Zero spam, just the announcement.
Open-core
The SDK is open. The core is sealed. And it has a date.
Let's say it the right way round: the packages you build with — SDK, MCP, cartridge SDK — are MIT, published, readable. The cognitive engine, though, is proprietary and shipped sealed. The keys, the anti-piracy and the legal stay private.
What that means for you, concretely: you never need the core to write an app. The SDK is the boundary, and it's stable.
And the sealed part doesn't stay that way forever: its license flips automatically to MIT on January 1st, 2030. It's written in the license file, not in a blog post.
"The license is a key, not a lock."
Editing the JSON by hand bypasses the quota. We know, it's accepted, and it's the open-core stance we own: we don't fight you.
The contract
Memory perceives, situates and reveals.
The human governs.
For you, developer, it comes down to one sentence: your app can propose, the user decides. It erases nothing in silence, it mixes nothing without a human gesture, and it leaves its vault only if invited. Build with that, not against it.
How do you build?
The developer offer
Claim your free license, and code your first cartridge.
Building on Mnemosyne OS? We don't want your money, we want your feedback. Download the OS, request your founder license — free, and we'll add $5 in cloud credits so you can test right away, without even plugging in your API key.
1
Download the OS
Free, right now. Windows, macOS or Linux — the full OS, local.
2
Request your free license
Manual airdrop — count a few days. It unlocks the reserved features and cartridges, for life, and comes with $5 in cloud credits to try without an API key.
3
Scaffold your first cartridge
One command, and you're already querying the vault under FGAC.
npm create @mnemosyne_os/app Or in vibe-coding — paste this prompt to your assistant:
Prompt Build a Mnemosyne OS cartridge: [describe your app]. Before coding, read thellms.txtat the root of github.com/yaka0007/Mnemosyne-Neural-OS, then clone a reference MIT cartridge (MnemoReader) and read itssrc/. Use@mnemosyne_os/sdkto ingest and query the vault under FGAC — follow the reference's patterns, don't guess the API.