Мастер Claude · Блок 2. Контекст и память

Урок 19 из 93 · ~10 мин чтения

Компакция контекста

Урок пока закрыт

Курс проходится последовательно.

К текущему уроку

Обновление, август 2026

У современных моделей контекстное окно выросло в пять раз — до миллиона токенов. Правила гигиены контекста при этом не изменились.

Актуальная версия: Урок 62. Миллион токенов контекста

Почему это важно именно вам

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

Это не глюк и не деградация модели. Это компакция контекста — автоматический механизм, который срабатывает, когда история диалога перестаёт помещаться в рабочую память Claude. Понять этот механизм означает перестать терять работу, перестать раздражаться на «забывчивость» инструмента и начать управлять длинными сессиями осознанно.

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

Что это такое

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

Когда диалог с Claude становится достаточно длинным, суммарный объём переписки приближается к пределу. Claude Code в этот момент не останавливается и не выдаёт ошибку — он автоматически сжимает историю. Старые части диалога заменяются кратким резюме: «вот о чём мы говорили раньше». Это и есть компакция. Диалог продолжается, но часть деталей уже в резюме, а не в полном виде.

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

Компакция — это не потеря данных, это потеря деталей

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

Важно понимать, что компакция — это не недостаток Claude и не что-то, что можно «выключить». Это архитектурное свойство всех языковых моделей. Можно только научиться с ней работать.

Как работает на практике

Шаг 1: Понять, когда компакция происходит

Компакция срабатывает автоматически, когда суммарный объём диалога приближается к пределу контекстного окна. Размер зависит от модели: у Sonnet 5 и Fable 5 это миллион токенов, у более старых — 200 000. Точную цифру для вашей сессии покажет /context — грубо говоря, несколько сотен страниц текста. Звучит много, но если вы вставляете в диалог большие документы, длинные таблицы или последовательно работаете с несколькими файлами — предел достигается быстрее, чем кажется.

Примерный расчёт: один токен — это примерно три четверти слова на русском языке. Страница текста — около 400–500 токенов. Договор на 30 страниц, вставленный в диалог — это 12 000–15 000 токенов сразу. Добавьте несколько раундов обсуждения, ответы Claude, возможно ещё один документ — и через час активной работы вы уже близко к границе.

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

Не ждите, пока Claude начнёт «забывать» — смотрите `/context`

Заполнение контекста видно в любой момент: команда /context показывает разбивку по категориям — сколько занимают системные инструкции, CLAUDE.md, авто-память, прочитанные файлы и сам диалог — плюс подсказки, что разгрузить. Поведение модели — вторичный сигнал, а не единственный. Нужно научиться его читать, это приходит с практикой.

Шаг 2: Команда /compact

В Claude Code есть ручная команда для принудительного сжатия истории:

/compact

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

Когда это полезно: если вы чувствуете, что диалог разросся, и хотите «очистить стол», не теряя нити разговора. Особенно актуально перед тем, как вы собираетесь поднять новую, но связанную тему, или добавить в диалог ещё один большой документ.

/compact
Теперь давай разберём следующий раздел договора — условия расторжения.

Шаг 3: Стратегия — выносить важное до компакции

Здесь ключевая идея этого урока: не полагайтесь на то, что контекст диалога сохранится сам. Договорённости, которые важны — выносите в CLAUDE.md прямо в ходе работы, не дожидаясь, пока они «утонут» в компакции.

Это работает так: в середине длинной сессии вы понимаете, что уже зафиксировали несколько принципиальных решений. Например, при работе с финансовым отчётом:
- Формат итогового документа — таблица, не список
- Аудитория — внутренняя, технический язык допустим
- Источник данных — только Q2 и Q3, Q1 исключить из-за методологических изменений
- Сравнение проводить с прошлым годом, не с планом

Не ждите, пока Claude «забудет» это при компакции. В середине диалога скажите:

Запиши в CLAUDE.md следующие договорённости для этого проекта:
- формат итогового документа — таблица, не список
- аудитория — внутренняя, технический язык допустим
- данные — только Q2 и Q3, Q1 исключён из-за методологических изменений
- сравнение — с прошлым годом, не с планом

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

CLAUDE.md — долгосрочная память. Диалог — краткосрочная

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

Шаг 4: Проверить, что попало в сжатое резюме

После команды /compact можно сразу же спросить Claude, что он считает главным:

/compact
Что из нашего диалога ты считаешь ключевым — перечисли основные договорённости и решения, которые мы приняли.

Claude выдаст список. Просмотрите его. Если что-то важное не вошло — повторите явно или зафиксируйте в CLAUDE.md отдельной командой. Это занимает две минуты, но страхует от ситуации «я был уверен, что он это помнит».

Шаг 5: Тактика при работе с большими документами

Если вы вставляете в диалог большой документ — договор на 40 страниц, финансовый отчёт, таблицу с сотнями строк — контекст заполняется быстро и компакция приходит раньше. Есть несколько рабочих подходов:

Вариант А — работайте по частям. Не вставляйте весь документ сразу. Берите раздел за разделом, фиксируйте выводы в отдельном файле или в CLAUDE.md, обнуляйте диалог между разделами. Да, придётся потратить время на организацию. Зато не потеряете ничего важного в самый неудобный момент.

Вариант Б — используйте @путь вместо копипасты. Вместо того чтобы вставлять текст документа прямо в диалог, передавайте ссылку на файл через @путь. Claude загружает файл как контекст, и это менее агрессивно расходует историю переписки. Плюс — документ можно переиспользовать в следующей сессии той же командой.

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

