
Контекст в Claude Code это рабочая память агента на одну сессию: всё, что он держит перед глазами, пока решает вашу задачу. Туда входят ваши реплики, правила проекта из CLAUDE.md, прочитанные файлы, выводы команд и тестов, ответы поисковика и собственные рассуждения модели. У этой памяти есть предел, и меряется он в токенах: токен это кусочек текста, обычно часть слова. Окно у новых моделей Anthropic вмещает миллион токенов; у моделей прошлого поколения по умолчанию 200 тысяч, миллион включается отдельно и на подписке оплачивается сверх плана, таблица ниже.
Когда место кончается, Claude Code не падает и ничего не стирает целиком. Сначала он выбрасывает старые выводы команд, потом сжимает историю разговора в короткую сводку и продолжает работу. Сводка это пересказ, который пишет сама модель: ваши задачи и ключевые куски кода она старается сохранить, подробные инструкции из начала разговора могут пропасть. Корневой CLAUDE.md перечитывается с диска и никуда не девается.
Если проект оборвался посреди задачи, ниже есть раздел про то, что делать прямо сейчас, и три способа не терять работу дальше. Самый надёжный из них: заметка-передача в файле проекта. Цифры в статье сверены с документацией Claude Code 19 сентября 2026; сами константы меняются от версии к версии, порядок величин держится.
Окно заполняется в два приёма: часть грузится сразу при старте сессии, часть добавляется по ходу работы.
При старте агент получает системный промпт, который вы не видите, и правила проекта из CLAUDE.md. Туда же попадает автопамять: заметки, которые агент сам оставил в прошлых сессиях. Наконец, короткие описания скилов (отдельных инструкций под конкретные задачи, агент подгружает их только по вызову) и имена подключённых внешних инструментов. В примере из документации Claude Code разобрана сессия с окном на 200 тысяч: там это порядка четырёх тысяч токенов на системный промпт, около двух тысяч на CLAUDE.md среднего проекта и по несколько сотен на остальное. Цифры примерные, у вас будут свои, но порядок такой: до первой реплики занято несколько процентов окна.
Дальше окно заполняется быстро. Каждый прочитанный файл ложится туда целиком: в том же примере один файл занимает от тысячи до двух с половиной тысяч токенов, прогон тестов ещё тысячу с лишним. Лог упавшей сборки, результаты поиска по проекту, ответ внешнего сайта оседают там же. Ваши сообщения на этом фоне почти ничего не весят: реплика из двух предложений это полсотни токенов, а по моему опыту один лог упавшей сборки легко уходит за десять тысяч.
Посмотреть, что и сколько занимает прямо сейчас, можно командой /context внутри сессии. Заглянуть туда стоит, как только агент начал путать имена файлов или переспрашивать то, что вы уже объясняли: обычно место съели старые логи, которые уже не нужны.
Миллион токенов звучит как «весь проект влезет», и в токенах это часто так: по оценке Anthropic миллион токенов это примерно 555 тысяч слов. Русский текст режется мельче: по моему опыту слово тянет на два-четыре токена, так что для переписки на русском запас меньше, чем обещает цифра.
Но заполненное окно и рабочее окно разные вещи. Anthropic прямо пишет в документации: чем полнее окно, тем хуже модель находит в нём нужное и тем больше пропускает. У явления есть имя: context rot, что-то вроде «протухания контекста». То есть агент начинает путаться задолго до того, как окно кончается физически. У меня сессия плотной работы над одним проектом держится несколько часов, и закрывать её стоит по первому признаку, не дожидаясь счётчика: агент переспрашивает то, что вы уже объясняли, или правит соседний файл вместо нужного.
Порядок у Claude Code фиксированный. Сначала он очищает старые выводы команд: те самые логи и результаты поиска, которые давно не нужны. Если места всё ещё мало, история разговора сжимается в сводку: агент сам пересказывает, что вы делали, что решили и на чём остановились, и дальше работает уже со сводкой вместо полной переписки. На экране появляется сообщение, что разговор сжат; сам пересказ вам не показывают.
Срабатывает это автоматически на пороге, который зависит от модели и плана. Узнать, какая модель у вас, можно командой /model: она же показывает, включено ли расширенное окно.
Fable 5.1, Opus 5, Sonnet 5, Opus 4.7 и 4.8
1 000 000 токенов по умолчанию; на плане Pro миллион у Opus идёт за отдельную оплату сверх подписки
Около 967 тысяч токенов; на плане Pro без доплаты за миллион у Opus на границе 200 тысяч
Sonnet 4.6, Opus 4.6
200 000 токенов по умолчанию; миллион включается в меню /model, вариант помечен [1m], на подписке за отдельную оплату сверх плана
На границе 200 тысяч; с расширенным окном около 967 тысяч
Sonnet 4.5, Haiku 4.5
200 000 токенов
На границе 200 тысяч
Порог можно опустить командой /autocompact 500k, чтобы сжатие срабатывало раньше, пока агент ещё не путается в длинной истории. Цена у этого есть: сжатий за день становится больше, каждое это отдельный большой запрос и отдельная потеря деталей, а на окне в 200 тысяч команда с числом больше окна вообще ничего не меняет. Я порог не трогаю и сжимаю руками, об этом ниже; настройка полезна для прогонов, где человека у клавиатуры нет.
Есть случай, когда автоматика сдаётся: один файл или один вывод команды настолько большой, что окно заполняется сразу после каждой сводки. Тогда Claude Code после нескольких попыток останавливает сжатие и показывает ошибку вместо бесконечного цикла. Документация даёт четыре выхода: попросить агента читать файл кусками (диапазон строк или одна функция), сделать /compact с фокусом, который выбрасывает большой вывод, отдать работу с этим файлом субагенту или, если прежний разговор уже не нужен, /clear. Найти виновника помогает /context в новой сессии: если окно заполнено сразу после старта, дело в том, что грузится при запуске.
Правила проекта
Корневой CLAUDE.md и правила без привязки к папкам перечитываются с диска
Правила, которые действуют только для отдельных папок или файлов, и CLAUDE.md во вложенных папках вернутся, только когда агент снова прочтёт подходящий файл
Память и план
Автопамять и план, который агент составил в режиме планирования, перечитываются с диска
Подробные инструкции, которые вы дали в начале разговора словами, могут не попасть в сводку
Файлы
До пяти последних прочитанных или изменённых файлов загружаются заново
Файл больше пяти тысяч токенов возвращается как ссылка на путь, без содержимого
Скилы
Текст скилов, которые вызывались в сессии, вставляется заново, с ограничением по объёму
Самые старые скилы выбрасываются первыми, длинные обрезаются с конца
Разговор
Ваши задачи и ключевые фрагменты кода остаются в сводке
Выводы команд, логи и результаты поиска сжимаются вместе с остальным
Вывод из таблицы один, и он же главное правило работы с агентом: всё, что должно пережить сессию, живёт в файлах. Правило, которое вы сказали агенту словами в начале дня, после сжатия может исчезнуть. То же правило в CLAUDE.md вернётся само. Как завести этот файл и что в него писать, я разбирал в статье «Claude Code: что это и как им пользоваться».

