Fundamentals
Контекст
«Контекст» — это всё, что OpenClaw отправляет модели для выполнения запуска. Его объём ограничен контекстным окном модели (лимитом токенов).
Упрощённая модель для начинающих:
- Системный промпт (создаётся OpenClaw): правила, инструменты, список Skills, сведения о времени и среде выполнения, а также внедрённые файлы рабочего пространства.
- История диалога: ваши сообщения + сообщения ассистента в этом сеансе.
- Вызовы и результаты инструментов + вложения: вывод команд, прочитанные файлы, изображения, аудио и т. д.
Контекст — не то же самое, что «память»: память можно хранить на диске и загружать позже, а контекст — это содержимое текущего окна модели.
Быстрый старт (проверка контекста)
/status→ быстрый просмотр заполненности окна и настроек сеанса./context list→ что внедрено и примерные размеры (для каждого файла и суммарно)./context detail→ подробная разбивка: размеры каждого файла, схем каждого инструмента, записей каждого навыка и системного промпта, а также количество сообщений стенограммы, доступных для Compaction./context map→ изображение в виде древовидной карты наподобие WinDirStat, показывающее отслеживаемые источники контекста текущего сеанса./usage tokens→ добавлять к обычным ответам нижний колонтитул со статистикой использования для каждого ответа./compact→ свести старую историю в компактную запись, чтобы освободить место в окне.
См. также: Команды с косой чертой, Использование токенов и расходы, Compaction.
Пример вывода
Значения зависят от модели, провайдера, политики инструментов и содержимого рабочего пространства.
/context list
🧠 Разбивка контекстаРабочее пространство: <workspaceDir>Максимум начальной загрузки на файл: 12,000 charsПесочница: mode=non-main sandboxed=falseСистемный промпт (запуск): 38,412 chars (~9,603 tok) (Контекст проекта: 23,901 chars (~5,976 tok)) Внедрённые файлы рабочего пространства:- AGENTS.md: OK | исходный размер 1,742 chars (~436 tok) | внедрено 1,742 chars (~436 tok)- SOUL.md: OK | исходный размер 912 chars (~228 tok) | внедрено 912 chars (~228 tok)- TOOLS.md: TRUNCATED | исходный размер 54,210 chars (~13,553 tok) | внедрено 20,962 chars (~5,241 tok)- IDENTITY.md: OK | исходный размер 211 chars (~53 tok) | внедрено 211 chars (~53 tok)- USER.md: OK | исходный размер 388 chars (~97 tok) | внедрено 388 chars (~97 tok)- HEARTBEAT.md: MISSING | исходный размер 0 | внедрено 0- BOOTSTRAP.md: OK | исходный размер 0 chars (~0 tok) | внедрено 0 chars (~0 tok) Список Skills (текст системного промпта): 2,184 chars (~546 tok) (12 навыков)Инструменты: read, edit, write, exec, process, browser, message, sessions_send, …Список инструментов (текст системного промпта): 1,032 chars (~258 tok)Схемы инструментов (JSON): 31,988 chars (~7,997 tok) (учитываются в контексте; не отображаются как текст)Инструменты: (те же, что указаны выше) Токены сеанса (кэшированные): всего 14,250 / ctx=32,000/context detail
🧠 Разбивка контекста (подробная)…Крупнейшие Skills (размер записи промпта):- frontend-design: 412 chars (~103 tok)- oracle: 401 chars (~101 tok)… (+ещё 10 навыков) Крупнейшие инструменты (размер схемы):- browser: 9,812 chars (~2,453 tok)- exec: 6,240 chars (~1,560 tok)… (+ещё N инструментов)/context map
Отправляет изображение, созданное на основе последнего кэшированного отчёта о запуске и стенограммы сеанса. Пока обычное сообщение не сформирует отчёт о запуске в этом сеансе, /context map вместо приблизительной визуализации возвращает сообщение о недоступности. Площадь прямоугольника пропорциональна количеству отслеживаемых символов промпта:
- стенограмма диалога (сообщения пользователя, ответы ассистента, результаты инструментов, сводки Compaction), а также контекст среды выполнения каждого хода и добавления промпта от хуков, поступающие только модели
- внедрённые файлы рабочего пространства
- текст базового системного промпта
- записи промптов навыков
- JSON-схемы инструментов
Группа диалога увеличивается по мере продолжения сеанса, поэтому карта меняется от хода к ходу; после Compaction она сворачивается в плитку со сводками.
/context list, /context detail и /context json по-прежнему могут получить оценку по запросу, если отчёт о запуске не кэширован.
Что учитывается в контекстном окне
Учитывается всё, что получает модель, включая:
- Системный промпт (все разделы).
- Историю диалога.
- Вызовы инструментов + результаты инструментов.
- Вложения и стенограммы (изображения, аудио, файлы).
- Сводки Compaction и артефакты очистки.
- «Обёртки» провайдера или скрытые заголовки (не видны, но всё равно учитываются).
Как OpenClaw формирует системный промпт
Системный промпт принадлежит OpenClaw и формируется заново при каждом запуске. Он включает:
- Список инструментов + краткие описания.
- Список Skills (только метаданные; см. ниже).
- Расположение рабочего пространства.
- Время (UTC + преобразованное местное время пользователя, если настроено).
- Метаданные среды выполнения (хост, ОС, модель, режим рассуждения).
- Внедрённые файлы начальной загрузки рабочего пространства в разделе Контекст проекта.
Полная разбивка: Системный промпт.
Внедрённые файлы рабочего пространства (Контекст проекта)
По умолчанию OpenClaw внедряет фиксированный набор файлов рабочего пространства (если они существуют):
AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(только при первом запуске)
Большие файлы обрезаются по отдельности с использованием agents.defaults.bootstrapMaxChars (по умолчанию 20000 символов). OpenClaw также применяет общий лимит внедрения начальной загрузки для всех файлов с помощью agents.defaults.bootstrapTotalMaxChars (по умолчанию 60000 символов). /context показывает исходный и внедрённый размеры, а также факт обрезки.
При обрезке среда выполнения может внедрить в промпт блок предупреждения в разделе «Контекст проекта». Это настраивается с помощью agents.defaults.bootstrapPromptTruncationWarning (off, once, always; по умолчанию always).
Skills: внедрение и загрузка по запросу
Системный промпт включает компактный список Skills (имя + описание + расположение). Этот список создаёт реальные накладные расходы.
Инструкции навыка по умолчанию не включаются. Предполагается, что модель выполнит read для файла SKILL.md навыка только при необходимости.
Инструменты: два вида затрат
Инструменты влияют на контекст двумя способами:
- Текст списка инструментов в системном промпте (то, что отображается как «Инструменты»).
- Схемы инструментов (JSON). Они отправляются модели, чтобы она могла вызывать инструменты. Они учитываются в контексте, хотя вы не видите их как обычный текст.
/context detail показывает крупнейшие схемы инструментов, чтобы было видно, какие из них занимают больше всего места.
Команды, директивы и «встроенные сокращения»
Команды с косой чертой обрабатываются Gateway. Возможны несколько вариантов поведения:
- Самостоятельные команды: сообщение, содержащее только
/..., выполняется как команда. - Директивы:
/think,/fast,/verbose,/trace,/reasoning,/elevated,/exec,/model,/queueудаляются до того, как модель увидит сообщение.- Сообщения, содержащие только директивы, сохраняют настройки сеанса.
- Встроенные директивы в обычном сообщении действуют как подсказки для конкретного сообщения.
- Встроенные сокращения (только для отправителей из списка разрешённых): некоторые токены
/...внутри обычного сообщения могут выполняться немедленно (пример: «привет /status») и удаляются до того, как модель увидит оставшийся текст.
Подробнее: Команды с косой чертой.
Сеансы, Compaction и очистка (что сохраняется)
То, что сохраняется между сообщениями, зависит от механизма:
- Обычная история сохраняется в стенограмме сеанса, пока не будет обработана Compaction или очищена в соответствии с политикой.
- Compaction сохраняет сводку в стенограмме и оставляет последние сообщения без изменений.
- Очистка удаляет старые результаты инструментов из промпта в памяти, освобождая место в контекстном окне, но не перезаписывает стенограмму сеанса — полную историю по-прежнему можно просмотреть на диске.
Документация: Сеанс, Compaction, Очистка сеанса.
По умолчанию OpenClaw использует встроенный движок контекста legacy для сборки и
Compaction. Если вы установите плагин, предоставляющий kind: "context-engine", и
выберете его с помощью plugins.slots.contextEngine, OpenClaw передаст этому движку
сборку контекста, /compact и связанные хуки жизненного цикла контекста субагентов.
ownsCompaction: false не выполняет автоматический откат к устаревшему
движку; активный движок всё равно должен корректно реализовывать compact(). Полное описание
подключаемого интерфейса, хуков жизненного цикла и конфигурации см. в разделе
Движок контекста.
Что на самом деле сообщает /context
/context при наличии предпочитает последний отчёт о системном промпте, сформированный во время запуска:
System prompt (run)= получен из последнего встроенного запуска (с поддержкой инструментов) и сохранён в хранилище сеанса.System prompt (estimate)= вычисляется на лету, если отчёта о запуске нет (или при работе через серверную часть CLI, которая не создаёт такой отчёт).
В обоих случаях сообщаются размеры и крупнейшие источники; полный системный промпт и схемы инструментов не выводятся. В подробном режиме стенограмма сеанса также сравнивается с использованием того же предиката реальных сообщений диалога, который применяется при Compaction, поэтому высокое использование промпта или кэша проще отличить от истории диалога, доступной для Compaction.
Связанные разделы
Пользовательское внедрение контекста с помощью плагинов.
Сведение длинных диалогов в сводки, чтобы они помещались в окно модели.
Как формируется системный промпт и что он внедряет на каждом ходу.
Полный цикл выполнения агента: от входящего сообщения до окончательного ответа.