AmigaОбучение ИИ
Модуль 2 · Рабочий процесс · урок 6 из 13

Управление контекстом

10 мин чтения▶ есть видеоверсия

Почти все рекомендации по работе с Claude Code сводятся к одному ограничению: контекстное окно заполняется быстро, а по мере заполнения качество ответов падает. Агент начинает «забывать» инструкции из начала разговора и чаще ошибается. В этом уроке — что занимает окно, как это увидеть и какие команды держат его в порядке.

Что лежит в окне

Ещё до вашего первого сообщения в контекст загружается заметный объём: системные инструкции, содержимое CLAUDE.md, первые строки автоматической памяти, сведения об окружении и git, однострочные описания навыков, имена инструментов подключённых MCP-серверов. Полные схемы MCP-инструментов по умолчанию откладываются и подгружаются, когда агент решает воспользоваться конкретным инструментом.

Дальше окно растёт с каждым шагом: ваши сообщения, ответы агента, содержимое каждого прочитанного файла, вывод каждой команды. Прочитать тестовый файл на 400 строк — несколько тысяч токенов. Прогнать тесты с многословным выводом — ещё столько же. Разбор одного бага легко съедает десятки тысяч.

Команда /context показывает текущее распределение по категориям и список загруженных файлов памяти. Заглядывайте в неё, когда агент начинает вести себя странно, — часто причина видна сразу.

Что происходит при заполнении

Claude Code сжимает контекст автоматически, когда окно приближается к пределу. Сначала он убирает старые результаты инструментов, затем заменяет разговор структурированным резюме. После сжатия системные инструкции, CLAUDE.md, память и MCP-инструменты загружаются заново; агент также перечитывает до пяти последних изменённых файлов и восстанавливает навыки, которые вы вызывали.

Что теряется: подробные инструкции, данные только в переписке, промежуточные рассуждения, содержимое файлов, которые агент читал давно. Отсюда главное правило: инструкции, которые должны действовать всю сессию, живут в CLAUDE.md, а не в первом сообщении. Если после сжатия агент «забыл» правило, значит, оно было только в разговоре.

Порог автосжатия можно сдвинуть командой /autocompact с числом токенов. Модели последних поколений поддерживают окно в миллион токенов, но большое окно — не замена дисциплине: стоимость каждого запроса растёт с размером контекста, а качество всё равно снижается по мере заполнения.

Инструменты управления

/clear — начать новый разговор с пустым контекстом. CLAUDE.md и память при этом остаются. Это главная команда: используйте её между несвязанными задачами. Документация описывает типичную ошибку — «сессия-помойка»: начали с одной задачи, спросили о другой, вернулись к первой; контекст полон нерелевантного. Лекарство — /clear перед каждой новой задачей. Перед очисткой можно дать сессии имя через /rename, чтобы потом вернуться к ней через /resume.

/compact — сжать текущий разговор в резюме, не теряя нить. Полезно перед длинной новой подзадачей в рамках той же работы. Команда принимает инструкцию, что сохранить:

text
/compact сохрани список изменённых файлов и команды для запуска тестов

Без фокуса резюме составляется по общим правилам, и агент может выкинуть то, что вам важно. С фокусом — вы решаете. Постоянные пожелания к сжатию можно записать в CLAUDE.md отдельным разделом «Compact instructions».

/rewind (или двойной Esc) — не только откат. В меню контрольных точек есть варианты «Summarize from here» и «Summarize up to here»: сжать разговор от выбранного сообщения вперёд или, наоборот, всё до него. Так можно оставить последние шаги в полном виде, а старую часть ужать.

/btw — задать побочный вопрос, ответ на который не попадёт в историю. «Что делает флаг --frozen-lockfile?» — не повод раздувать контекст рабочей сессии.

/usage (синоним /cost) — статистика по токенам за сессию. Для подписчиков важнее, что она показывает, какие навыки, субагенты и MCP-серверы съедают больше всего.

Субагенты как способ разгрузки

Исследование большого проекта — это десятки прочитанных файлов в вашем контексте. Субагент делает то же самое в своём отдельном окне и возвращает только выводы:

text
используй субагента, чтобы разобраться, как в проекте обрабатывается
обновление токена, и есть ли готовые утилиты для OAuth

То же с многословными операциями: прогон тестов с длинным выводом, чтение документации, разбор логов. Всё это можно отдать субагенту, и в основной разговор вернётся резюме. Подробнее — в уроке про субагентов.

Что ещё раздувает контекст

Расплывчатые запросы. «Улучши эту кодовую базу» запускает широкое сканирование. «Добавь валидацию в функцию логина в auth.ts» — минимум чтения.

Нескопированные исследования. «Разберись, как работает X» без границ — агент прочитает сотни файлов. Ограничивайте область или используйте субагента.

Повторные поправки. После второй неудачной поправки по одному вопросу контекст засорён неудачными попытками. Документация однозначна: /clear и новый промпт с учётом того, что вы поняли. Чистая сессия с хорошим промптом почти всегда лучше длинной с накопленными исправлениями.

Длинный CLAUDE.md. Он загружается каждую сессию. Инструкции для конкретных сценариев (ревью PR, миграции базы) лучше вынести в навыки, которые загружаются по запросу. Документация советует держать CLAUDE.md в пределах 200 строк.

