Глубокое погружение в ИИ

Глубокое погружение в Agentmemory: постоянная память для Claude Code, Codex, Cursor и агентов MCP

Agentmemory — это локальная среда выполнения постоянной памяти для AI-агентов, занимающихся программированием. Она фиксирует сессии через хуки, MCP или REST, сжимает наблюдения, индексирует память с помощью поиска BM25/векторного/графового поиска и возвращает релевантный контекст для Claude Code, Codex, Cursor, Gemini CLI, OpenCode и других MCP-клиентов.

Обновлено в июне 2026 г.
Главное изображение руководства по Agentmemory, показывающее сессии агентов, поступающие в локальную память, BM25 и векторный поиск, контекст графа и клиентов MCP

Полезная концепция — это не `vector database for agents`. Agentmemory ближе к локальному «черному ящику»-регистратору в сочетании с поисковой системой и инжектором контекста. Он записывает действия агентов, превращает их в память с возможностью поиска и пытается предотвратить повторное открытие одних и тех же фактов о проекте в каждой новой сессии.

Get the latest on AI, LLMs & developer tools

New MCP servers, model updates, and guides like this one — delivered weekly.

Редакционная заметка

В этой статье используются README, npm-пакет, release/changelog, документация по бенчмаркам, исходные файлы, текущие issues/PR, посты в X и критика с Reddit, собранные 2 июня 2026 года. Цифры бенчмарков являются внутренними результатами поиска, а не независимыми результатами QA полного цикла.

1. agentmemory в одном предложении

Agentmemory — это локальный сервер памяти с лицензией Apache 2.0 для AI-агентов, который фиксирует наблюдения, индексирует их с помощью BM25/векторного/графового поиска и предоставляет доступ к памяти через MCP, REST, хуки и веб-просмотрщик.

ОбластьДеталиПочему это важно
Репозиторийrohitg00/agentmemoryhttps://github.com/rohitg00/agentmemory
Основной языкTypeScriptОсновной язык GitHub на момент исследования.
ЛицензияApache-2.0При необходимости отдельно проверьте лицензии встроенных или бинарных компонентов.
Создано25 февраля 2026 г.Последний проверенный релиз: v0.9.24, опубликован 29 мая 2026 г.

2. Почему это важно

AI-агенты для программирования по умолчанию забывают контекст сессии. Они каждый раз заново изучают архитектуру, историю багов, предпочтения пользователя, поведение инструментов и предыдущие решения при сбросе контекстного окна.

Статические файлы, такие как `CLAUDE.md`, `AGENTS.md` и `.cursorrules`, помогают, но они требуют ручного управления, ограничены и быстро устаревают. Agentmemory пытается сделать память автоматической: наблюдать за сессией, сжимать важные части и извлекать только релевантный контекст позже.

Сложная проблема заключается не в хранении. Она в жизненном цикле: устаревшие воспоминания, противоречивые факты, точность поиска, лимит токенов, идентичность проекта, конфиденциальность и вопрос о том, действительно ли агент использует внедренные данные.

3. Архитектура и ментальная модель

Agentmemory работает как локальный iii-engine воркер с REST, MCP, состоянием, очередями, потоками, просмотрщиком и наблюдаемостью. Агенты записывают наблюдения; воркер сохраняет необработанные и сжатые данные, индексирует поиск, формирует контекст и возвращает память обратно.

ОбластьДеталиПочему это важно
Среда выполненияiii engineПредоставляет HTTP-триггеры, состояние, очереди, потоки, cron и наблюдаемость.
ЗахватХуки, MCP, RESTЗаписывает использование инструментов, промпты, изменения файлов, сессии и явные воспоминания.
ХранилищеОбласти видимости KV и локальное состояниеХранит сессии, наблюдения, воспоминания, сводки, узлы графа и индексы.
ПоискBM25, векторный, графовый, RRFОбъединяет лексические, семантические и графовые сигналы.
Контекст`/agentmemory/context` и инструменты MCPВозвращает агентам блоки ограниченного контекста.
ПросмотрщикВеб-интерфейс localhostОтображает сессии, память, граф, воспроизведение и события в реальном времени.

