A self-hosted personal memory layer for AI agents — built on SQLite or Postgres, on-device embeddings and MCP.
Runs 100% local by default. No API keys. No cloud dependency. Your data never leaves your machine.
You are a software developer? ✦ Try Aperio-dev — basic terminal comfort is required.
You are a normal human? ✦ Try Aperio-lite — double-click and go, no tech skills needed.
Built for developers who want AI that actually knows them. Without giving up their data or their infrastructure.
Your memories survive every conversation, every tool, every session. 9 structured types keep things organized — facts, preferences, decisions, solutions and more. Three sensitivity tiers keep your private data safe: tier 1 shared as-is, tier 2 PII-redacted on cloud, tier 3 never leaves your machine.
The AI keeps its own private notebook — walled off from your memories. It learns what works, remembers your style, and carries its own observations across every session.
Powered by on-device embeddings (mxbai-embed-large) over sqlite-vec or pgvector. Ask about your projects and get results matched by meaning, not keywords. Voyage AI optional.
One brain shared across every agent. Claude, Cursor, Windsurf — all connect to the same Postgres database through the MCP protocol.
Responses stream token by token via WebSocket. Live code rendering, markdown on completion, smart auto-scroll. No waiting.
Runs fully on your machine with llama.cpp — free, private, offline-capable. Switch to Claude with one env variable when you need more power.
Background job finds near-duplicate memories every 10 minutes using cosine similarity. Dry-run by default — you stay in control.
Native support for thinking models like qwen3, gemma4 and llama3 — and cloud models reason out of the box. A collapsible reasoning bubble shows the model's thought process live. Toggle it on or off anytime.
Toggle Discuss and two agents cross-review each other until they agree. Domain characters give each a different perspective.
learn more...Connect SQLite, Postgres or MySQL and ask in plain English. Aperio writes the SQL — reads run instantly, and any change to your data asks you to confirm first.
learn more...Since you own the database, Aperio scales from personal to shared team brain with two changes — update the system prompt and seed team memories. One brain for the whole team.
One database. One MCP server. Two AI providers. Your brain is just a Postgres table with vectors.
Each one is available to any MCP-compatible agent (Claude, Cursor, Windsurf).
Aperio is a foundation, not a finished product. The source is fully open — fork it, extend it, repurpose it.
Here's what you can build on top.
The schema is yours to extend. Add new memory types, extra metadata columns, TTL logic, or per-project namespacing. Postgres gives you full flexibility.
Adding a tool is just a new entry in mcp/index.js. Expose calendar access, email drafting, browser control — any action you want your agents to take.
mxbai-embed-large runs on-device via transformers by default — zero external calls. Swap in Voyage AI for higher quality, or drop in OpenAI, Cohere, or any provider with a vectors API.
The web interface is a standalone HTML file with WebSocket. Rip it out and build a VS Code extension, a mobile app, a CLI, a Chrome sidebar — the server API stays the same.
Query your own memory graph. Build dashboards showing what topics you think about most, decision patterns over time, knowledge gaps, or memory growth by week.
Since you own the database, Aperio scales from personal to team brain with two changes: update the system prompt to team context, seed team memories in 001_init.sql.
Run multiple specialized agents that all share one brain. A research agent stores findings, a coding agent reads context, a writing agent pulls preferences — all from the same database.
Scheduled, autonomous agents that run without a chat turn. Define jobs in the database, set interval or file-watcher triggers, and let them handle deduplication, wiki refresh, code indexing — silently, in the background.
Commercial memory services are great products.
Aperio is a different choice — self-hosted, open source, fully customizable.
| Feature | ✦ Aperio | Cloud Services |
|---|---|---|
| Data ownership | ✅ 100% yours — own Postgres | ✗ Vendor's servers |
| Monthly cost | ✅ Free (self-hosted) | ✗ $20–100 / month |
| Local AI support | ✅ llama.cpp built-in | ✗ Cloud only |
| File system tools | ✅ read · write · append | ✗ Not available |
| Full source access | ✅ Open source — fork it | ✗ Closed API |
| MCP integration | ✅ Native protocol | ⚠ Varies |
| Works offline | ✅ With llama.cpp | ✗ Requires internet |
| Non-developer friendly | ✅ Aperio-lite — double-click & go | ✗ Requires dev setup |
| Team memory | ✅ Shared DB — one brain for the team | ⚠ Varies by plan |
Local AI · persistent memory · streaming responses · 4 themes.
Three ways in — pick your comfort level. Everything runs 100% local by default: no API keys, no cloud.
The fastest path to your own private AI.
Runs 100% on your machine. No Money. No Cloud. No register your email here and there.
Download → unzip → double-click. That's it.
START.sh is right at the top level (the how-to folder holds a printable guide)START.sh → right-click → Make AliasAperiohttp://localhost:31337START.bat is right at the top level (the how-to folder holds a printable guide)START.bat → right-click → RenameAperio.bathttp://localhost:31337START.sh is right at the top level (the how-to folder holds a printable guide)START.sh → right-click → Properties → PermissionsSTART.sh → Copy to Desktop → rename to Aperiohttp://localhost:31337aperio-lite folder.unzip aperio-lite.zip -d ~/aperio-litegit pull in the folder) — it fast-forwards to the latest release and keeps your memory database. No re-download.bash START.shSelf-hosted. Takes 5 minutes.