Как работать с Claude Code при контексте в 1 миллион токенов и не сломать результат?
Эти наблюдения основаны на разборе практики работы с Claude Code, которым поделился Тарик Шихипар, разработчик Anthropic. Он подробно описывает, как на самом деле ведёт себя модель при длинных сессиях и где именно начинаются проблемы.
Почему контекст 1 миллион токенов это ловушка, а не только преимущество?
Контекст в миллион токенов создаёт ощущение, что можно перестать думать о структуре работы и просто вести одну длинную сессию, в которой модель постепенно решает всё подряд, но на практике это приводит к обратному эффекту, потому что по мере роста контекста модель начинает терять фокус и принимать менее точные решения, даже если формально лимит ещё далеко.
Контекст включает всё, переписку, файлы, вызовы инструментов и их результаты, и проблема в том, что модель не умеет полностью игнорировать старую информацию, поэтому она продолжает влиять на текущую задачу, даже если уже не имеет к ней отношения.
Этот эффект называют гниение контекста, и он проявляется в том, что внимание размазывается по большому количеству данных, из-за чего актуальная задача получает меньше приоритета, а устаревшие куски начинают мешать.
На практике деградация может начинаться уже на уровне нескольких сотен тысяч токенов, и это не жёсткая граница, а точка, где качество становится заметно менее стабильным.
Почему длинная сессия почти всегда ухудшает результат?
Самая распространённая ошибка, продолжать работать в одной сессии, смешивая разные задачи, решения и попытки, потому что кажется, что модель «уже всё знает», но вместе с полезным контекстом она тащит за собой и весь шум, включая неудачные подходы и устаревшие выводы.
Поэтому базовое правило выглядит просто, новая задача должна начинаться с новой сессии, даже если технически можно продолжить, потому что в противном случае ты платишь качеством за удобство.
Когда продолжение сессии всё же оправдано?
Есть ситуации, где нет смысла обнулять контекст, например когда ты только что написал код и сразу хочешь сгенерировать документацию или внести небольшие изменения, потому что модель уже прочитала нужные файлы, и повторное чтение увеличит время и стоимость, а сама задача не требует высокой точности.
В таких случаях лишний контекст может быть допустимым компромиссом.
Почему перемотка (Rewind) работает лучше чем просьба исправить?
Когда модель делает ошибку, большинство пользователей просто пишут следующее сообщение с исправлением, но это оставляет в контексте всю неудачную логику, которая продолжает влиять на ответы.
Rewind работает иначе, он возвращает тебя к моменту до ошибки и удаляет неудачную ветку, позволяя задать новую инструкцию в более чистом контексте, и это принципиально меняет качество, потому что ты не исправляешь, а переписываешь ход решения.
Дополнительно можно использовать промежуточное резюмирование, чтобы зафиксировать выводы и начать с более точной точки.
Compact и новая сессия, разница, которая влияет на результат
Когда контекст становится слишком большим, есть два варианта, compact или новая сессия, и они выглядят похожими, но работают по-разному.
Compact позволяет модели самой сжать историю и оставить только важное, это быстро и удобно, но ты теряешь контроль, потому что часть информации неизбежно отбрасывается.
Новая сессия требует вручную сформулировать, что важно, но даёт полный контроль над контекстом, и именно это делает её более надёжной в сложных задачах.
Почему compact иногда ломает работу
Проблема возникает, когда модель не понимает, куда ты будешь двигаться дальше, например если ты долго занимался одной задачей, затем сделал сжатие, а после этого переключился на другую тему, и нужные данные просто не попадают в итоговое описание.
Ситуация усугубляется тем, что compact часто происходит уже в перегруженном контексте, где модель работает хуже и хуже выбирает, что сохранить.
Поэтому более надёжный подход, делать сжатие заранее и явно указывать, какие части контекста критичны.
Субагенты как способ не засорять контекст
Субагенты позволяют вынести часть работы в отдельный контекст, где не накапливается лишняя информация, и вернуть только результат, без всех промежуточных шагов.
Это особенно полезно в задачах, где важен итог, а не процесс, например при анализе кода, проверке результатов или генерации документации, потому что в противном случае вся эта промежуточная информация остаётся в основной сессии и ухудшает её.
Что на самом деле влияет на качество работы
Каждое сообщение после ответа модели, это точка выбора, где ты решаешь продолжить, откатиться, начать заново, сжать контекст или вынести задачу в отдельного агента, и именно этот выбор определяет результат сильнее, чем формулировка самого промпта.
Итог
Большой контекст создаёт иллюзию, что можно не думать о структуре работы, но на практике он требует ещё большего контроля, потому что ошибки не исчезают, а накапливаются и становятся менее заметными.
Если не управлять сессиями, модель начинает терять точность, решения становятся менее надёжными, а стоимость растёт, если управлять, результат становится стабильным и предсказуемым.
Работа с Claude Code в итоге сводится не к тому, чтобы написать идеальный запрос, а к тому, чтобы контролировать, что именно модель видит в каждый момент времени.