Типичная ситуация: агент делал большую задачу, окно кончилось, сводка что-то потеряла, и непонятно, как ехать дальше.
Если это уже случилось. Сжимать сжатое бесполезно, вернуть пропавшее из сводки нельзя. Зато есть код: попросите агента посмотреть git status и git diff, восстановить по ним картину и рассказать, что уже сделано и что осталось. Проект под git окупается ровно в такой момент: код помнит то, что сводка потеряла. Если сессия оборвалась до сжатия (закрылся терминал, вы вышли), история цела: claude --continue из терминала в той же папке откроет последний разговор целиком.
Чтобы больше не терять. Три пути, от самого мягкого к самому надёжному.
Сжать с фокусом. Команда /compact с инструкцией, что именно сохранить: /compact сохрани список изменённых файлов, текущую ошибку и план оставшихся шагов. Агент пересказывает историю с упором на названное. По моему опыту это лучше автоматики, потому что сжатие происходит на ваших условиях и в удобный момент, пока агент ещё ориентируется в разговоре. Ту же инструкцию можно закрепить в CLAUDE.md, раздел «Compact instructions». Тогда она действует и на автосжатие. Помните, что сам /compact тоже большой запрос: агент перечитывает весь разговор. Минус тот же, что у любой сводки: чего в ней нет, того агент больше не знает.
Начать чистую сессию, старую оставить под рукой. /clear даёт пустое окно и ничего не стоит, старый разговор при этом не удаляется: его можно открыть командой /resume внутри Claude Code или claude --resume из терминала в той же папке. Перед очисткой стоит дать сессии имя командой /rename, иначе через день её не найти среди десятка похожих. По документации, если вернуться к старой сессии после часа простоя и в ней больше ста тысяч токенов, Claude Code на планах Pro и Max предложит выбор: продолжить из сводки или загрузить всю историю как есть. Из сводки дешевле и чище; полная история сохраняет всё, но вместе с тем мусором, из-за которого вы её закрыли.
Оставить заметку-передачу в файле проекта. Это самый надёжный путь и единственный, который переживает и сжатие, и /clear, и перерыв до завтра. Перед тем как закрыть сессию, попросите агента записать в файл проекта, что сделано, что осталось, какие решения приняты и где именно остановились. Запрос ниже можно скопировать целиком: у меня перед очисткой сессии работает такой же файл-передача.
Перед закрытием сессии запиши в файл HANDOFF.md в корне проекта: 0. Дату и время обновления первой строкой. 1. Что сделано в этой сессии: список файлов и что в них изменилось. 2. Что осталось: оставшиеся шаги по порядку, первым тот, на котором остановились. 3. Принятые решения и почему. 4. Открытые вопросы и что проверить перед продолжением. Пиши коротко, только факты, без пересказа переписки. Ключи, пароли и адреса серверов в файл не записывай.
Три условия, без которых заметка не работает. Новая сессия сама этот файл не откроет: добавьте в CLAUDE.md одну строку «в начале сессии прочитай HANDOFF.md, в конце перепиши его». Файл старше двух дней не считайте правдой без сверки с кодом: устаревшая заметка вреднее отсутствующей: агент верит файлу больше, чем коду. И если в проекте есть публичный репозиторий, держите файл в .gitignore: агент, описывая открытые вопросы, легко вписывает туда то, что видел в выводе команд.
Если вести такой файл постоянно, не только перед обрывом, он превращается в доску задач проекта, и агент читает её первой в каждой сессии. Готовый шаблон с полями и правилами ведения лежит в материале «Доска задач для ИИ-агента».

