Перейти к основному содержанию
“Контекст” — это все, что OpenClaw отправляет модели для запуска. Он ограничен окном контекста модели (лимитом токенов). Ментальная модель для начинающих:
  • Системный промпт (созданный OpenClaw): правила, инструменты, список Skills, время/среда выполнения и внедренные файлы рабочей области.
  • История разговора: ваши сообщения + сообщения ассистента в этой сессии.
  • Вызовы/результаты инструментов + вложения: вывод команд, чтение файлов, изображения/аудио и т. д.
Контекст — это не то же самое, что “память”: память может храниться на диске и загружаться позже; контекст — это то, что находится в текущем окне модели.

Быстрый старт (просмотр контекста)

  • /status → быстрый вид “насколько заполнено мое окно?” + настройки сессии.
  • /context list → что внедрено + примерные размеры (по файлам + итоги).
  • /context detail → более подробная разбивка: размеры по файлам, по схемам инструментов, по записям Skills, размер системного промпта и количество сообщений стенограммы, доступных для Compaction.
  • /context map → изображение древовидной карты в стиле WinDirStat с текущими отслеживаемыми вкладчиками контекста сессии.
  • /usage tokens → добавлять футер использования по токенам к обычным ответам.
  • /compact → суммировать старую историю в компактную запись, чтобы освободить место в окне.
См. также: Слеш-команды, Использование токенов и затраты, Compaction.

Пример вывода

Значения зависят от модели, провайдера, политики инструментов и содержимого вашей рабочей области.

/context list

🧠 Context breakdown
Workspace: <workspaceDir>
Bootstrap max/file: 12,000 chars
Sandbox: mode=non-main sandboxed=false
System prompt (run): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))

Injected workspace files:
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
- IDENTITY.md: OK | raw 211 chars (~53 tok) | injected 211 chars (~53 tok)
- USER.md: OK | raw 388 chars (~97 tok) | injected 388 chars (~97 tok)
- HEARTBEAT.md: MISSING | raw 0 | injected 0
- BOOTSTRAP.md: OK | raw 0 chars (~0 tok) | injected 0 chars (~0 tok)

Skills list (system prompt text): 2,184 chars (~546 tok) (12 skills)
Tools: read, edit, write, exec, process, browser, message, sessions_send, …
Tool list (system prompt text): 1,032 chars (~258 tok)
Tool schemas (JSON): 31,988 chars (~7,997 tok) (counts toward context; not shown as text)
Tools: (same as above)

Session tokens (cached): 14,250 total / ctx=32,000

/context detail

🧠 Context breakdown (detailed)

Top skills (prompt entry size):
- frontend-design: 412 chars (~103 tok)
- oracle: 401 chars (~101 tok)
… (+10 more skills)

Top tools (schema size):
- browser: 9,812 chars (~2,453 tok)
- exec: 6,240 chars (~1,560 tok)
… (+N more tools)

/context map

Отправляет изображение, сгенерированное из последнего кэшированного отчета о запуске. До того как обычное сообщение создаст отчет о запуске в сессии, /context map возвращает сообщение о недоступности вместо отрисовки оценки. Площадь прямоугольника пропорциональна отслеживаемому числу символов промпта:
  • внедренные файлы рабочей области
  • базовый текст системного промпта
  • записи промптов Skills
  • JSON-схемы инструментов
/context list, /context detail и /context json все еще могут просматривать оценку по запросу, когда отчет о запуске не кэширован.

Что учитывается в окне контекста

Учитывается все, что получает модель, включая:
  • Системный промпт (все разделы).
  • Историю разговора.
  • Вызовы инструментов + результаты инструментов.
  • Вложения/стенограммы (изображения/аудио/файлы).
  • Сводки Compaction и артефакты обрезки.
  • “Обертки” провайдера или скрытые заголовки (не видны, но все равно учитываются).

Как OpenClaw строит системный промпт

Системный промпт принадлежит OpenClaw и перестраивается при каждом запуске. Он включает:
  • Список инструментов + краткие описания.
  • Список Skills (только метаданные; см. ниже).
  • Расположение рабочей области.
  • Время (UTC + преобразованное время пользователя, если настроено).
  • Метаданные среды выполнения (хост/ОС/модель/мышление).
  • Внедренные bootstrap-файлы рабочей области в разделе Контекст проекта.
Полная разбивка: Системный промпт.

Внедренные файлы рабочей области (Контекст проекта)

