by sachitrafa
Agentic AI memory with Ebbinghaus forgetting curve decay. +16pp better recall than Mem0 on LoCoMo.
# Add to your Claude Code skills
git clone https://github.com/sachitrafa/YourMemoryLast scanned: 6/9/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-06-09T07:48:50.329Z",
"npmAuditRan": true,
"pipAuditRan": false
}YourMemory is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by sachitrafa. Agentic AI memory with Ebbinghaus forgetting curve decay. +16pp better recall than Mem0 on LoCoMo. It has 244 GitHub stars.
Yes. YourMemory passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/sachitrafa/YourMemory" and add it to your Claude Code skills directory (see the Installation section above).
YourMemory is primarily written in Python. It is open-source under sachitrafa on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh YourMemory against similar tools.
No comments yet. Be the first to share your thoughts!
Persistent memory for AI agents — built on the science of how humans remember.
Every session, your AI assistant starts from zero. It asks the same questions, forgets your preferences, re-learns your stack. There is no memory between conversations.
YourMemory fixes that with a one-command install that plugs into Claude, Cursor, Cline, Windsurf, or any MCP client. It gives your AI a persistent memory layer modelled on human cognition:
Zero infrastructure required. SQLite by default, Postgres for teams.
Three external datasets, all scripts open source and reproducible. Full methodology in BENCHMARKS.md.
The hardest standard benchmark for long-term memory systems. Each question is backed by ~53 conversation sessions; the model must retrieve the right one(s) from the haystack.
| Metric | Score |
|---|---|
| Recall@5 (any gold session in top-5) | 89.4% |
| Recall-all@5 (all gold sessions in top-5) | 84.8% |
| nDCG@5 (ranking quality) | 87.4% |
By question type (Recall@5):
| Question Type | Recall@5 | n |
|---|---|---|
| single-session-assistant | 98.2% | 56 |
| knowledge-update | 96.2% | 78 |
| multi-session | 95.5% | 133 |
| single-session-preference | 90.0% | 30 |
| temporal-reasoning | 84.2% | 133 |
| single-session-user | 72.9% | 70 |
Conversations spanning weeks to months. Every system ingests the same session summaries in the same order.
| System | Recall@5 | 95% CI |
|---|---|---|
| YourMemory (BM25 + vector + graph + decay) | 59% | 56–61% |
| Zep Cloud | 28% | 26–30% |
| Supermemory | 31%* | 28–33% |
| Mem0 | 18%* | 16–20% |
2× better recall than Zep Cloud across all 10 samples. * Supermemory and Mem0 exhausted free-tier quotas mid-benchmark; scores computed over full 1,534 pairs using 0 for unfinished samples.
| System | BOTH_FOUND@5 |
|---|---|
| YourMemory (vector + BM25 + entity graph) | 71.5% |
| YourMemory (no entity edges) | 59.5% |
Entity graph edges add +12 pp — they traverse from Fact 1 to Fact 2 even when Fact 2 has low embedding similarity to the query.
Writeup: I built memory decay for AI agents using the Ebbinghaus forgetting curve
Supports Python 3.11–3.14. No Docker, no database setup. All memory stored locally in ~/.yourmemory/.
| Behavior | Detail |
|---|---|
| Activation | Requires a one-time token. Visit yourmemoryai.xyz, enter your email, verify with a 6-digit code, and copy your token. |
| Global rule injection | yourmemory-setup writes memory instructions into ~/.cursor/rules/memory.mdc and other detected AI client config files (Claude, VS Code, etc.) so the assistant can call memory tools automatically. You can remove these files at any time. |
| MCP tool behavior | The recall_memory tool can be called by your AI assistant when persistent context would help. The assistant decides when to call it based on the request. |
| Telemetry | A UUID (no personal data) is sent on first setup only. Opt out: YOURMEMORY_TELEMETRY=off |
Activation steps:
pip install yourmemory
yourmemory-register <your-token>
yourmemory-setup
Two built-in browser UIs — no extra setup, start automatically with the MCP server.
http://localhost:3033/uiA full read/write view of everything stored in memory.
| What you see | Details |
|---|---|
| Stats bar | Total · Strong ≥50% · Fading 5–50% · Near prune <10% |
| Agent tabs | All / User / per-agent views |
| Memory cards | Content · strength bar · category · recall count · last accessed |
| Filters | Category (fact / strategy / assumption / failure) · Sort by strength, recency, recall |
Pass ?user=<id> to pre-load a specific user: http://localhost:3033/ui?user=sachit
http://localhost:3033/graphAn interactive force-directed map of how memories connect.
http://localhost:3033/graph?memoryId=42&userId=sachit&depth=2
The only memory system that can answer questions without making any LLM API call.
yourmemory ask "what database does this project use"
# → YourMemory uses DuckDB locally and Postgres in production.
yourmemory ask "what port does the dashboard run on"
# → 3033
yourmemory ask "how do I fix a kubernetes deployment"
# → Not enough memory context to answer without Claude.
When memory is strong enough, it answers instantly — zero tokens, zero cloud cost, zero latency. When it isn't, it declines cleanly rather than hallucinating.
| Query | Mem0 / Zep / LangMem | YourMemory |
|---|---|---|
| "What port does the server run on?" | Full LLM API call | Instant, $0 |
| "What database does this project use?" | Full LLM API call | Instant, $0 |
| "How do I fix a k8s deployment?" | Full LLM API call | Declines → Claude |
| Privacy | Query sent to cloud | Never leaves your machine |
MCP tools are called at the AI's discretion. The API proxy removes that uncertainty — it intercepts every LLM call, injects relevant memories automatically, and handles store_memory / update_memory without any model configuration.
Start the YourMemory server (yourmemory), then point your LLM client at localhost:3033:
from openai import OpenAI
client = OpenAI(
api_key="sk-...",
base_url="http://localhost:3033/proxy/openai"
)
# Memory is injected automatically — no other changes needed
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "What database do I use?"}]
)
from anthropic import Anthropic
client = Anthropic(
api_key="sk-ant-...",
base_url="http://localhost:3033/proxy/anthropic"
)
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "What database do I use?"}]
)
Pass X-YourMemory-User to isolate memory per person:
client = OpenAI(
api_key="sk-...",
base_url="http://localhost:3033/proxy/openai",
default_headers={"X-YourMemory-User": "sachit"}
)
On every request the proxy:
store_memory and update_memory as tools — the model calls them when it learns something new