Supermemory — движок памяти и контекста для AI: №1 в бенчмарках LongMemEval, LoCoMo и ConvoMem
📂 Исходный код на GitHubДвижок памяти и контекста для AI: автоматически извлекает факты из разговоров, строит профили пользователей за ~50 мс, разрешает противоречия и забывает устаревшую информацию. Гибридный поиск (RAG + память), коннекторы к Google Drive, Gmail, Notion и GitHub, плагины и MCP-сервер для Claude Code, Cursor, Codex и OpenCode. №1 на бенчмарках LongMemEval, LoCoMo и ConvoMem — 95% Recall@15 при сокращении контекста на 99,4%. Локальный запуск одним бинарником, полностью офлайн с Ollama. MIT.
Представьте ассистента, который каждое утро просыпается с чистой памятью: вчера вы объяснили ему, что предпочитаете функциональный стиль и не любите лишние абстракции, а сегодня он снова спрашивает «а какой у нас тут стек?». Именно так живёт большинство AI-инструментов без слоя памяти. Supermemory — проект исследовательской лаборатории, который призван это исправить: он автоматически извлекает факты из разговоров, ведёт профили пользователей, отслеживает изменения знаний, разрешает противоречия и подсовывает модели нужный контекст в нужный момент.
При этом Supermemory позиционирует себя не просто как «векторная база для чата», а как полный контекстный стек: память, RAG, пользовательские профили, коннекторы к внешним сервисам и обработка файлов — всё через один API. Амбиции подтверждаются цифрами из README: Supermemory занимает первое место на трёх основных бенчмарках AI-памяти — LongMemEval, LoCoMo и ConvoMem, достигая 95% Recall@15 при добавлении всего ~720 токенов контекста (сокращение объёма контекста на 99,4%).
Что умеет Supermemory
Ядро проекта — единая структура памяти с онтологией, поверх которой работают пять компонентов:
- Memory — извлекает факты из разговоров, обрабатывает временные изменения и противоречия, автоматически «забывает» устаревшую информацию.
- User Profiles — автоматически поддерживает контекст пользователя: стабильные факты плюс недавняя активность. Один вызов, около 50 мс.
- Hybrid Search — RAG и память в одном запросе: документы из базы знаний и персонализированный контекст возвращаются вместе.
- Connectors — автосинхронизация с Google Drive, Gmail, Notion, OneDrive и GitHub через вебхуки в реальном времени.
- Multi-modal Extractors — обработка PDF, изображений (OCR), видео (транскрипция) и кода (чанкинг с учётом AST).
Отдельно стоит подчеркнуть «автоматическое забывание»: временные факты вроде «завтра экзамен» теряют силу после наступления даты, противоречия разрешаются сами, а шум не превращается в постоянную память. Это принципиальное отличие от наивных хранилищ, которые только накапливают.
Память для кодинг-агентов: плагины и MCP
Самый близкий разработчикам сценарий — добавить постоянную память в AI-инструменты. Supermemory поставляется с готовыми плагинами для Claude Code, Cursor, Codex, OpenCode, OpenClaw и Hermes. Все плагины — это open source реализации API Supermemory:
- Claude Code: github.com/supermemoryai/claude-supermemory
- Cursor: github.com/supermemoryai/cursor-supermemory
- Codex: github.com/supermemoryai/codex-supermemory
- OpenClaw: github.com/supermemoryai/openclaw-supermemory
- OpenCode: github.com/supermemoryai/opencode-supermemory
- Hermes-агент (Supermemory как провайдер памяти): github.com/NousResearch/hermes-agent
Альтернатива плагинам — MCP-сервер. Он публично доступен по адресу https://mcp.supermemory.ai/mcp и подключается стандартной конфигурацией:
{
"mcpServers": {
"supermemory": {
"url": "https://mcp.supermemory.ai/mcp"
}
}
}
Поддерживаются Claude Desktop, Cursor, Windsurf, VS Code, Claude Code, OpenCode, OpenClaw и Hermes.
После установки ассистент получает три инструмента:
| Инструмент | Что делает |
|---|---|
memory |
Сохраняет или удаляет информацию. Вызывается автоматически, когда вы делитесь чем-то, что стоит запомнить. |
recall |
Ищет по памяти по запросу. Возвращает релевантные воспоминания плюс сводку профиля пользователя. |
context |
Подставляет полный профиль (предпочтения, недавнюю активность) в начало разговора. В Cursor и Claude Code — команда /context. |
Работает это незаметно: вы общаетесь как обычно, Supermemory в фоне извлекает и сохраняет важное — факты, предпочтения, контекст проектов, — а уже в следующей сессии ассистент знает, над чем вы работаете и как любите, чтобы всё было устроено. Память разделяется по проектам (container tags), так что рабочий и личный контекст, разные клиенты и репозитории можно держать отдельно.
Единый API для разработчиков
Если вы строите собственные AI-продукты, Supermemory отдаёт весь контекстный стек через один API — без настройки векторных баз, embedding-пайплайнов и стратегий чанкинга. SDK ставятся из npm или pip:
npm install supermemory # или: pip install supermemory
Минимальный пример на TypeScript:
import Supermemory from "supermemory";
const client = new Supermemory();
// Сохраняем факт из разговора
await client.add({
content: "User loves TypeScript and prefers functional patterns",
containerTag: "user_123",
});
// Профиль + релевантные воспоминания одним вызовом
const { profile, searchResults } = await client.profile({
containerTag: "user_123",
q: "What programming style does the user prefer?",
});
// profile.static → [ S5 , S6 ]
// profile.dynamic → [ S7 ]
// searchResults → воспоминания, отранжированные по схожести
Есть и Python-SDK с тем же набором возможностей. Основные методы API:
| Метод | Назначение |
|---|---|
client.add() |
Сохранить контент — текст, диалоги, URL, HTML |
client.profile() |
Профиль пользователя + опциональный поиск одним вызовом |
client.search() |
Гибридный поиск по памяти и документам (searchMode) |
client.search.documents() |
Поиск по документам с фильтрами по метаданным (legacy-формат ответа v3) |
client.documents.uploadFile() |
Загрузка PDF, изображений, видео, кода |
client.documents.list() |
Список и фильтрация документов |
client.settings.update() |
Настройка извлечения памяти и чанкинга |
Режим поиска переключается одним параметром: hybrid (по умолчанию) объединяет RAG и память — на запрос «how do I deploy?» вы получите и документацию по деплою из базы знаний, и предпочтения конкретного пользователя; memories ищет только по памяти.
Для интеграции с популярными фреймворками есть готовые обёртки: Vercel AI SDK, LangChain, LangGraph, OpenAI Agents SDK, Mastra, Agno, Claude Memory Tool и n8n. Например, обёртка для Vercel AI SDK выглядит так:
import { withSupermemory } from "@supermemory/tools/ai-sdk";
const model = withSupermemory(openai("gpt-4o"), { containerTag: "user_123", customId: "conv-1" });
Профили вместо поиска
Традиционная память опирается на поиск: чтобы что-то вспомнить, нужно знать, о чём спрашивать. Supermemory идёт другим путём — для каждого пользователя автоматически ведётся профиль:
const { profile } = await client.profile({ containerTag: "user_123" });
// profile.static → [ S1 , S2 , S3 ]
// profile.dynamic → [ S4 , S5 ]
static — это долгосрочные стабильные факты, dynamic — текущий контекст. Один вызов, около 50 мс: подставляете результат в системный промпт — и агент сразу знает, с кем разговаривает, без единого поискового запроса.
Supermemory local: запускаем сами
Для тех, кто не хочет отправлять данные в облако, есть Supermemory local — один бинарник без конфигурации:
curl -fsSL https://supermemory.ai/install | bash
# или
npx supermemory local
При первом запуске мастер настройки подключает встроенный графовый движок Supermemory, локальные эмбеддинги и выдаёт API-ключ. Полный Memory API — документы, память, профили, гибридный поиск — поднимается на http://localhost:6767:
const client = new Supermemory({
apiKey: "sm_...",
baseURL: "http://localhost:6767", // единственное изменение
});
Ключевые особенности локального режима:
- Любая модель — OpenAI, Anthropic, Gemini, Groq или любой OpenAI-совместимый эндпоинт; интерактивный мастер проведёт через настройку.
- Эмбеддинги — локальная модель
Xenova/bge-base-en-v1.5по умолчанию (без API-ключа); опционально OpenAI, Gemini или Ollama. - Полный офлайн — направьте движок на Ollama (авторы рекомендуют
gpt-oss:20b), и ничего не покинет вашу машину. - Данные в одной директории — всё живёт в
./.supermemory, легко бэкапить и переносить. - Тот же API, что и в облаке — прототипируйте локально, выкатывайте на платформу, поменяв только
baseURL.
Подробности — в документации по self-hosting.
Бенчмарки: цифры вместо обещаний
| Бенчмарк | Что измеряет | Результат |
|---|---|---|
| LongMemEval | Долгосрочная память между сессиями с обновлением знаний | #1 |
| LoCoMo | Припоминание фактов в длинных диалогах (single-hop, multi-hop, темпоральные, адверсариальные вопросы) | #1 |
| ConvoMem | Персонализация и обучение предпочтениям | #1 |
На LongMemEval система достигает 95% Recall@15, добавляя лишь ~720 токенов контекста — сокращение на 99,4% (99,6% при @10, 99,8% при @5). По категориям: Knowledge Updates 99%, Assistant recall 100%, User recall 97%, Multi-session 93%, Temporal Reasoning 91%, Preference 90%.
Кроме того, команда построила Supermemory Filesystem (SMFS), которая на бенчмарке xAFS (110 вопросов) тратит в 3,0 раза меньше токенов на Claude (24M против 72M) и в 1,75 раза меньше на Codex. Для воспроизводимых сравнений memory-провайдеров выпущен открытый MemoryBench — фреймворк, позволяющий сравнивать Supermemory, Mem0, Zep и других лоб в лоб:
bun run src/index.ts run -p supermemory -b longmemeval -j gpt-4o -r my-run
Есть даже агентский скилл для бенчмаркинга собственного решения против Supermemory: npx skills add supermemoryai/memorybench, после чего достаточно выполнить /benchmark-context.
Память — это не RAG
Авторы отдельно подчёркивают концептуальное различие. RAG извлекает чанки документов — он безжизненно одинаков для всех пользователей. Память извлекает и отслеживает факты о пользователе во времени: система понимает, что «я только что переехал в SF» отменяет «я живу в NYC». Supermemory по умолчанию запускает оба механизма вместе, поэтому каждый запрос возвращает и результаты из базы знаний, и персонализированный контекст.
Архитектуру удобно представить так:
Ваше приложение / AI-инструмент
↓
Supermemory
│
├── Memory Engine Извлекает факты, отслеживает обновления, разрешает
│ противоречия, автоматически забывает устаревшее
├── User Profiles Статичные факты + динамичный контекст, всегда свежие
├── Hybrid Search RAG + память в одном запросе
├── Connectors Синхронизация с Google Drive, Gmail, Notion, GitHub...
└── File Processing PDF, изображения, видео, код → поисковые чанки
Технологии и лицензия
Проект написан на TypeScript (в стеке, судя по тегам репозитория, — Cloudflare Workers, Postgres, Drizzle ORM, Remix, Vite), распространяется под лицензией MIT и является одним из самых популярных проектов в нише: около 30 тысяч звёзд на GitHub. SDK опубликованы в npm и PyPI, документация живёт на supermemory.ai/docs, а сообщество собирается в Discord.
Если коротко: Supermemory — это попытка сделать для AI-агентов то, что Session persistence сделал для веба — слой, без которого «умный» ассистент обречён каждый день начинать с чистого листа. Причём попытка, которая подкреплена бенчмарками, работает и в облаке, и локально, и подключается к Claude Code с OpenCode в одну команду.