По умолчанию OpenClaw внедряет фиксированный набор файлов рабочей области (если они есть):
  • AGENTS.md
  • SOUL.md
  • TOOLS.md
  • IDENTITY.md
  • USER.md
  • HEARTBEAT.md
  • BOOTSTRAP.md (только при первом запуске)
Большие файлы усекаются пофайлово с использованием agents.defaults.bootstrapMaxChars (по умолчанию 20000 символов). OpenClaw также применяет общий лимит внедрения bootstrap по всем файлам через agents.defaults.bootstrapTotalMaxChars (по умолчанию 60000 символов). /context показывает размеры исходный против внедренного и было ли усечение. Когда происходит усечение, среда выполнения может внедрить блок предупреждения прямо в промпт в разделе Контекст проекта. Настройте это через agents.defaults.bootstrapPromptTruncationWarning (off, once, always; по умолчанию always).

Skills: внедренные и загружаемые по запросу

Системный промпт включает компактный список Skills (имя + описание + расположение). У этого списка есть реальная накладная стоимость. Инструкции Skills не включаются по умолчанию. Ожидается, что модель выполнит read для SKILL.md нужного Skills только при необходимости.

Инструменты: есть две стоимости

Инструменты влияют на контекст двумя способами:
  1. Текст списка инструментов в системном промпте (то, что вы видите как “Инструментарий”).
  2. Схемы инструментов (JSON). Они отправляются модели, чтобы она могла вызывать инструменты. Они учитываются в контексте, хотя вы не видите их как обычный текст.
/context detail разбивает самые большие схемы инструментов, чтобы вы могли увидеть, что доминирует.

Команды, директивы и “встроенные сокращения”

Слеш-команды обрабатываются Gateway. Есть несколько разных вариантов поведения:
  • Отдельные команды: сообщение, состоящее только из /..., выполняется как команда.
  • Директивы: /think, /verbose, /trace, /reasoning, /elevated, /model, /queue удаляются до того, как модель увидит сообщение.
    • Сообщения, состоящие только из директив, сохраняют настройки сессии.
    • Встроенные директивы в обычном сообщении действуют как подсказки для конкретного сообщения.
  • Встроенные сокращения (только для отправителей из allowlist): определенные токены /... внутри обычного сообщения могут выполниться сразу (пример: “эй /status”) и удаляются до того, как модель увидит оставшийся текст.
Подробности: Слеш-команды.

Сессии, Compaction и обрезка (что сохраняется)

То, что сохраняется между сообщениями, зависит от механизма:
  • Обычная история сохраняется в стенограмме сессии, пока не будет compacted/обрезана политикой.
  • Compaction сохраняет сводку в стенограмму и оставляет последние сообщения без изменений.
  • Обрезка удаляет старые результаты инструментов из промпта в памяти, чтобы освободить место в окне контекста, но не переписывает стенограмму сессии — полная история все еще доступна для просмотра на диске.
Документация: Сессия, Compaction, Обрезка сессии. По умолчанию OpenClaw использует встроенный контекстный движок legacy для сборки и Compaction. Если вы установите Plugin, который предоставляет kind: "context-engine", и выберете его через plugins.slots.contextEngine, OpenClaw делегирует сборку контекста, /compact и связанные хуки жизненного цикла контекста subagent этому движку. ownsCompaction: false не выполняет автоматический fallback к движку legacy; активный движок все равно должен корректно реализовывать compact(). См. Контекстный движок для полного подключаемого интерфейса, хуков жизненного цикла и конфигурации.

Что на самом деле сообщает /context

/context предпочитает последний отчет системного промпта, собранный при запуске, когда он доступен:
  • System prompt (run) = захвачен из последнего встроенного запуска (с поддержкой инструментов) и сохранен в хранилище сессии.
  • System prompt (estimate) = вычисляется на лету, когда отчета о запуске нет (или при запуске через CLI-бэкенд, который не генерирует отчет).
В любом случае он сообщает размеры и основных вкладчиков; он не выводит полный системный промпт или схемы инструментов. В подробном режиме он также сравнивает стенограмму сессии с тем же предикатом сообщений реального разговора, который используется Compaction, поэтому высокое использование промпта/кэша легче отличить от истории разговора, доступной для Compaction.

Связанные материалы

Контекстный движок

Пользовательское внедрение контекста через plugins.

Compaction

Суммирование длинных разговоров, чтобы удерживать их внутри окна модели.

Системный промпт

Как строится системный промпт и что он внедряет на каждом ходе.

Цикл агента

Полный цикл выполнения агента от входящего сообщения до финального ответа.