EnglishРусский Map

Hippo Memory

title
Hippo Memory
type
toolbox
summary
Система памяти агентов с угасанием по умолчанию, тремя слоями хранения и консолидацией
tags
ai-agents, memory, typescript
language
TypeScript
license
MIT
created
2026-04-07
updated
2026-04-25
lang
ru
translation_of
hippo-memory
source_updated
2026-04-25
translated
2026-09-01
translator
lllm/antigravity/gemini-3.7-flash-medium

Система памяти для AI-агентов написания кода, спроектированная по модели биологической консолидации памяти. Три слоя хранения, угасание по умолчанию, укрепление при извлечении, обнаружение конфликтов и переносимость между разными средами. Без runtime-зависимостей, SQLite + зеркала в Markdown, отслеживается в Git.

Архитектура

Три слоя, вдохновлённые работой человеческой памяти:

Буфер (Buffer) - рабочая память на уровне сессии. Не более 20 записей на область видимости, вытеснение по важности при заполнении, без угасания. По сути, ограниченный scratchpad для текущей задачи.

Эпизодическое хранилище (Episodic store) - воспоминания с временными метками и периодом полураспада 7 дней (настраивается). Каждое извлечение продлевает период полураспада на 2 дня. Записи с тегом ошибки получают стартовый полураспад в 14 дней. Если к воспоминанию не обращались 14 дней, оно становится кандидатом на удаление.

Семантическое хранилище (Semantic store) - сжатые паттерны, извлекаемые при обнаружении 3 и более связанных эпизодических воспоминаний во время консолидации. Они стабильны, структурированы и не угасают так, как эпизоды.

Команда hippo sleep запускает консолидацию: рассчитывает угасание, удаляет воспоминания ниже порога, объединяет связанные эпизоды в семантические паттерны и помечает невостребованные записи как устаревшие. Все операции записи выполняются в единой транзакции SQLite.

Механика угасания и извлечения

У каждого воспоминания есть период полураспада. Каждый неиспользуемый интервал уменьшает силу вдвое - это ключевое архитектурное решение. Вместо бесконечного накопления воспоминаний и расчёта только на релевантность поиска, система активно забывает. Извлечение служит сигналом важности воспоминания: каждое обращение продлевает период полураспада, а команды outcome --good/--bad дают явную обратную связь, корректирующую скорость угасания.

Уровни уверенности (verified, observed, inferred, stale) отображаются прямо в выводе, чтобы агент мог оценить надёжность. Записи автоматически помечаются как stale спустя 30 дней без обращений.

Общая концепция описана в agent-memory-decay.

Гибридный поиск

По умолчанию всегда работает поиск по ключевым словам через BM25. Если установлен пакет @xenova/transformers, добавляется косинусное сходство на эмбеддингах. Смешанный скоринг объединяет оба сигнала. Без ML всё плавно деградирует до базового варианта - результаты поиска возвращаются в любом случае.

Управление бюджетом токенов ранжирует результаты по формуле релевантность × сила × свежесть и обрезает их под лимит. Флаг --why показывает полную логику ранжирования: оценки BM25, косинусные расстояния, корзины источников, уровни уверенности.

Общий подход описан в hybrid-search.

Обнаружение конфликтов

Когда новое воспоминание противоречит существующему, Hippo сохраняет оба видимыми, а не перезаписывает запись втихую. Конфликты сохраняются в SQLite и зеркалируются в виде файлов в .hippo/conflicts/. Разрешение выполняется явно через hippo resolve <id> --keep <mem_id>.

Это важно: перезапись втихую лишает агента контекста о том, почему что-то изменилось. Сохранение противоречий на виду позволяет агенту (или человеку) сделать осознанный выбор. См. memory-conflict-detection.

Интеграция с разными инструментами

Автоматически подключается к Claude Code (CLAUDE.md), Cursor (.cursorrules), Codex/OpenClaw (AGENTS.md). Поддерживает импорт из JSON-выгрузок ChatGPT, файлов CLAUDE.md от Claude, правил Cursor, произвольного Markdown или обычного текста. При импорте работает дедупликация. Все варианты импорта поддерживают --dry-run.

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

Автоматическое обучение

Команда hippo learn --git автоматически извлекает выводы из коммитов с исправлениями, откатами и фиксами багов. hippo watch "<command>" оборачивает любую команду и при сбое сохраняет stderr как воспоминания об ошибках. hippo capture выполняет извлечение по паттернам (без вызова LLM) из логов диалогов.

Использование

npm install -g hippo-memory
hippo init
hippo remember "deploy requires --force flag on staging" --tag ops --observed
hippo recall "deployment issues" --budget 2000 --why
hippo sleep  # consolidate, decay, merge

Связанные инструменты

В mempalace заложена противоположная философия (дословное хранение, без угасания, иерархия по метафоре дворца памяти). Stash развивает идею консолидации в более длинный пайплайн (причинно-следственные связи, противоречия, стадии целей/сбоев/гипотез). Таблица сравнения трёх подходов приведена на странице MemPalace.

232 звезды, лицензия MIT. Репозиторий: https://github.com/kitfunso/hippo-memory