Пять привычек, которые в документации и в моей практике дают больше всего пользы.
Чистить окно между несвязанными задачами. Починили письмо о заказе, переходите к отчёту: /clear. Хвост от предыдущей задачи новой не помогает, при этом агент отправляет весь разговор с каждым запросом. Большая часть идёт из кэша и стоит дёшево, но кэш живёт час: вернулись после обеда, и первый вопрос оплачивает всю историю заново. На подписке вы платите за это не деньгами: длинный хвост быстрее съедает лимит.
Не ждать предела. Я стараюсь чистить или сжимать окно на половине: сводка из половины истории точнее, чем сводка из окна, в котором агент уже путался. Работать так, чтобы в любой момент закрыть вкладку, открыть чистую и ничего не потерять.
Держать CLAUDE.md коротким. Документация советует держать его до 200 строк, и причина простая: файл грузится в каждую сессию целиком, поэтому подробные инструкции под отдельные задачи лучше вынести в скилы, которые подгружаются только при вызове. У меня так и вышло: корневой файл держит ссылки на папки с правилами, сами правила лежат по папкам.
Шумные операции отдавать субагентам, отдельным помощникам со своим чистым окном. Прогон тестов, чтение логов, поиск по большому проекту: субагент делает это у себя и возвращает в основное окно только сводку. Достаточно попросить словами: «прогони тесты через субагента и верни только упавшие». В примере из документации субагент прочитал шесть тысяч токенов файлов, в основной контекст вернулось четыреста.
Ставить задачу конкретно. «Улучши проект» заставляет агента читать всё подряд. После «Добавь проверку поля телефона в форму заявки в таком-то файле» он читает два файла. Разница в десятки тысяч токенов и в качестве результата. Конкретная постановка вырастает из описания проекта в файле, о формате я писал в статье «Спецификация вместо промптов».
Статья описывает работу в терминале. В расширении для редактора окно ведёт себя так же, меняется только вид кнопок. На своём сервере, где агент работает в фоне и сессии живут сутками, автосжатие срабатывает многократно и без вас, и заметка-передача там важнее всего. В автономных прогонах по расписанию, где некому набрать /compact, работают только файлы и автосжатие: это самый сильный довод за то, чтобы всё важное жило в файлах.
Если после всего этого кажется, что инструмент всё равно не тянет ваш проект, возможно, дело в форме работы: часть задач удобнее делать в редакторе с подсказками, где каждая правка на глазах. Разницу я разбирал в сравнении «Claude Code или Cursor».

Пока окно кончается внезапно, каждый обрыв это авария. Когда вы знаете порядок сжатия и держите заметку-передачу, обрыв становится плановым событием: агент закрыл смену, следующий открыл её с той же строки.
Что сделать сегодня: открыть /context в текущей сессии и посмотреть, что там лежит; проверить, что правила проекта записаны в CLAUDE.md, где они переживут любую сессию; завести заметку-передачу (тот самый HANDOFF.md) и попросить агента заполнить её перед закрытием. Если проект уже есть и хочется, чтобы он не рассыпался между сессиями, разобрать его, завести CLAUDE.md и файл-передачу можно за один вечер вместе с инженером: вайб-кодинг в Минске.
Claude Code: что это и как им пользоваться
Агент Anthropic работает прямо в проекте. Сначала контекст, потом план, потом код. Как начать, сколько стоит и на сколько хватает контекста.
Claude Code или Cursor: что выбрать
Один живёт в терминале и берёт задачи пачками, второй это редактор с ИИ внутри и правками на глазах. Кому что подходит и почему их часто держат оба.
Вайб-кодинг: что это простыми словами и как начать
Вы описываете словами, что должно получиться, а код пишет нейросеть. Что это даёт на самом деле, где заканчивается лёгкость и с какой задачи начать вечер.