supermemoryai/supermemory — a trending TypeScript project
Memory and context engine + app that is extremely fast, scalable, and can be run fully locally. The Memory API for the AI era.
supermemoryai/supermemory — TypeScript · 30,008 stars · 2,629 forks · +140 today
Memory and context engine + app that is extremely fast, scalable, and can be run fully locally. The Memory API for the AI era.
State-of-the-art memory and context engine for AI.
Docs · Quickstart · Self-host · Dashboard · Discord
English · 简体中文
#1 on every major AI memory benchmark — LongMemEval, LoCoMo, and ConvoMem.
95% Recall@15 with a 99.4% context reduction · ~50ms user profiles.
Read the research →
Supermemory is the memory and context layer for AI. #1 on LongMemEval, LoCoMo, and ConvoMem — the three major benchmarks for AI memory.
We are a research lab building the engine, plugins and tools around it.
Your AI forgets everything between conversations. Supermemory fixes that.
It automatically learns from conversations, extracts facts, builds user profiles, handles knowledge updates and contradictions, forgets expired information, and delivers the right context at the right time. Full RAG, connectors, file processing — the entire context stack, one system.
| 🧠 Memory | Extracts facts from conversations. Handles temporal changes, contradictions, and automatic forgetting. |
| 👤 User Profiles | Auto-maintained user context — stable facts + recent activity. One call, ~50ms. |
| 🔍 Hybrid Search | RAG + Memory in a single query. Knowledge base docs and personalized context together. |
| 🔌 Connectors | Google Drive · Gmail · Notion · OneDrive · GitHub — auto-sync with real-time webhooks. |
| 📄 Multi-modal Extractors | PDFs, images (OCR), videos (transcription), code (AST-aware chunking). Upload and it works. |
All of this is in our single memory structure and ontology.
Use Supermemory
#🧑💻 I use AI tools#Give Claude Code, Muse Code, Cursor, Codex and OpenCode persistent memory across every conversation with a plugin or the MCP server. Your AI remembers your preferences, projects, past discussions — and gets smarter over time. |
🔧 I'm building AI products#Add memory, RAG, user profiles, and connectors to your agents and apps with a single API. No vector DB config. No embedding pipelines. No chunking strategies. |
🖥️ I want to run it myself#State-of-the-art memory, on your machine. One binary. Zero config. Bring any model — or run fully offline with Ollama.
|
|
Give your AI memory
#Plugins and the MCP server give any compatible AI assistant persistent memory. One install, and your AI remembers you.
Supermemory Plugins
#Supermemory comes built with plugins for Claude Code, Muse Code, Cursor, Codex, OpenCode, OpenClaw, and Hermes.
These plugins are implementations of the supermemory API, and they are open source!
You can find them here:
- Claude Code plugin: https://github.com/supermemoryai/claude-supermemory
- Muse Code plugin: https://github.com/supermemoryai/muse-supermemory
- Cursor plugin: https://github.com/supermemoryai/cursor-supermemory
- Codex plugin: https://github.com/supermemoryai/codex-supermemory
- OpenClaw plugin: https://github.com/supermemoryai/openclaw-supermemory
- OpenCode plugin: https://github.com/supermemoryai/opencode-supermemory
- Hermes agent (Supermemory memory provider): https://github.com/NousResearch/hermes-agent
MCP
#Server URL:
https://mcp.supermemory.ai/mcp
{
"mcpServers": {
"supermemory": {
"url": "https://mcp.supermemory.ai/mcp"
}
}
}
Read more about our MCP here - https://supermemory.ai/docs/supermemory-mcp/mcp
What your AI gets
#| Tool | What it does |
|---|---|
memory |
Save or forget information. Your AI calls this automatically when you share something worth remembering. |
recall |
Search memories by query. Returns relevant memories + your user profile summary. |
context |
Injects your full profile (preferences, recent activity) into the conversation at start. In Cursor and Claude Code, just type /context. |
How it works
#Once installed, Supermemory runs in the background:
- You talk to your AI normally. Share preferences, mention projects, discuss problems.
- Supermemory extracts and stores the important stuff. Facts, preferences, project context — not noise.
- Next conversation, your AI already knows you. It recalls what you're working on, how you like things, what you discussed before.
Memory is scoped with projects (container tags) so you can separate work and personal context, or organize by client, repo, or anything else.
Supported clients
#Claude Desktop · Cursor · Windsurf · VS Code · Claude Code · OpenCode · OpenClaw · Hermes
The MCP server is open source — view the source.
Manual configuration
#Add this to your MCP client config:
{
"mcpServers": {
"supermemory": {
"url": "https://mcp.supermemory.ai/mcp"
}
}
}
Build with Supermemory (API)
#If you're building AI agents or apps, Supermemory gives you the entire context stack through one API — memory, RAG, user profiles, connectors, and file processing.
Install
#npm install supermemory # or: pip install supermemory
Quickstart
#import Supermemory from "supermemory";
const client = new Supermemory();
// Store a conversation
await client.add({
content: "User loves TypeScript and prefers functional patterns",
containerTag: "user_123",
});
// Get user profile + relevant memories in one call
const { profile, searchResults } = await client.profile({
containerTag: "user_123",
q: "What programming style does the user prefer?",
});
// profile.static → ["Loves TypeScript", "Prefers functional patterns"]
// profile.dynamic → ["Working on API integration"]
// searchResults → Relevant memories ranked by similarity
from supermemory import Supermemory
client = Supermemory()
client.add(
content="User loves TypeScript and prefers functional patterns",
container_tag="user_123"
)
result = client.profile(container_tag="user_123", q="programming style")
print(result.profile.static) # Long-term facts
print(result.profile.dynamic) # Recent context
Supermemory automatically extracts memories, builds user profiles, and returns relevant context. No embedding pipelines, no vector DB config, no chunking strategies.
Framework integrations
#Drop-in wrappers for every major AI framework:
// Vercel AI SDK
import { withSupermemory } from "@supermemory/tools/ai-sdk";
const model = withSupermemory(openai("gpt-4o"), { containerTag: "user_123", customId: "conv-1" });
// Mastra
import { withSupermemory } from "@supermemory/tools/mastra";
const agent = new Agent(withSupermemory(config, "user-123", { mode: "full" }));
Vercel AI SDK · LangChain · LangGraph · OpenAI Agents SDK · Mastra · Agno · Claude Memory Tool · n8n
Search modes
#// Hybrid (default) — RAG + Memory in one query
const results = await client.search({
q: "how do I deploy?",
containerTag: "user_123",
searchMode: "hybrid",
});
// Returns deployment docs (RAG) + user's deploy preferences (Memory)
// Memories only
const results = await client.search({
q: "user preferences",
containerTag: "user_123",
searchMode: "memories",
});
User profiles
#Traditional memory relies on search — you need to know what to ask for. Supermemory automatically maintains a profile for every user:
const { profile } = await client.profile({ containerTag: "user_123" });
// profile.static → ["Senior engineer at Acme", "Prefers dark mode", "Uses Vim"]
// profile.dynamic → ["Working on auth migration", "Debugging rate limits"]
One call. ~50ms. Inject into your system prompt and your agent instantly knows who it's talking to.
Connectors
#Auto-sync external data into your knowledge base:
Google Drive · Gmail · Notion · OneDrive · GitHub · Web Crawler
Real-time webhooks. Documents automatically processed, chunked, and searchable.
API at a glance
#| Method | Purpose |
|---|---|
client.add() |
Store content — text, conversations, URLs, HTML |
client.profile() |
User profile + optional search in one call |
client.search() |
Hybrid search across memories and documents (searchMode) |
client.search.documents() |
Document search with metadata filters (legacy v3 response shape) |
client.documents.uploadFile() |
Upload PDFs, images, videos, code |
client.documents.list() |
List and filter documents |
client.settings.update() |
Configure memory extraction and chunking |
Full API reference → supermemory.ai/docs
Supermemory local — run it yourself
#State-of-the-art memory, on your machine. One binary. Zero config.
curl -fsSL https://supermemory.ai/install | bash
# or
npx supermemory local
supermemory-server
First boot sets up the embedded Supermemory graph engine, local embeddings, and your credentials, then prints an API key. The full Memory API — documents, memories, user profiles, hybrid search — runs against http://localhost:6767.
const client = new Supermemory({
apiKey: "sm_...",
baseURL: "http://localhost:6767", // that's the only change
});
- Bring any model — OpenAI, Anthropic, Gemini, Groq, or any OpenAI-compatible endpoint. An interactive wizard walks you through it on first boot.
- Embeddings — local
Xenova/bge-base-en-v1.5by default (no API key); optionally OpenAI, Gemini, or Ollama. Same provider stack as cloud. - Fully offline if you want — point it at Ollama (
gpt-oss:20bworks great) and nothing leaves your machine. - Your data, one directory — everything lives in
./.supermemory, easy to back up or move. - Same API as the platform — prototype locally, ship on the hosted platform by changing
baseURL.
Read the self-hosting docs — quickstart, configuration, embeddings, and local vs. Enterprise.
Benchmarks
#Supermemory is state of the art across all major AI memory benchmarks:
| Benchmark | What it measures | Result |
|---|---|---|
| LongMemEval | Long-term memory across sessions with knowledge updates | #1 |
| LoCoMo | Fact recall across extended conversations (single-hop, multi-hop, temporal, adversarial) | #1 |
| ConvoMem | Personalization and preference learning | #1 |
On LongMemEval, supermemory reaches 95% Recall@15 while adding only ~720 tokens of context — a 99.4% context reduction (99.6% at @10, 99.8% at @5). Recall by category: Knowledge Updates 99%, Assistant recall 100%, User recall 97%, Multi-session 93%, Temporal Reasoning 91%, Preference 90%.
We also built the Supermemory Filesystem (SMFS), which uses 3.0× fewer tokens on Claude (24M vs 72M) and 1.75× fewer on Codex across the 110-question xAFS benchmark. See the full write-ups on our research page.
We also built MemoryBench — an open-source framework for standardized, reproducible benchmarks of memory providers. Compare Supermemory, Mem0, Zep, and others head-to-head:
bun run src/index.ts run -p supermemory -b longmemeval -j gpt-4o -r my-run
Benchmarking your own memory solution
#We provide an Agent skill for companies to benchmark their own context and memory solutions against supermemory.
npx skills add supermemoryai/memorybench
Simply run this and do /benchmark-context - Supermemory will automatically do the work for you!
How memory works under the hood
#Your app / AI tool
↓
Supermemory
│
├── Memory Engine Extracts facts, tracks updates, resolves contradictions,
│ auto-forgets expired info
├── User Profiles Static facts + dynamic context built from engine, always fresh
├── Hybrid Search RAG + Memory in one query
├── Connectors Real-time sync from Google Drive, Gmail, Notion, GitHub...
└── File Processing PDFs, images, videos, code → searchable chunks
Memory is not RAG. RAG retrieves document chunks — stateless, same results for everyone. Memory extracts and tracks facts about users over time. It understands that "I just moved to SF" supersedes "I live in NYC." Supermemory runs both together by default, so you get knowledge base retrieval and personalized context in every query. Read more about this here - https://supermemory.ai/docs/concepts/memory-vs-rag
Automatic forgetting. Supermemory knows when memories become irrelevant. Temporary facts ("I have an exam tomorrow") expire after the date passes. Contradictions are resolved automatically. Noise never becomes permanent memory.
Links
#- 📖 Documentation
- 🚀 Quickstart
- 🖥️ Self-hosting (Supermemory local)
- 🧪 MemoryBench
- 🔌 Integrations
- 💬 Discord
- 𝕏 Twitter
Give your AI a memory. It's about time..
Content above is the README of supermemoryai/supermemory, reproduced from GitHub’s trending list. All rights remain with the original authors.
Newsletter
New posts in your inbox. Confirm by email, unsubscribe any time.
More in Web Development
View allTHU-MAIC/OpenMAIC — a trending TypeScript project
Open Multi-Agent Interactive Classroom — Get an immersive, multi-agent learning experience in just one click
via GitHub · 4 min
Orkas-AI/Orkas — a trending JavaScript project
Orkas is an open-source (MIT), local-first AI team for your desktop: a Commander turns your goal into to-dos and coordinates 16 built-in specialist agents plus Claude Code, Codex, OpenCode, OpenClaw and Hermes, with projects, scheduled automations and connectors. Free app for macOS & Windows; built-
via GitHub · 16 min
CopilotKit/OpenBot — a trending TypeScript project
Open-source AI coworkers that each get a computer of their own: a browser, files and tools, with every action decided before it happens and recorded after. Bring any AG-UI agent.
via GitHub · 4 min
milind-soni/OpenMausBot — a trending TypeScript project
Open-source Grok Bot alternative with a virtual machine that bots can use
via GitHub · 10 min
Comments
Posting as a guest