Рецепт · OpenClaw

OpenClaw 2026.11.2: бюджет контекста 4000 для Active Memory

Как выбрать режим запроса, задать таймаут и проверить, какая история дошла до субагента Active Memory.

· 2 мин чтения

Коротко

  • В OpenClaw 2026.11.2 все режимы Active Memory делят общий бюджет 4000 UTF-16 единиц.
  • Текущее сообщение сохраняют целиком, если помещается, а остаток занимает свежая история.
  • Лимит касается только субагента извлечения из памяти. Отвечающая модель получает исходный запрос целиком.

Сверено с документацией OpenClaw 2026.11.2, 8 ноября 2026.

Режимы Active Memory определяют, сколько истории увидит субагент извлечения из памяти. Выберите режим под объём контекста и проверьте маркеры обрезки истории.

Бюджет 4000: как собирается контекст

У субагента извлечения из памяти есть общий лимит на собранный контекст — 4000 UTF-16 единиц, независимо от config.queryMode. Текущее сообщение сохраняют целиком, если оно помещается. Оставшееся место занимает самая свежая подходящая история.

Старое выпадает первым, а частичное сохранение сопровождается явным маркером. Если текущее сообщение само превышает бюджет, сохраняются его начало и конец. Между ними добавляется маркер пропуска.

  • message отправляет только последнее сообщение пользователя. Начинайте с config.timeoutMs примерно 3000–5000 мс.
  • recent добавляет небольшой хвост последних диалоговых реплик. Начните примерно с 15000 мс.
  • full допускает всю доступную историю, но она тоже ограничена бюджетом. Сохраняется новая история, помещающаяся в остаток.

Режим recent балансирует скорость и опору на контекст диалога. Переходите к full, когда для извлечения нужно больше истории, чем даёт recent.

Настройка режима запроса и таймаута

Все настройки Active Memory лежат под plugins.entries.active-memory.

Режим задаёт ключ config.queryMode, жёсткий предел ожидания — config.timeoutMs (диапазон 250-120000 мс, по умолчанию 15000). Логирование включается ключом config.logging.

Для полного охвата доступной истории переключите config.queryMode на full.

Проверка после настройки

Сначала проверьте подключение памяти и состояние индекса. Команда openclaw doctor проверяет, поддерживает ли текущий провайдер памяти защищённый поиск по транскриптам, а openclaw status --deep показывает бэкенд и индекс поиска по памяти.

openclaw doctor
openclaw status --deep

В сессии проверьте переключатель и настройки Active Memory, затем включите подробную трассировку.

/active-memory status
/trace on
/verbose on

Задайте вопрос, ответ на который зависит от ранней реплики, и проверьте результат извлечения.

Где ломается и когда не применять

  • Старая история выпадает первой. Переключение на full не гарантирует сохранение всего диалога.
  • Сообщение длиннее 4000 UTF-16 единиц теряет середину. Маркер указывает на пропуск между сохранённым началом и концом.
  • message подходит, когда уточняющим вопросам не нужна история диалога: он даёт самую быструю обработку и сильную опору на устойчивые предпочтения.
  • Active Memory не запускается для одноразовых запусков без диалога (headless one-shot), фоновых и heartbeat-запусков, внутренних субагентов и служебных путей agent-command.
  • Если агент не входит в config.agents, разрешённый тип сессии не подходит либо инструменты памяти отключены политикой, субагент не запускается.