Перейти к основному содержимому

Сравнение, плюсы, минусы и дорожная карта

Engram занимает другое место в пространстве памяти ИИ, нежели автоматические фоновые движки памяти. Он оптимизирован для контроля человеком, удобства проверки изменений и переносимости между различными ИИ-агентами.

Сильные стороны Engram

  • Обычный Markdown в качестве первоисточника (source of truth).
  • Обязательное одобрение изменений человеком перед их физической записью на диск.
  • История аудита и синхронизация, встроенные прямо в Git.
  • Приоритет памяти проекта (workspace-first) и автоматический откат к глобальной памяти (global-fallback).
  • Независимость от ИИ-агента: любой ИИ умеет читать Markdown.
  • Слои безопасности: валидация схемы, поиск секретов, поиск инъекций кода, хэширование файлов и правила исключений.
  • Не требует установки постоянных служб (демонов), баз данных или облачных аккаунтов.
  • Поддержка долгосрочного сопровождения через встроенные инструменты импорта, наблюдения, архивации, построения графов, бенчмаркинга и восстановления.

Недостатки и компромиссы (Tradeoffs)

  • Требует больше ручной дисциплины со стороны пользователя, чем полностью автоматические фоновые службы.
  • Поиск по умолчанию является детерминированным лексическим поиском; search --semantic добавляет детерминированное локальное сходство слов, а не семантический поиск на основе полноценных нейросетевых эмбеддингов.
  • Векторы графа — это локальные хэшированные векторы слов, а не семантические эмбеддинги.
  • Обнаружение противоречий работает на основе эвристики и носит рекомендательный характер.
  • deduplicate --semantic использует локальное сходство слов, а не внешние модели эмбеддингов.
  • Схемы выявления паттернов (pattern mining), шифрования данных и интеграции с PR-workflow подготовлены на уровне концептов, но полноценно в рантайме пока не задействованы.
  • Структура графа полностью зависит от сгенерированных тегов и саммари.

Сравнение с Agentmemory

rohitg00/agentmemory — это мощный автоматический фоновый движок памяти для пишущих код агентов. Его документация предлагает серверную архитектуру памяти, интеграцию через MCP/хуки/REST, множество адаптеров под ИИ-инструменты, тесты производительности, встроенный UI-просмотрщик, воспроизведение сессий (replay), гибридный поиск и интеграцию с моделью Hermes.

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

Используйте Engram, если хотите, чтобы память была прозрачным текстовым протоколом внутри репозитория: приоритет Markdown, одобрение человеком, ревью через Git, независимость от ИИ и работоспособность без запуска каких-либо фоновых серверов.

КритерийEngramagentmemory
Источник истиныУтвержденные файлы MarkdownВыделенный сервер / БД памяти
Граница доверияОдобрение человеком в стиле A/B/CАвтоматический сбор + правила инструментов
Режим работыФайловый протокол, службы не нужныРекомендуется запуск фоновой службы
Проверка измененийGit diff и ревью файлов MarkdownПросмотрщик/API и сохраненные сессии
Кому подходитКомандам, которым важен аудит и контрольПользователям, желающим автоматический захват сессий
РискиТребуется ручная аккуратностьНевидимое состояние БД, если не следить тщательно

Сравнение с Hermes Agent

Сводка (TL;DR)

EngramHermes Agent
ФилософияПротокол ориентирован на файлы, принадлежит человеку (автоматизация опциональна)Автономная, постоянно активная память
ХранениеТипизированные файлы Markdown в .agents/.engram/MEMORY.md + USER.md (жесткие лимиты символов)
Модель записиОдобрение человеком по умолчанию (шлюз A/B/C; автоматизируется правилами)Агент пишет автономно
ИзвлечениеПо требованию: engram load "<задача>" внедряет нужные файлыВсегда включено: основные файлы вшиты в системный промпт каждой сессии
Векторный поискОпциональный локальный sqlite-vec (детерминированный, без эмбеддингов)Через внешнего провайдера (например, agentmemory — BM25 + вектор)
Кросс-агентностьЛюбой читающий файлы агент может использовать память EngramЯдро Hermes одноагентное; кросс-агентность через плагин agentmemory
ПортативностьРодной для Git, работает офлайн, простой MarkdownЛокальные файлы; внешние провайдеры могут привязать к облаку
Накладные расходыБез демона, требует дисциплины сохранения (если не автоматизировано)Серверный процесс + интерфейс просмотра, REST API, сервер MCP

Форматы хранения

Engram хранит каждое воспоминание в виде типизированного файла Markdown с YAML-метаданными (frontmatter), проверкой целостности хеша и опциональным графом зависимостей (depends_on). JSON-индекс, граф и сайдкар sqlite-vec служат слоями ускорения — Markdown остается единственным источником правды.

Hermes сжимает всю постоянную память в два ограниченных файла:

  • ~/.hermes/memories/MEMORY.md — заметки агента, лимит 2 200 символов
  • ~/.hermes/memories/USER.md — профиль пользователя, лимит 1 375 символов

Жесткие ограничения символов заставляют агента курировать информацию, а не накапливать ее. История сессий доступна для поиска через SQLite FTS5.


Модель записи

Engram — по умолчанию явный шлюз одобрения человеком. Агенты предлагают варианты; человек должен утвердить запись перед ее сохранением на диск. Проверка на секреты и инъекции промптов происходит во время сохранения. (Примечание: Пользователи могут автоматизировать этот процесс, сохранив правило для автосохранения новых предложенных воспоминаний после завершения ответа, что позволяет настроить автоматический поток сохранения).

Hermes — автономность. Агент сам решает, что и когда писать, ограничиваясь лишь лимитами символов. В основном цикле одобрение человека не требуется.


Модель извлечения

Engram — маршрутизация по требованию. engram load "<задача>" ранжирует кандидатов по тегам, типу, новизне, графу и опциональным векторным сигналам, затем внедряет компактный пакет (по умолчанию: 8 файлов) в контекст.

Hermes — всегда активное внедрение. Основные файлы вшиваются в системный промпт в начале сессии. Дополнительный внешний провайдер (например, agentmemory) выполняет предварительную выборку перед каждым шагом LLM и синхронизирует данные после.


Что и когда выбирать

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

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


Сравнение со встроенной памятью ИИ-агентов

Встроенная память ИИ-агентов удобна, но обычно заблокирована внутри одного хоста или платформы. Её трудно сравнить (diff), экспортировать, отредактировать или перенести на другого агента.

Engram рассматривает встроенную память лишь как вспомогательный слой, а не как авторитетный первоисточник. Авторитетным источником остаются файлы, принадлежащие человеку.

Идеи для дорожной карты (Roadmap)

  • Опциональный локальный провайдер эмбеддингов для векторов графа и поиска.
  • Улучшенная диагностика графа, объясняющая, почему сработал тот или иной маршрут памяти.
  • Сохраняемые в репозиторий наборы тестовых данных (fixtures) бенчмарка для отслеживания регрессии качества поиска.
  • Более надежный рабочий процесс проверки противоречий, сочетающий граф, проверку качества и архив.
  • Больше тестов импорта для различных вариантов экспорта из agentmemory.
  • Опциональный внешний провайдер эмбеддингов для семантического поиска дубликатов.
  • Инструменты автоматического исправления файлов памяти после обнаружения ошибок схем в процессе repair.

Далее: вернуться на Главную.