4. Минимальная end-to-end настройка

Команды ниже взяты из документации репозитория и сверены с текущим исследовательским снимком. Используйте их как отправную точку, а затем прочитайте связанную README перед установкой в production.

npm install -g @agentmemory/agentmemory
agentmemory
agentmemory demo
agentmemory connect claude-code
npx skills add rohitg00/agentmemory -y

# No-install path
npx -y @agentmemory/agentmemory@latest

Небольшая первая задача должна подтвердить интеграцию, прежде чем подключать ее к критичным данным или большим рабочим пространствам.

# Terminal 1: start local memory server
npx -y @agentmemory/agentmemory@latest

# Terminal 2: seed sample sessions and prove recall
npx -y @agentmemory/agentmemory@latest demo

# Browser viewer
open http://localhost:3113

5. Технический разбор

5.1 Наблюдения — это исходный материал

Agentmemory фиксирует события сессии: промпты, вызовы инструментов, результаты инструментов, файлы, пути к проектам, ошибки и ответы. Путь `observe` выполняет очистку, дедупликацию, сохранение необработанных наблюдений и потоковую передачу обновлений в реальном времени в просмотрщик.

Это уровень «черного ящика». Даже если высокоуровневое обобщение отключено, локальный сервер может записывать структурированные данные о том, что произошло.

5.2 Сжатие может быть синтетическим или выполняться с помощью LLM

В текущем README/исходном коде указано, что провайдер LLM по умолчанию не выполняет никаких действий, если не настроен ключ провайдера или явно не включен резервный вариант подписки Claude. Это означает, что базовый захват может работать без API ключа, но для более качественного сжатия и суммаризации на базе LLM требуется настройка.

Это различие важно, так как в обсуждениях сообщества возникает путаница при настройке. Пользователи не должны полагать, что каждая функция бесплатна только потому, что сервер запускается локально.

5.3 Гибридный поиск объединяет различные сигналы извлечения данных.

Уровень поиска комбинирует сопоставление по ключевым словам BM25, векторное сходство и графовые/контекстные сигналы с использованием взаимного ранжирования (RRF). Цель состоит в том, чтобы извлекать важную информацию в рамках лимита токенов, а не выгружать всё подряд в каждый промпт.

BM25 находит точные имена и сообщения об ошибках. Векторный поиск находит семантическое сходство. Графовый поиск может связывать сущности проекта. RRF предотвращает доминирование одного режима поиска над всеми запросами.

Query: "database performance optimization"
  -> BM25 finds N+1 and query terms
  -> vector search finds semantic session summaries
  -> graph search adds linked files/concepts
  -> RRF merges ranked lists
  -> context builder trims to budget

5.4 Внедрение контекста ограничено по дизайну.

Функция контекста создает ограниченные блоки `<agentmemory-context>` из слотов, профиля проекта, уроков, резюме и важных наблюдений. Это критический момент проектирования: постоянная память полезна только в том случае, если она не занимает весь промпт.

Открытым исследовательским вопросом остается поведение читателя. Даже когда поиск находит нужные доказательства, агент может проигнорировать их, скрыть или ответить, опираясь на устаревшие предположения. Некоторые текущие проблемы предлагают метрики именно для этого типа сбоев.

5.5 Просмотрщик — это отчасти отладчик, отчасти продукт.

Web UI отображает сессии, воспроизведение, граф памяти, события в реальном времени и статус. Для системы памяти это не декоративный элемент. Если пользователи не могут проверить, что запомнил агент, они не смогут доверять уровню памяти.

Текущие проблемы с большими графами показывают, почему масштаб визуализатора имеет значение. Вкладка графа, которая работает на демо-версиях, но дает сбой на большом корпусе данных, может заставить пользователей думать, что память неисправна, даже если хранилище существует.

6. Реальные паттерны: неверно vs верно

