Блог AST-SoftPro
Исследование проблем с потерей памяти в OpenClaw: причины, решения и альтернативы
Введение
OpenClaw (первоначально известный как Clawdbot, а позже Moltbot) — это бесплатная и открытая автономная платформа AI агентов, созданная австрийским разработчиком Peter Steinberger. Проект представляет собой переход от традиционных чат-ботов к полноценному персональному AI-ассистенту, который работает локально, сохраняет контекст между разговорами и может выполнять задачи на локальной машине, интегрируясь с мессенджерами (WhatsApp, Discord, Telegram, Slack) и другими платформами.
Ключевые характеристики OpenClaw:
- Self-hosted, local-first архитектура — агент работает на вашем оборудовании
- Агентный рантайм с выполнением инструментов — способность выполнять действия
- Маршрутизация сообщений через шлюз — централизованное управление
- Плагин-базированная расширяемость — модификация под конкретные задачи
- Более 339,000 звёзд на GitHub (на 2026 год)
Несмотря на феноменальную популярность, проект столкнулся с серьёзными проблемами управления памятью и ресурсным потреблением, особенно на устройствах с ограниченными возможностями.
1. Архитектура системы памяти OpenClaw
1.1 Компоненты памяти
OpenClaw реализует многослойную систему памяти для обеспечения как краткосрочного контекста, так и долгосрочного сохранения информации.
Файлы памяти (Markdown-базированные):
Память хранится в виде обычных Markdown-файлов в рабочей директории агента (~/.openclaw/agents/<agentId>/memory/). Система использует два основных типа файлов:
- Ежедневные логи (YYYY-MM-DD.md) — эфемерная память, фиксирующая разговоры и активности за день
- Долгосрочная память (MEMORY.md) — консолидированные знания, сохраняющиеся между сессиями, автоматически пополняемые из ежедневных логов через распознавание паттернов
Эта "философия files-first" обеспечивает человекочитаемость и прямой доступ к памяти вне приложения.
Память сессий
В дополнение к постоянным файлам, OpenClaw хранит состояние сессии в JSON формате:
- sessions.json — индекс всех сессий
- <SessionId>.jsonl — история отдельных разговоров
Поиск и извлечение памяти
Система использует гибридный поисковый Strategy, комбинирующий два метода:
- BM25 (лексическое сопоставление) — традиционный ключево-словный поиск для точных совпадений
- Векторный поиск (семантическое сходство) — AI-подход на основе embedding'ов для концептуальных совпадений
Оба поиска работают параллельно, результаты объединяются взвешенным алгоритмом. Это обеспечивает баланс точности и полноты.
Система провайдеров Embedding:
- Локальные модели (Ollama, GGUF)
- OpenAI embeddings
- Gemini embeddings
- Mistral, Voyage и другие
1.2 Индексация и оптимизация
- Пакетная обработка embedding'ов: несколько элементов обрабатываются вместе для снижения API вызовов
- Cache-first стратегия: ранее вычисленные embeddings кэшируются
- Дельта-синхронизация: только изменённые части памяти переиндексируются
- Изоляция на агента: каждый агент имеет раздельные пространства памяти
Инфраструктура использует SQLite с векторными расширениями (vss, libsqlite_healp) для эффективного поиска даже с тысячами воспоминаний.
2. Выявленные проблемы с памятью
2.1 Рост использования памяти и Out-of-Memory (OOM) ошибки
Issue #45440 (2026.03.12):
"2026.3.12 upgrade causes rapid memory growth and OOM on Raspberry Pi 4; UI stays disconnected after restart"
Issue #41778:
"openclaw-message OOM on 4GB servers since v2026.3.7"
Симптомы:
- Постепенный рост потребления памяти во время работы
- Полный крах процесса с ошибкой "JavaScript heap out of memory"
- Особенно критично на Raspberry Pi и малых VPS (2-4GB RAM)
Корневые причины:
- Накопление сессий без должной чистки
- Задачи индексации памяти, загружающие целые файлы в память
- Недостаточный garbage collection в долгоживущих процессах
- Отсутствие сброса памяти перед операциями compaction'а
2.2 Проблемы с сохранением и забыванием информации
Массовые жалобы пользователей на то, что OpenClaw "забывает" информацию:
- Неспособность вспомнить ранее сохранённые факты
- Потеря контекста после перезапуска системы
- Нестабильность поиска по памяти
Корневые причины:
- Сжатие сессий (compaction) может удалять воспоминания преждевременно
- Сбои или повреждение индексов поиска
- Отсутствие или неправильная конфигурация плагинов памяти
- Проблемы с правами доступа к файловой системе
2.3 Высокие затраты токенов
Нepaциональные расходы на API из-за:
- Чрезмерного контекста от поиска памяти
- Дублирующих или нерелевантных воспоминаний
- Неэффективного использования embedding провайдеров
2.4 Проблемы с compaction и производительностью
Автоматическая сжатие может вызывать:
- Высокую загрузку CPU
- Временное отсутствие ответов сервиса
- Сбои сброса памяти с потерей данных
3. Решения и лучшие практики
3.1 Конфигурационные фиксы
Включить сброс памяти перед compaction:
{
"compaction": {
"memoryFlush": {
"enabled": true
}
}
}
Это гарантирует завершение всех ожидающих записей памяти до начала compaction'а.
Настроить управление сессиями:
{
"session": {
"prune": true,
"idle": {
"direct": 240,
"group": 120,
"discord": 10080
}
}
}
Правильный prune предотвращает накопление устаревших диалогов.
Ограничить результаты поиска памяти:
{
"memory": {
"search": {
"maxResults": 10,
"scoreThreshold": 0.7
}
}
}
3.2 Ручное обслуживание через CLI
# Проверить статус памяти openclaw memory status # Принудительная переиндексация (фиксирует проблемы поиска) openclaw memory index --force # Очистка старых сессий openclaw sessions cleanup --dry-run # Компактификация памяти openclaw memory compact
3.3 Оптимизации для разных сред
Для малой RAM (Raspberry Pi, маленькие VPS):
- Использовать локальные embedding модели вместо API
- Снизить maxResults до 5-8
- Увеличить swap пространство
- Планировать compaction на ночное время
Для высоко-нагруженных агентов:
- Включить batch embedding конфигурацию
- Использовать внешними векторные базы (QMD, LanceDB)
- Настроить отдельные плагины памяти для разных типов агентов
3.4 Плагины сообщества
Hindsight Plugin (vectorize-io/hindsight):
- Заменяет нативную систему памяти структурированным извлечением знаний
- API mode для shared memory между инстансами
- Тонкие контроля retention и recall
SuperMemory Plugin (supermemoryai/openclaw-supermemory):
- Векторно-графовый слой для автоматического обучения
- Заявлены лучшие оценки в тестах памяти
- Интеграция между сервисами
Lossless Claw (martian-engineering/lossless-claw):
- Сохранение всего контекста без prunning'а
- Подходит для архивных или compliance задач
4. Глубокий анализ системы памяти OpenClaw
4.1 Алгоритм чанкинга Markdown
- Заголовки создают иерархические границы
- Код-блоки и таблицы сохраняются целыми
- Минимальный размер чанка: 200 символов, overlap: 50 символов
- Контекст сохраняется между границами чанков
4.2 Интеграция с сессионной индексацией
Session save handler автоматически индексирует диалог в реальном времени:
- Новые сообщения триггерят инкрементальную индексацию
- Содержимое сессии доступно для поиска до compaction'а
- Индексация асинхронная
- Фейлы ретраятся с экспоненциальной задержкой
4.3 Инструменты доступа к памяти
memory_search(query, options)
- Гибридный векторный + BM25 поиск
- Возвращает snippets с similarity scores
- Опции: maxResults, scoreThreshold, agent, since, until
memory_get(id)
- Поиск конкретного memory по ID
4.4 Жизненный цикл compaction'а
- Pre-compaction memory flush: сброс всех ожидающих записей
- Session pruning: удаление старых сессий
- Memory consolidation: объединение дублей
- Index rebuilding: обновление индексов
- File cleanup: очистка временных файлов
5. Сравнительный анализ различных подходов к памяти
| Подход | Сильные стороны | Слабые стороны | Лучше всего для |
|---|---|---|---|
| Native | Простота, человекочитаемые файлы | Ограниченное масштабирование | Новички, один агент |
| Hindsight | Структурированное извлечение, API mode | Требует внешний сервис | Enterprise, multi-instance |
| SuperMemory | Вектор-граф, сильные оценки | Меньше фидбэка от комьюнити | Сложные знания |
| QMD | Extended retrieval, MMR, temporal decay | Сложнее в настройке | Исследования |
| LanceDB | Производительность на больших объемах | Внешняя зависимость | Продакшен высоконагруженные |
6. Актуальные баги и их фиксы (2026)
6.1 Критические версионные проблемы
v2026.3.12 — введена memory leak в streaming API buffers:
- Команды CLI падают с OOM даже без взаимодействия с моделями
- Необходимо откатиться на v2026.3.11 или ждать патча
v2026.3.13 — частичный фикс memory leak'а:
- Исправлены streaming API buffers
- Исправлен deadlock при большом количестве skills
- Добавлена browser control через Chrome DevTools
- Некоторые пользователи всё ещё сообщают о проблемах с pre-compaction flush
6.2 Известные проблемы и их решения
Проблема: compaction.memoryFlush.enabled не работает корректно
Статус: Открытый issue #20713
Workaround: Принудительный ручной flush через CLI перед компактификацией
Проблема: Session pruning удаляет важную информацию
Решение: Настроить session.idle параметры под конкретный use case, или отключить prune для критических агентов
7. Практические рекомендации
7.1 Первоначальная настройка
- Сразу включить compaction.memoryFlush.enabled: true
- Настроить session pruning под ожидаемую нагрузку
- Выбрать embedding провайдера, соответствующий budget и privacy
7.2 Продакшен-деплой
- Регулярно мониторить память и количество сессий
- Автоматизировать обслуживание через cron:
0 2 * * * openclaw memory index --force 0 3 * * 0 openclaw sessions cleanup
- Рассмотреть внешние backend'ы памяти для high-volume сценариев
- Настроить алерты при превышении порогов использования памяти
7.3 Чеклист диагностики
При проблемах с памятью:
- openclaw memory status --deep — проверка индексации
- Проверить права на ~/.openclaw/agents/
- Искать OOM в логах (journalctl -u openclaw или Docker logs)
- Протестировать с minimal config
- Поискать похожие hardware/OS на GitHub Issues
8. Альтернативы OpenClaw
Если проблемы с памятью неисправимы или для вашего use case нужны другие подходы:
8.1 Прямые альтернативы
NanoClaw — минималистичный наследник OpenClaw:
- Запускается на Raspberry Pi
- Управление через WhatsApp
- Меньший footprint
PicoClaw — сверхлегкий рантайм без тяжелой инфраструктуры
NanoBot — чистый Python фреймворк для агентов
IronClaw — модульная и масштабируемая архитектура для больших проектов
8.2 Другие AI-агентные фреймворки
CrewAI — роль-базированная коллаборация агентов (32K GitHub stars)
LangChain + LangGraph — самый популярный фреймворк (600+ интеграций)
AutoGen (Microsoft) — мультиагентные системы
SuperAGI — производственный-grade фреймворк
8.3 Специализированные решения
Mastra — современный фреймворк с TypeScript-first подходом
DeerFlow — research и аналитика
Smolagents — легковесные агенты от Hugging Face
8.4 Выбор альтернативы
| Требование | Рекомендация |
|---|---|
| Минимальный footprint | NanoClaw, PicoClaw |
| Производственные нагрузки | CrewAI, SuperAGI |
| Исследования и кастомизация | LangChain, AutoGen |
| Простота и скорость | Smolagents, Agno |
9. Заключение
Проблемы с памятью в OpenClaw — это системный вызов, вытекающий из сложности управления неограниченной историей диалогов в ограниченных ресурсах. Проект показывает активное развитие как в core-команде (патчи для memory flush'а, улучшения compaction'а), так и в экосистеме плагинов (Hindsight, SuperMemory, QMD).
Для большинства сценариев настройка compaction.memoryFlush и правильное управление сессиями решает основные проблемы. Для высоконагруженных или сложных use cases стоит рассматривать внешние системы памяти или альтернативные фреймворки.
Ключевой вывод: OpenClaw требует активного мониторинга и регулярного обслуживания. Его "философия files-first" даёт преимущества контроля, но возлагает на пользователя ответственность за управление ресурсами.
Источники
- OpenClaw Official Documentation: https://docs.openclaw.ai/concepts/memory
- OpenClaw GitHub Repository: https://github.com/openclaw/openclaw
- Memory System Deep Dive: https://snowan.gitbook.io/study-notes/ai-blogs/openclaw-memory-system-deep-dive
- GitHub Issue #45440: 2026.3.12 Memory Leak - OOM on Raspberry Pi 4: https://github.com/openclaw/openclaw/issues/45440
- GitHub Issue #41778: openclaw-message OOM on 4GB servers: https://github.com/openclaw/openclaw/issues/41778
- GitHub Issue #45064: 2026.3.12 Memory Leak - OOM on basic commands: https://github.com/openclaw/openclaw/issues/45064
- Hindsight Memory Plugin: https://github.com/vectorize-io/hindsight
- SuperMemory OpenClaw Plugin: https://github.com/supermemoryai/openclaw-supermemory
- Session Management Docs: https://docs.openclaw.ai/concepts/session
- Compaction Documentation: https://docs.openclaw.ai/reference/session-management-compaction
- Memory configuration reference: https://docs.openclaw.ai/reference/memory-config
- Facebook Post about v2026.3.13 memory leak fix: https://www.facebook.com/groups/clawdbotcommunity/posts/2043826426187796/
- Blog: "OpenClaw's Memory Is Broken. Here's how to fix it": https://blog.dailydoseofds.com/p/openclaws-memory-is-broken-heres
- Blog: "Why everyone is complaining about OpenClaw's memory (it sucks)": https://supermemory.ai/blog/why-everyone-is-complaining-about-openclaws-memory-it-sucks-and-why-supermemory-fixes-it/
- Medium: "I've Been Running OpenClaw Wrong — Here's What Actually Fixed It": https://medium.com/@orami98/ive-been-running-openclaw-wrong-heres-what-actually-fixed-it-1afe8d8f30db
- Best OpenClaw Alternatives 2026: https://till-freitag.com/blog/openclaw-alternatives-en
- 6 OpenClaw Competitors: https://emergent.sh/learn/best-openclaw-alternatives-and-competitors
- 5 Lightweight and Secure OpenClaw Alternatives: https://www.kdnuggets.com/5-lightweight-and-secure-openclaw-alternatives-to-try-right-now
- Comprehensive comparison of AI agent frameworks 2026: https://www.reddit.com/r/LangChain/comments/1rnc2u9/comprehensive_comparison_of_every_ai_agent/
- Reddit discussion about memory problems: https://www.reddit.com/r/myclaw/comments/1rwwx1t/is_it_just_me_or_does_openclaw_memory_totally/
- Reddit: Tested every major OpenClaw memory fix: https://www.reddit.com/r/openclawsetup/comments/1s23hzb/tested_every_major_openclaw_memory_fix_so_you/
- Twitter/X: Must run to fix memory issues: https://x.com/RayFernando1337/status/2019644782872785320
- Issue #20713: compaction.memoryFlush.enabled bug: https://github.com/openclaw/openclaw/issues/20713
- YouTube: How To Fix Your OpenClaw's Memory FOR GOOD: https://www.youtube.com/watch?v=HNVc8ubx2VE
- NVIDIA NemoClaw for security: https://www.penligent.ai/hackinglabs/tr/nvidia-openclaw-security-what-nemoclaw-changes-and-what-it-still-cannot-fix/