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
- ActiveGraph
- agentmemory
- beads
- botctl
- MemPalace
- mnemonik
- Stash
- Watchlist
- The Anatomy of Agent Memory
- Memory Decay in AI Agents
- Agent Memory Strategy Decision Tree
- Build Your Own OpenClaw
- Claude Code
- Hybrid Search
- LLM Wiki as agent-memory substrate
- Memorizing Session Transcripts Isn't Useful
- Memory Conflict Detection