Контекст: мы работаем над аналитическим отчётом по результатам Q2–Q3.
Принятые решения:
- формат — таблицы, не списки
- аудитория — совет директоров, без технических деталей реализации
- Q1 исключён из-за методологических расхождений
- сравнение — с аналогичным периодом прошлого года

Продолжаем с раздела «Динамика по регионам».

Это займёт три минуты, но сэкономит полчаса разбора «почему Claude всё перепутал».

Шаг 6: Выработать привычку «сохранение через равные промежутки»

Хороший рабочий ритм для длинных сессий — каждые 20–30 минут задавать себе вопрос: «Есть ли что-то важное, что я рискую потерять?» Если да — фиксировать в CLAUDE.md или в файл. Это то же самое, что нажимать Ctrl+S при работе с документом. Небольшое усилие, которое страхует от большой потери.

Частые ошибки

Ошибка 1: Думать, что Claude «запоминает» предыдущие сессии

Каждая новая сессия — чистый лист по части диалога, но не по части памяти: авто-память (День 15) включена по умолчанию и переживает и компакцию, и закрытие сессии. Но полагаться на авто-память как на протокол договорённостей нельзя: она хранит то, что Claude счёл нужным записать, а не то, что решили вы. Гарантированно переживают сессию CLAUDE.md, авто-память и файлы, которые вы сохранили явно.

Как исправить: важные договорённости — в CLAUDE.md. Результаты работы — сохраняйте в файлы через > файл.md или явно просите Claude записать итог. Не рассчитывайте на то, что «он же помнит, мы только вчера обсуждали».

Ошибка 2: Вставлять документы целиком без необходимости

Полный текст договора на 30 страниц в начале диалога — это значительная часть контекстного окна, которая занята сразу. Когда вы добавите несколько раундов обсуждения, возможно ещё один файл для сравнения — место кончится быстро. Claude начнёт путаться именно тогда, когда вы подберётесь к самой важной части работы.

Как исправить: используйте @путь для ссылки на файл вместо копипасты. Или работайте по разделам — вставляйте только ту часть, которая нужна прямо сейчас.

Ошибка 3: Не замечать признаки компакции и продолжать как ни в чём не бывало

«Claude начал странно себя вести» — типичная реакция. Пользователь раздражается, повторяет одно и то же, тратит время на восстановление контекста вслух. При этом достаточно было заметить сигналы раньше — и либо запустить /compact с явным сохранением ключевых договорённостей, либо начать новую сессию с брифингом.

Как исправить: научитесь читать сигналы. Если Claude переспрашивает что-то очевидное или предлагает то, что вы уже отклоняли — остановитесь. Это не баг и не повод повторять раздражённо. Это сигнал принять управленческое решение: /compact или новая сессия.

Ошибка 4: Запускать /compact без подготовки

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

Как исправить: перед /compact явно зафиксируйте ключевые договорённости. Или сначала попросите Claude: «Перечисли всё, что мы решили по этой задаче», — проверьте список, добавьте недостающее — и только потом запускайте компакцию.

/compact необратима

После компакции в рабочем контексте остаётся только резюме. Но исходные сообщения сохраняются в стенограмме сессии, и через /rewind можно вернуться к нужной точке диалога — правда, полагаться на это как на рабочий приём не стоит. Убедитесь, что всё важное либо попало в резюме, либо записано в CLAUDE.md, либо сохранено в отдельный файл.

Когда нужно / когда нет

Когда управление компакцией критично:

Когда можно не думать об этом:

Практическое правило

Если сессия длится больше 20–30 минут или вы добавили в неё больше одного объёмного документа — начните думать о фиксации ключевого контекста. Это дешевле, чем разбираться с последствиями компакции в самый неудобный момент.

Связь с другими уроками

День 11: CLAUDE.md — первый уровень. Компакция — одна из главных причин, почему CLAUDE.md существует как инструмент. Всё постоянное кладётся туда именно потому, что диалог ненадёжен для долгосрочных договорённостей. Если вы ещё не настроили CLAUDE.md для своих рабочих задач — самое время сделать это сейчас, учитывая механику компакции.

День 12: Четыре уровня CLAUDE.md. Когда вы фиксируете договорённости в CLAUDE.md, важно понимать, на каком уровне это делать — глобальном или проектном. Правила, которые нужны только для конкретного проекта или задачи, идут в проектный CLAUDE.md, а не в глобальный, иначе они будут мешать в других контекстах.

День 16: команда /memory. Урок про явное управление памятью. Там разберём, как явно управлять тем, что Claude «помнит» между сессиями через команду /memory, и как это дополняет то, что не покрывает механизм компакции. Считайте сегодняшний урок фундаментом для завтрашнего.

Задание на сегодня

Откройте любую реальную рабочую задачу — договор, который правите итерационно, отчёт, над которым работаете несколько дней, или просто запустите новую сессию по актуальной теме. Проведите в ней 10–15 минут активной работы: поставьте задачу, уточните требования, зафиксируйте 2–3 ограничения или решения.

Затем выполните одно действие: попросите Claude «Запиши наши договорённости по этой задаче в CLAUDE.md» и проверьте, что файл обновился. После этого — опционально, если диалог уже длинный — запустите /compact и сразу спросите: «Что ты помнишь из нашего диалога — перечисли ключевые решения».

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

Резюме

Следующий урок откроется после отметки.