Блог

Межсессионная память Grok Build: включение и настройка

Markdown

Как активировать экспериментальную межсессионную память Grok Build, применять команды /flush, /dream и /remember, находить файлы заметок и удалять записи.

Читать статью полностью

Терминальный агент Grok Build от xAI поддерживает сохранение памяти между запусками. Он способен удерживать соглашения проекта, решения и успешные приёмы отладки, а затем автоматически учитывать их в контексте новой сессии. Изначально возможность отключена и помечена как экспериментальная; активировать её можно одной настройкой.

Сведения основаны на официальном руководстве в репозитории xai-org/grok-build по состоянию на 20 сентября 2026 года. Механика изложена по документации, а не по результатам личного тестирования.

Практические материалы по работе с Ailoot доступны в документации.

Какие возможности даёт память Grok Build?

Ключевое

Без памяти новая сессия Grok Build не наследует контекст предыдущих запусков: например, разъяснённые тобой правила и принятые решения, если их не внесли в репозиторный файл инструкций. При включённой функции агент находит сохранённые заметки и самостоятельно добавляет подходящие сведения в контекст следующего запуска. Заметки представлены обычными Markdown-файлами, доступными для чтения и редактирования.

Допустим, в одной сессии ты сообщил агенту, что код оформляется с отступами в два пробела, миграции базы выполняются отдельной командой, а за платежи отвечает определённый модуль. В следующем запуске без памяти эти детали пришлось бы сообщать заново.

После включения памяти Grok Build способен:

  • учитывать ранее объяснённые правила проекта;
  • применять уже проверенные приёмы отладки;
  • переносить архитектурные решения между сессиями;
  • не задавать повторно вопросы, ответы на которые уже сохранены.

Это экспериментальная возможность, которая изначально отключена. Пока ты не активируешь её, работа агента остаётся прежней.

Как активировать память?

Ключевое

Чтобы включить функцию только для одного запуска, установи GROK_MEMORY=1. Для постоянного режима внеси в ~/.grok/config.toml раздел [memory] и параметр enabled = true. Затем открой новую сессию командой /new, чтобы заметки учитывались с самого начала.

Однократный запуск:

GROK_MEMORY=1 grok

В этом случае переменная применяется лишь к указанному запуску. Команда export GROK_MEMORY=1 сохранит значение в текущей оболочке, поэтому память будет включаться при последующих запусках grok из неё — до закрытия терминального сеанса либо выполнения export GROK_MEMORY=0.

Постоянная настройка: добавь в ~/.grok/config.toml такой фрагмент:

[memory]
enabled = true

Переключение без перезапуска сессии: открой /memory и нажми t.

Изменение действует лишь в текущем запуске и не сохраняется в конфигурацию. Таким способом можно активировать или отключить память. При отключении инструменты памяти становятся недоступны, но файлы на диске остаются; повторное включение вновь открывает к ним доступ. Однако переменная GROK_MEMORY=0 отключает память на уровне всего процесса: команда /memory при этом недоступна в течение всей сессии.

Если параметры определены в разных местах, применяется следующий порядок:

  • GROK_MEMORY=0 принудительно запрещает память всему процессу и имеет наивысший приоритет.
  • Явное enabled = false в конфигурации отключает память, даже когда управляющая удалённая настройка её активирует.
  • Включение возможно с помощью GROK_MEMORY=1, enabled = true в конфиге либо управляемой удалённой настройки.
  • Если параметры не указаны, функция остаётся выключенной.

Заметки добавляются при первом ходе новой сессии. Если ты активировал память уже во время работы и хочешь, чтобы агент загрузил сохранённый контекст проекта, начни новую сессию командой /new. Статус функции отображается в результате grok inspect.

Какие данные Grok Build сохраняет и где?

Ключевое

Markdown-заметки хранятся в ~/.grok/memory/: общий для проектов файл MEMORY.md, отдельный файл для каждого проекта и журналы сессий. В конце работы краткая автоматическая сводка формируется без обращения к модели. Подробные заметки можно создать командами /flush и /remember, а /dream группирует разрозненные записи по темам.

Каталог ~/.grok/memory/ организован так:

РасположениеНазначениеСодержимое
~/.grok/memory/MEMORY.mdГлобальная памятьОбщие сведения и предпочтения для всех проектов
~/.grok/memory/ + каталог проекта с хешем + /MEMORY.mdПамять проектаКонтекст и договорённости конкретного репозитория
~/.grok/memory/ + каталог проекта с хешем + /sessions/История сессийОтдельные сводки и журналы запусков

