YourMemory gives any AI assistant persistent, intelligent memory across sessions — with biologically-inspired decay that forgets the right things at the right time.
89.4%
Recall@5 on LongMemEval
−84%
Token waste at 30 sessions
7
MCP clients supported
2 cmds
To full setup
Simple by design
Three steps. Your AI agent learns, remembers, and naturally forgets what it no longer needs.
Two commands configure everything — language model, database, and MCP config for every AI client on your machine.
$ pip install yourmemory
$ yourmemory-setup
Your AI agent automatically stores preferences, project decisions, and recurring context — no manual tagging or configuration needed.
✓ "Sachit uses Python, not JS"
✓ "Postgres in prod, DuckDB local"
✓ "Prefers BM25 hybrid retrieval"
The Ebbinghaus forgetting curve prunes stale context automatically. Important memories persist; irrelevant ones fade. Graph connections keep clusters alive together.
~ "Uses React" → 0.04 (decaying)
✗ "Uses React" pruned at <0.05
↻ Graph cluster kept alive
Under the hood
Vector search finds what you asked for. The graph finds what you forgot to ask for. Ebbinghaus decides what survives.
Different memory types age at different rates. Important facts persist longer; transient context fades naturally. Related memories stay alive together through graph propagation.
Two-round retrieval: semantic search surfaces exact matches, then a graph traversal finds related memories that don't share vocabulary with the query. Nothing slips through.
Multiple AI agents share context or keep secrets. Each agent gets a ym_ API key. Shared memories visible to all; private memories visible only to the owner.
Live — memory strength over time
Memory dashboard
Visual UI at localhost:3033/ui — decay bars, graph view, per-agent tabs
Ask YourMemory
Query memory directly from the terminal — no Claude API call needed
Auto memory rules
yourmemory-setup injects optimal recall/store logic into your agent's global context
Zero background process
Runs as an MCP server — starts on demand, no daemon to manage
Measured, not claimed
Evaluated on three public datasets. All numbers independently reproducible — benchmark code in the repo.
89.4%
Recall@5 on LongMemEval
Evaluated on 500 long-horizon Q&A tasks from the official LongMemEval benchmark. Storage + retrieval pipeline tested end-to-end.
All benchmarks reproducible — see /benchmarks in the repo
Dead simple
Install, run setup. spaCy model, database, and client configs are handled automatically.
$ pip install yourmemory
$ yourmemory-setup
✓ Language model ready
✓ Database initialised
✓ Claude Code → ~/.claude/settings.json
✓ Claude Desktop → auto-detected if installed
✓ Cursor / Windsurf / Cline → auto-detected if installed
✓ Memory rules → injected into global agent context
Restart your AI client after setup. YourMemory starts automatically as an MCP server — no background process to manage.
Works with
PostgreSQL (optional — teams / large datasets)
$ pip install yourmemory[postgres]
DATABASE_URL=postgresql://YOUR_USER@localhost:5432/yourmemory
Backend selected automatically from the connection string — no additional config required.
Questions
Most memory systems store flat vectors and never forget. YourMemory adds three things on top: Ebbinghaus decay by category (different memory types age at different rates), graph-based retrieval that surfaces related memories the query didn't directly match, and automatic pruning so stale facts never pollute your context. Built-in Claude memory is cloud-only and limited; YourMemory runs fully locally with no data leaving your machine.
No. YourMemory runs entirely on your local machine. Embeddings are generated with a local spaCy model (no API calls), and all storage is in a local DuckDB file by default. Nothing is sent to external servers. For teams using PostgreSQL, the database is wherever you host it — still under your control.
The Ebbinghaus forgetting curve models how human memory fades over time — fast at first, then slower. YourMemory applies this to each stored memory with a strength score S(t) = e^(−λt), where λ depends on the memory's category. Strategies decay slowly (~38 day half-life), facts moderately (~24 days), failures quickly (~11 days). When strength drops below 0.05, the memory is pruned from retrieval. Recalling a memory refreshes its strength — so frequently used context stays alive automatically.
Yes. yourmemory-setup automatically detects and configures every MCP-compatible client on your machine: Claude Code, Claude Desktop, Cursor, Windsurf, Cline, Continue, and Zed. It writes the correct MCP server config for each one. After a client restart, YourMemory is available as a tool in all of them simultaneously.
Yes. Register each agent with register_agent() to get a ym_ API key. Memories marked shared are visible to all agents; memories marked private are only visible to the storing agent. Useful for setups where a coding agent and a review agent should share project context but keep credentials separate.
Not currently — YourMemory is fully local/self-hostable by design. For team deployments, use the PostgreSQL + pgvector backend with your own Postgres instance (Fly.io, Railway, Supabase, etc.). A managed cloud option may come later.
Non-commercial license (CC BY-NC 4.0). Free for personal use, research, and open source projects. For commercial use or team deployments, reach out.
Read the thinking behind it
A deep dive into the architecture — why flat vector search isn't enough and how Ebbinghaus decay + graph traversal changes retrieval quality.
The original writeup — the forgetting curve formula, category-based decay rates, and why importance modulates λ instead of just being a filter.
Community discussion — the architecture, tradeoffs, and why Ebbinghaus decay outperforms flat vector stores.
Launch post — the story behind building a memory layer that works like human memory, and the benchmark results from the public LoCoMo dataset.
Coverage of how YourMemory applies the Ebbinghaus forgetting curve to AI agent memory — making context decay naturally so only relevant knowledge survives.
Your team accumulates deep knowledge every day — customer quirks, solved problems, architectural decisions. Right now it evaporates when the session closes. Enterprise gives it a permanent home.
Engineer A spends 2 hours debugging a customer's edge case. Session closes. Knowledge gone.
Engineer B picks up the same customer next week. Starts from scratch. Same 2 hours.
Every architectural decision your team made lives in someone's head — until they leave.
Engineer A solves the edge case. Memory persists, shared with the org. Fades only if it stops being relevant.
Engineer B opens a session. The solution surfaces automatically. Problem solved in minutes.
Every decision, every pattern, every customer quirk — lives in the shared org memory, not someone's head.
Shared memories surface automatically across every team member's session. What one engineer learns, the whole team benefits from — instantly.
Mark any memory private and it stays yours alone. Sensitive context, personal notes, draft decisions — never visible to colleagues or admins.
One dashboard to see every team member's memories. Search, filter, and delete anything. Full visibility and control over your org's knowledge base.
Shared memories propagate across the team. Private memories stay isolated.
Enterprise is distributed as a private build. Reach out to get started.
Talk to us about a pilotFree, open source, runs entirely on your machine. No API key needed. No data leaves your system.
$ pip install yourmemory && yourmemory-setup