В прошлом уроке контекст был абстракцией: где-то есть окно, оно чем-то заполняется, при переполнении становится хуже. Работать с абстракцией неудобно — непонятно, когда вмешиваться и что именно чистить.
Команда /context превращает абстракцию в цифры. Она показывает живую картину текущей сессии: сколько токенов занято, чем именно, сколько осталось свободного места. С этой картиной решения перестают быть догадками: вы видите, что половину окна съел один разросшийся файл инструкций, или что вы прошли три четверти окна и пора освобождать место, — и действуете по факту, а не по ощущению.
Что уже умеем / что добавим
Вы знаете, что контекстное окно ограничено, что оно заполняется стартовыми инструкциями и всем, что делает агент, и что переполнение ухудшает результат. Теперь научимся это измерять: разберём вывод /context, поймём, что означает каждая категория, и научимся по цифрам определять момент для вмешательства.
Что вы узнаете в рамках статьи
- Как вызывается
/contextи что показывает её вывод - Какие категории расхода она выделяет и что означает каждая
- Как по выводу команды понять, что именно съедает окно
- Как проверить, что нужный файл инструкций действительно загрузился
- Какие пороги заполнения считать сигналом к действию
Ключевые термины
/context— slash-команда, показывающая текущее использование контекстного окна в виде цветной сетки с разбивкой по категориям и подсказками по оптимизации.- Memory files — раздел вывода
/context, перечисляющий файлы инструкций, которые фактически загрузились в текущую сессию. - Свободное место (free space) — часть окна, ещё не занятая содержимым; в неё помещается дальнейшая работа агента.
- Системный промпт — базовые инструкции модели о поведении и инструментах, загружаемые первыми и не входящие в историю сообщений.
- Определения инструментов — описания доступных агенту инструментов; занимают часть окна ещё до начала работы.
- Порог автосжатия — уровень заполнения окна, при достижении которого Claude Code автоматически сжимает историю.
Как вызвать и что увидеть
Команда набирается прямо в приглашении сессии:
> /context
Ответ появляется мгновенно и не расходует запрос к модели: Claude Code считает всё локально по тому, что сам же собирается отправить. Это важное свойство — командой можно пользоваться сколько угодно часто, она ничего не стоит.
Вывод состоит из цветной сетки, изображающей окно целиком, и списка категорий под ней. Каждая категория окрашена в свой цвет, и по площади её блока в сетке видно долю от окна. Рядом Claude Code выводит подсказки по оптимизации: предупреждает о разросшихся файлах памяти, о слишком «тяжёлых» инструментах и о приближении к пределу.
Если разговор уже превысил окно, в вывод добавляется предупреждение с тем, насколько вы вышли за предел, и указанием, какая команда освободит место.
У команды есть аргумент:
> /context all
В полноэкранном режиме /context сворачивает подробную разбивку по элементам, чтобы сетка оставалась видна. Аргумент all разворачивает её обратно.
Что означают категории
Разбивка делит занятое место по источникам. Типичные категории и их смысл:
Системный промпт. Базовые инструкции о поведении, использовании инструментов и формате ответов. Величина фиксированная, вы на неё не влияете, кроме как через обновление версии инструмента.
Определения инструментов. Описания того, что агент умеет вызывать. Здесь возможна оптимизация: чем больше внешних инструментов подключено, тем больше эта категория. По умолчанию описания подключаемых внешних инструментов загружаются не полностью, а по требованию, поэтому в базовой конфигурации категория невелика.
Memory files. Файлы инструкций, которые загрузились в сессию: пользовательский ~/.claude/CLAUDE.md, проектный CLAUDE.md, автопамять. Это самая полезная для диагностики категория — о ней ниже.
Сообщения. Ваши промпты и ответы Claude. Обычно скромная величина.
Результаты вызова инструментов. Содержимое прочитанных файлов, вывод команд, результаты поиска. В рабочей сессии это, как правило, крупнейшая категория.
Свободное место. Остаток окна. Именно за этой цифрой стоит следить.
Проверка загруженных инструкций
У раздела Memory files есть отдельное практическое применение, которое стоит запомнить сразу: это единственный надёжный способ убедиться, что ваш файл инструкций действительно попал в сессию.
Ситуация встречается постоянно: разработчик создал CLAUDE.md, записал в него правила, а Claude их игнорирует. Причин может быть две — либо инструкция сформулирована размыто, либо файл вообще не загрузился. Разбираться в формулировках, пока не проверена загрузка, бессмысленно.
# Проверить, что файл существует на диске
ls -la CLAUDE.md
# Проверить, что он загрузился в текущую сессию
> /context
# смотрим раздел Memory files
Если файла нет в списке Memory files, Claude его не видит, и никакая доработка текста не поможет. Проверьте расположение файла и перезапустите сессию: правки в проектном CLAUDE.md не применяются на лету — он читается один раз при старте, и новое содержимое подхватится только при следующем запуске или после очистки контекста.
Как читать цифры и когда действовать
Абсолютные значения сами по себе мало о чём говорят. Полезны отношения и динамика.
Первое, на что смотреть, — доля свободного места. Пока свободно больше половины окна, поводов для беспокойства нет. Когда свободного остаётся четверть, стоит осознанно решить, что делать: доводить текущую задачу до конца или освобождать место сейчас, в удобный момент, а не когда автосжатие сработает посреди сложного шага.
Второе — соотношение категорий. Если результаты вызова инструментов занимают в разы больше, чем всё остальное, это норма для рабочей сессии. А вот раздутые Memory files — сигнал проблемы: файл инструкций на несколько тысяч токенов платится в каждой сессии по этому проекту и при этом хуже соблюдается, потому что важные правила теряются в объёме.
Третье — динамика. Полезная привычка: вызвать /context в начале работы и повторить после крупного шага. Разница покажет, во что реально обошлось действие. Часто выясняется, что одна невинная просьба «прогони тесты» стоила больше, чем весь предыдущий диалог.
# В начале задачи
> /context
# Свободно: 96%
# После того как агент исследовал модуль и прогнал тесты
> /context
# Свободно: 71%
# Вывод: один шаг исследования стоил примерно четверть окна
Частые ошибки
- Судить о загрузке
CLAUDE.mdпо наличию файла на диске. Файл может лежать в месте, которое не загружается для текущей рабочей директории. Единственная надёжная проверка — раздел Memory files в выводе/context. - Править
CLAUDE.mdпосреди сессии и ждать эффекта сразу. Проектный и пользовательский файлы читаются один раз при старте. Новая редакция вступит в силу после перезапуска сессии или очистки контекста, а не мгновенно. - Вызывать
/contextтолько когда уже стало плохо. К этому моменту решать приходится в спешке. Проверка в спокойный момент, между задачами, даёт возможность освободить место без потерь. - Игнорировать подсказки по оптимизации в выводе команды. Claude Code сам указывает на разросшиеся файлы памяти и тяжёлые инструменты. Это готовый список того, что стоит починить.
Наиболее частые вопросы
- Расходует ли сам вызов
/contextтокены? — Нет, подсчёт локальный, запроса к модели не происходит. Вызывайте команду столько раз, сколько нужно. - Почему свободного места меньше, чем я ожидал по своим сообщениям? — Потому что ваши сообщения — наименьшая часть расхода. Основной объём дают чтения файлов, вывод команд и стартовые инструкции.
- Что делать, если Memory files занимают слишком много? — Сократить файлы инструкций до фактов, которые нужны в каждой сессии. Разрастание
CLAUDE.mdвредит дважды: съедает окно и снижает соблюдение правил. /contextпоказал, что окно почти заполнено. Что дальше? — Освободить место: либо начать новую сессию, либо сжать историю в сводку. Разбору этих двух путей посвящён следующий урок.- Совпадёт ли вывод
/contextу меня и у коллеги на том же проекте? — Нет. Категория Memory files зависит от личных файлов инструкций, а результаты вызова инструментов — от того, что каждый из вас делал в своей сессии.
Итоги
Отличная работа: контекст перестал быть чем-то, о чём можно только догадываться. Теперь у вас есть измерительный прибор — вы умеете вызывать /context, читать разбивку по категориям, отличать нормальное распределение от проблемного и проверять, что файлы инструкций действительно загрузились. Привычка заглядывать в эту команду между задачами окупается быстро: она превращает управление контекстом из реакции на проблемы в спокойное планирование.
Измерять научились — осталось научиться действовать. В следующем уроке разберём два инструмента освобождения места, /clear и /compact: чем они принципиально отличаются, что переживает сжатие, а что теряется навсегда, и как выбрать между ними в конкретной ситуации.