В названии каталога проекта используется короткий хеш его идентификатора. Источником идентификатора служит remote origin в виде «организация/репозиторий», а при отсутствии Git-репозитория — путь к каталогу. Поэтому клоны и worktree (изолированные рабочие копии веток Git) одного репозитория используют общее хранилище памяти: сведения, сохранённые в одной копии, доступны и в остальных.

Записи добавляются четырьмя способами:

  1. Автоматическая сводка при завершении сессии. По окончании работы Grok Build вносит в дневной журнал краткую техническую сводку: число сообщений, до пяти первых содержательных реплик, дату и время. Она составляется по метаданным — без вызова модели и задержки. Короткие сессии пропускаются: запись не создаётся, если было менее трёх содержательных реплик или твой текст занимал менее 50 байт. Применённые инструменты, пути и команды в эту сводку не включаются. Отключить её можно параметром session.save_on_end = false.
  2. /flush — развёрнутая заметка по запросу. Команда поручает модели извлечь главное из текущей сессии: решения, повторяющиеся закономерности, действия при отладке и сведения об API. Результат попадает в журнал с датой и индексируется для следующих запусков. В документации рекомендуется использовать /flush перед сокращением контекста, по завершении успешной отладки и после выявления важных закономерностей.
  3. /remember — прямой запрос на сохранение. Например, введи /remember всегда открывать ссылки на PR после отправки или попроси агента запомнить конкретный факт. До записи появится панель подтверждения: заметка сохраняется только после твоего согласия, а в ленте отображается Memory saved to ~/.grok/memory/MEMORY.md. Проектные сведения записываются в MEMORY.md проекта, общие — в глобальный файл.
  4. /dream — упорядочивание заметок. Команда объединяет разрозненные журналы и записи по темам, устраняя дубли для более точного поиска. Как и /flush, она задействует модель: та изучает накопленные данные и распределяет их по темам. Поэтому результат следует время от времени проверять через /memory. Консолидация может выполняться автоматически: по умолчанию Grok Build проверяет условия при запуске и затем каждый час. Она начнётся, если прошло как минимум 24 часа и накоплено не менее 5 сессий. Пороговые значения задаются в разделе [memory.dream] конфигурации.

Для поиска используется индекс SQLite. По умолчанию работает полнотекстовый поиск FTS5; если настроена embedding-модель, к нему добавляется семантический векторный поиск.

Как заметки учитываются в новой сессии?

Ключевое

При первом ходе Grok Build самостоятельно ищет в памяти сведения, связанные с проектом, и помещает их в контекст. После автоматического сжатия контекста поиск запускается повторно. К старым записям из журналов сессий добавляется напоминание о проверке актуальности.

Для первоначальной подстановки установлен порог min_score = 0.9. Его можно изменить в разделе [memory.initial_injection]. Когда контекст автоматически сжимается, агент снова ищет заметки, чтобы восстановить информацию, вытесненную вместе со старыми сообщениями.

Можно также спросить агента: «Что ты помнишь?» Ответ будет сгруппирован по происхождению сведений: глобальные предпочтения, контекст проекта и история сессий.

У записей из журналов сессий есть метки, указывающие на возможное устаревание. Чем старше заметка, тем настойчивее система предлагает проверить её перед использованием. В глобальном и проектном MEMORY.md таких меток нет: предполагается, что содержащиеся там сведения актуальны длительное время, поэтому следить за ними нужно самостоятельно.

Как просматривать, редактировать и удалять заметки?

Ключевое

Команда /memory показывает файлы памяти и их предварительный просмотр. Редактировать файлы можно в обычном текстовом редакторе; изменения будут учтены при следующем поиске. Просьба «забудь ...» не гарантирует полного удаления: для надёжного результата исправь файл вручную.

Введи /memory, чтобы открыть окно со списком файлов, сгруппированных по типу: глобальные, проектные и сессионные (от новых к старым). Слева расположен список, справа — доступный только для чтения предварительный просмотр выбранного файла.

В окне доступны клавиши:

КлавишаДействие
↑/↓ или j/kПереход по списку
/Фильтрация списка
yКопирование пути выбранного файла
xУдаление выбранной заметки; повторное нажатие подтверждает действие
tПереключение памяти между включённым и выключенным состояниями
EscЗакрытие окна