Лишние MCP-серверы. Даже с отложенной загрузкой схем каждый сервер добавляет имена инструментов и свои инструкции. /mcp покажет подключённые серверы; отключите те, что не нужны в этом проекте. Для GitHub, AWS и подобных сервисов CLI-утилиты вроде gh экономнее по контексту, чем MCP-сервер.

Между сессиями

Каждая сессия начинается с чистого окна, но сама переписка сохраняется локально. claude --continue продолжает последнюю сессию в текущей папке, claude --resume открывает список. Внутри сессии — /resume. Именуйте сессии по задачам (/rename oauth-migration) и относитесь к ним как к веткам: у каждой задачи свой контекст.

Хорошая привычка для длинных задач: в конце дня попросить агента записать состояние работы в файл (NOTES.md или задачу в трекере) — что сделано, что осталось, какие команды запускать. На следующий день новая сессия начнётся с чтения этого файла, а не с восстановления контекста из памяти.

Попробуйте сами

10–15 мин на рабочем месте
  1. В начале сессии наберите /context и запишите цифры. Поработайте полчаса над реальной задачей и повторите. Посмотрите, что выросло больше всего.
  2. Попробуйте /compact с фокусом перед новой подзадачей и после этого спросите агента, какие файлы вы изменили. Проверьте, сохранилось ли то, что вы просили сохранить.
  3. Поручите исследование субагенту и сравните /context до и после с тем, что было бы при прямом чтении файлов.

Коротко

  • Окно заполняется быстро, и качество падает по мере заполнения. Это главное ограничение при работе с агентом.
  • /context показывает, чем занято окно; /usage — расход токенов.
  • /clear между несвязанными задачами; /compact с фокусом — внутри одной задачи.
  • Постоянные инструкции — в CLAUDE.md: после сжатия они загружаются заново, а переписка — нет.
  • Исследования и многословные операции — субагентам; побочные вопросы — через /btw.
  • После двух неудачных поправок — /clear и новый промпт.

Видеоверсия

Сценарий озвучки · 476 слов, ≈ 4 мин

Почти все рекомендации по работе с Claude Code сводятся к одному ограничению: контекстное окно заполняется быстро, а по мере заполнения качество ответов падает. В этом ролике разберём, что занимает окно, как это увидеть и как держать его в порядке.

Ещё до первого сообщения в контекст попадает заметный объём: системные инструкции, файл клод-эм-дэ, первые строки автоматической памяти, описания навыков, имена инструментов подключённых серверов. Дальше окно растёт с каждым шагом: ваши сообщения, ответы, каждый прочитанный файл, вывод каждой команды. Тестовый файл на четыреста строк — несколько тысяч токенов. Прогон тестов — ещё столько же. Разбор одного бага легко съедает десятки тысяч.

Посмотреть распределение можно командой «контекст». Заглядывайте в неё, когда агент начинает вести себя странно — причина часто видна сразу.

Что происходит, когда место кончается? Claude Code сжимает контекст автоматически. Сначала убирает старые результаты инструментов, потом заменяет разговор структурированным резюме. Системные инструкции и файл клод-эм-дэ загружаются заново. А вот подробные инструкции, которые вы дали только в переписке, могут потеряться. Отсюда главное правило: постоянные инструкции — в файл, а не в первое сообщение.

Теперь команды. Первая и главная — «клир»: новый разговор с пустым контекстом. Файл с инструкциями и память остаются. Используйте её между несвязанными задачами. Документация описывает типичную ошибку — сессия-помойка: начали одно, спросили о другом, вернулись к первому, и контекст полон мусора. Лекарство — очистка перед каждой новой задачей.

Вторая — «компакт»: сжать текущий разговор в резюме, не теряя нить. Она принимает инструкцию, что сохранить: например, список изменённых файлов и команды для тестов. Без фокуса резюме составляется по общим правилам, и агент может выкинуть важное. С фокусом решаете вы.

Третья — меню контрольных точек по двойному Escape. Там есть не только откат, но и сжатие части разговора: от выбранного сообщения вперёд или всё до него.

Четвёртая — «би-ти-дабл-ю», «кстати». Побочный вопрос, ответ на который не попадёт в историю. Что делает флаг в команде установки — не повод раздувать рабочую сессию.

Отдельный способ разгрузки — субагенты. Исследование большого проекта — это десятки прочитанных файлов в вашем окне. Субагент читает их в своём отдельном окне и возвращает только выводы. То же с прогоном тестов, чтением документации, разбором логов.

Что ещё раздувает контекст? Расплывчатые запросы: «улучши кодовую базу» запускает широкое сканирование. Исследования без границ: агент прочитает сотни файлов. Повторные поправки: после второй неудачной попытки контекст засорён — очистите его и напишите новый промпт с учётом того, что поняли. Длинный файл инструкций: он загружается каждую сессию, а инструкции для частных сценариев лучше вынести в навыки. И лишние серверы: каждый добавляет в контекст свои инструменты, отключайте те, что не нужны в проекте.

И о работе между сессиями. Каждая начинается с чистого окна, но переписка сохраняется. Флаг «континью» продолжает последнюю сессию, «резюм» открывает список. Давайте сессиям имена по задачам. А для длинных задач есть простая привычка: в конце дня попросить агента записать состояние работы в файл — что сделано, что осталось, какие команды запускать. На следующий день новая сессия начнётся с чтения этого файла.

В следующем уроке разберём, как использовать Claude Code для ревью кода — своего и чужого.

Отметка хранится только в вашем браузере