НеверноВерноПричина
Предполагайте, что API ключ не требуется для каждой функции.Отделите локальный захват от суммаризации и консолидации на базе LLM.Провайдер no-op используется по умолчанию, если не настроено иное.
Относитесь к памяти как к постоянной базе данных истинных значений.Планируйте механизмы устаревания, обработки противоречий, удаления и проверки источников.Старые процедурные воспоминания могут стать неверными.
Запускайте множество локальных экземпляров на портах по умолчанию.Переопределяйте порты или намеренно используйте один сервер совместно.Порты по умолчанию 3111/3113 могут конфликтовать.
Доверяйте показателю recall в бенчмарках как точности выполнения всей задачи.Оцените, правильно ли ваш агент использует извлеченную память.Поведение при поиске (retrieval) и чтении — это разные типы сбоев.

7. Частые ошибки и текущие проблемы

Issue tracker важен, потому что эти репозитории молоды и быстро меняются. В статье issues используются как сигналы риска, а не как доказательство непригодности проекта.

ОбластьДеталиПочему это важно
Резервный вариант Agent SDKВ Issue #781 сообщается о состоянии гонки в защите от рекурсии при параллельной обработке чанков суммаризации.Используйте реальные ключи провайдеров или снизьте параллелизм до выхода исправлений.
Парсинг суммаризацииВ Issue #783 сообщается о сбоях XML-парсера на markdown-блоках и дополнительном тексте.Структурированный вывод LLM требует надежного парсинга и механизмов повторных попыток.
Резервные провайдерыВ Issue #778 указано, что резервные провайдеры наследуют имя основной модели.При переключении между провайдерами может возникать ошибка 404, если пространства имен моделей различаются.
Импорт JSONLIssue #775/PR отслеживают проблемы с ключами существующих сессий.Пути для массового импорта требуют проверки на реальных деревьях транскриптов.
Средство просмотра больших графовВ Issue #753 сообщается о пустой вкладке графа на больших корпусах данных.Масштабирование средства просмотра остается актуальной проблемой.

8. Заметки о производительности, масштабировании и стоимости

Собственные бенчмарки показывают результаты поиска LongMemEval-S около высоких R@5/R@10 с локальными эмбеддингами, а также небольшой корпус coding-agent-life со 100% показателем попадания в топ-5 и низкой задержкой p50. Это бенчмарки поиска, а не показатели успешности выполнения сквозных задач программирования.

Вопрос стоимости сильно зависит от конфигурации. Локальные эмбеддинги обходятся дешево. Синтетическое сжатие обходится дешево. Сжатие, суммаризация, извлечение графов и консолидация на базе LLM увеличивают расход токенов в фоновом режиме.

Проблемы с масштабируемостью возникают при сохранении снимков поиска, работе с конечными точками больших графов, рендеринге просмотрщика и импорте сессий. Для малых и средних личных проектов это может быть приемлемо. Для многомесячной истории работы нескольких агентов протестируйте систему на реальном корпусе данных, прежде чем полагаться на нее.

9. Для кого это

Используйте, еслиПропустите, если
Вы ежедневно запускаете агентов для написания кода и часто повторяете объяснения по проекту.Ваши сессии короткие и одноразовые.
Вам нужен единый уровень локальной памяти, общий для Claude Code, Codex, Cursor, Gemini и клиентов MCP.Вы используете только один инструмент с достаточным объемом встроенной памяти.
Вы можете проверять и очищать память, когда она устаревает.Вам нужно хранилище истины, не требующее обслуживания.
Вы принимаете молодой, быстро развивающийся стек TypeScript/iii.Вам нужна проверенная надежность работы с большими корпусами данных уже сегодня.

10. Сигнал сообщества

В X/Twitter agentmemory в основном позиционируется как быстрорастущий недостающий уровень памяти для агентов кодинга. Это полезный сигнал принятия, но многие публикации являются скорее кратким продвижением, чем глубокой оценкой.

Критика на Reddit более полезна: пользователи спрашивают, как система справляется с противоречиями, устаревшей процедурной памятью, ростом хранилища, дизайном бенчмарков, избыточностью токенов и остается ли память надежной после месяцев сессий.

Текущий трекер проблем на GitHub активен и технически ориентирован. Некоторые типы проблем включают анализ на уровне первопричин и PR, что является хорошим сигналом поддержки, но также напоминанием о том, что система все еще находится в стадии развития.

11. Вердикт: стоит ли использовать?