Окно позволяет удалять отдельные заметки и файлы сессий, но не сгенерированные индексные файлы MEMORY.md — ни глобальный, ни проектный.

Можно также редактировать данные напрямую: файлы находятся в ~/.grok/memory/ и открываются обычным редактором. Изменения отслеживаются: новые и отредактированные файлы переиндексируются, а удалённые исключаются из индекса при следующем поиске.

Запрос «забудь про snake_case» может сработать не полностью: модель попытается найти и удалить подходящие записи, но способна пропустить часть из них. Если нужно гарантированно удалить конкретную информацию, открой файл — его путь можно скопировать клавишей y в окне /memory — и удали нужную запись вручную. Очистить всё хранилище можно командами: grok memory clear удалит проектную память, grok memory clear --global — глобальную, а grok memory clear --all — обе.

Чем память отличается от репозиторного файла инструкций?

Ключевое

Репозиторные инструкции, например CLAUDE.md или AGENTS.md, пишешь ты и добавляешь в проект, чтобы передавать команде через Git. Память Grok Build агент формирует самостоятельно и держит за пределами репозитория, в ~/.grok/memory/; это личные данные, которые не попадают к другим через Git.

Инструкция в репозитории видна всем участникам проекта, хранится вместе с кодом и отражается в истории изменений. Память накапливается в ходе сессий на твоём компьютере и автоматически никуда не отправляется.

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

Похожая тема рассмотрена в материале о различии между памятью Claude и CLAUDE.md. Сопоставление инструментов доступно в обзоре Grok Build и Claude Code.

Ограничения и проверка памяти

Ключевое

Память пока считается экспериментальной, поэтому команды и параметры могут измениться. Чтобы заметки загрузились при первом ходе новой сессии после включения, запусти /new. Поскольку часть сведений обрабатывает модель, периодически проверяй содержимое памяти и не поручай ей сохранение секретов.

Помни об ограничениях:

  • Экспериментальная функция. Команды, пороговые значения и поведение могут измениться в будущих версиях. Если что-то работает иначе, проверь руководство по памяти в репозитории.
  • Заметки загружаются в начале новой сессии. После включения памяти запусти /new, чтобы сведения добавились при первом ходе.
  • Важность сведений оценивает модель. Модель составляет резюме для /flush и выбирает, что сохранить. Раз в одну-две недели просматривай /memory и удаляй ненужное.
  • Не сохраняй секреты. Ключи, токены и пароли не следует помещать в долгосрочные заметки: файлы в ~/.grok/memory/ хранятся в открытом виде. Если чувствительная информация всё же попала туда, удали её непосредственно из файла.
  • Память общая для копий одного репозитория. Учитывай это при очистке, если сведения, сохранённые агентом в одном клоне, перестали подходить для другого.

Если функция ведёт себя не так, как ожидается:

  1. Проверь результат grok inspect и убедись, что память активна.
  2. Удостоверься, что GROK_MEMORY=0 и настройки конфигурации её не отключают.
  3. Для диагностики запусти RUST_LOG=debug GROK_LOG_FILE=/tmp/grok.log grok, затем найди сообщения о memory в /tmp/grok.log.

Краткое резюме

Активировать память Grok Build можно переменной GROK_MEMORY=1 либо настройкой [memory] enabled = true в ~/.grok/config.toml. Чтобы после включения заметки загрузились с самого начала, запусти новую сессию с помощью /new. Файлы размещаются в ~/.grok/memory/: автоматические сводки создаются без вызова модели, подробные резюме — через /flush, явные заметки — командой /remember после твоего подтверждения, а /dream группирует накопленные записи по темам. Для просмотра и очистки используй /memory или редактируй файлы напрямую. Функция экспериментальная, так что проверяй актуальные команды и параметры по официальному руководству и время от времени просматривай заметки.

Источники

Перейти на Ailoot.

Подробнее

Вопросы и ответы

Почему после включения памяти не появились сохранённые заметки?

Заметки добавляются на первом ходе новой сессии. После включения начните новую сессию и проверьте состояние через grok inspect. Процесс с GROK_MEMORY=0 не сможет включить память переключателем сессии.

Удаляет ли отключение памяти её файлы?

Нет. Оно убирает доступ к инструментам памяти, но Markdown-заметки остаются на диске. Чтобы удалить запись, отдельно изучите или измените сохранённые заметки.

Все статьи