Наш вывод

Используйте agentmemory, если ваши агенты для кодинга постоянно переоткрывают одни и те же факты о проекте, и вам нужен локальный, проверяемый слой памяти, работающий между агентами. Пропустите или изолируйте его, если вам прямо сейчас нужны проверенное управление долгосрочной памятью, масштабирование больших графов и автоматическая суммаризация без настройки.

12. Общая картина

Agentmemory находится между статическими файлами инструкций и полноценными средами выполнения агентов. Он не заменяет `AGENTS.md`; он дополняет его, запоминая то, что произошло после того, как файл был записан.

Более масштабное движение направлено в сторону экстернализации состояния агента. Агентам нужны инструменты, память, графы проектов, трассировки оценки и воспроизводимые истории, которые сохраняются дольше одного контекстного окна. Следующая сложная задача — не запомнить всё. А запомнить нужное, забыть устаревшее и обосновать, почему именно это воспоминание было внедрено.

13. Частые вопросы

В: Работает ли agentmemory без API key?

Базовый локальный захват и поведение синтетической памяти могут работать без ключа провайдера. Суммаризация, сжатие и консолидация на базе LLM требуют явного указания провайдера или использования резервного варианта agent-sdk.

В: Где хранятся данные?

Он работает локально и хранит сессии, наблюдения, воспоминания, суммаризации и индексы через состояние iii-engine/KV-области в рамках локальной среды выполнения.

В: Чем он отличается от `CLAUDE.md`?

`CLAUDE.md` — это файл статических инструкций. Agentmemory записывает события сеанса и динамически извлекает соответствующий предыдущий контекст.

В: Что именно добавляют BM25, векторный и графовый поиск?

BM25 находит точные термины, векторный поиск — семантическое сходство, а графовый поиск добавляет контекст взаимосвязей. RRF объединяет ранжированные результаты.

В: Какие агенты поддерживаются?

В README перечислены Claude Code, Codex CLI, Cursor, Gemini CLI, GitHub Copilot CLI, Hermes, OpenClaw, OpenCode и общие MCP клиенты.

В: Что перестает работать при больших масштабах?

В открытых задачах упоминаются крупные графовые эндпоинты, сохранение индексов, поведение просмотрщика и пути импорта. Протестируйте на своей реальной истории, прежде чем делать выводы о готовности к работе с большими корпусами данных.

В: Как снизить расход токенов?

Используйте локальные эмбеддинги, держите сжатие на базе LLM выключенным, если в нем нет необходимости, выбирайте более дешевые модели суммаризации и ограничивайте объем внедряемого контекста.

14. Глоссарий

ОбластьДеталиПочему это важно
MCPModel Context ProtocolСколько агентов вызывают внешние инструменты.
BM25Лексическое ранжирование по ключевым словам.Хорошо подходит для точных идентификаторов и ошибок.
Векторный поискСемантическое сходство на основе эмбеддингов.Хорошо подходит для поиска по смыслу.
RRFВзаимное ранжирование (Reciprocal-rank fusion).Объединяет несколько ранжированных списков.
НаблюдениеЗахваченное событие агента.Исходный материал для памяти.
СжатиеПреобразование необработанных событий в структурированную память.Может быть синтетическим или на базе LLM.
КонсолидацияПревращение сессий в память более высокого уровня.Требует достаточного объема данных и часто LLM.

15. Все источники и ссылки

Внутренние ссылки

16. Таблица атрибуции источников

ОбластьДеталиПочему это важно
README и npmУстановка, поддерживаемые агенты, порты, результаты бенчмарков, структура конфигурации.Первоисточник.
Исходные файлыНаблюдение, поиск, контекст, суммаризация, MCP, архитектура API.Первичный источник.
БенчмаркиRetrieval R@5/R@10 и утверждения о coding-agent-life.Первоисточник бенчмарков.
Issues/PRsПарсер, конкурентность, фоллбэк, импорт, нюансы graph-scale.Критический сигнал.
Обсуждение в сообществеАжиотаж вокруг внедрения, а также вопросы устаревшей памяти и управления.Вторичный сигнал.

Related Guides