Понимание контекста и управление сеансами в Claude Code
Если вы пользуетесь Claude Code достаточно долго, вы наверняка замечали: чем дольше длится сеанс, тем медленнее становятся ответы. Дело не в том, что ИИ деградирует — настоящая причина в разрастании контекста (context bloat). Вот что происходит за кулисами и что с этим можно сделать.
1. Что на самом деле означает «контекст»
В терминах ИИ контекст — это просто набор информации, с которым модель работает при ответе на ваш запрос. Современные большие языковые модели (LLM) являются бессервисными общими сервисами — они не хранят никакой встроенной памяти о вас или вашем проекте между вызовами.
На практике это означает следующее: каждый раз, когда вы отправляете сообщение, Claude Code должен собрать ваш текущий запрос вместе со всей историей разговора и отправить всё это модели. Чем длиннее история, тем тяжелее каждый пакет данных.
Представьте это как папку с брифингом. Каждое ваше сообщение — это как передать специалисту папку с материалами для ознакомления. В начале сеанса папка тонкая и легко просматривается. Но если вы перескакиваете между несвязанными темами — рефакторите бэкенд, правите фронтенд, отлаживаете CSS-особенность — папка превращается в беспорядочную гору бумаг. Специалист замедляется и начинает ошибаться — не потому что он некомпетентен, а потому что вы вручили ему мусорную папку.
2. Почему одно только сжатие вас не спасёт
Claude Code оснащён автоматическим сжатием контекста: когда история превышает определённый порог, система суммирует ключевые моменты и убирает дублирование ссылок на файлы. Полезно, но у этого подхода есть реальные ограничения:
- Это дорого. Сам процесс сжатия обычно съедает 20% и более бюджета входных токенов. При работе с большой кодовой базой это значительная часть времени и затрат, которые уходят на суммирование вместо реальной работы.
- Он ошибается при смене направления. Сжатие предсказывает, что будет актуально, на основе предыдущего контекста — это не настоящая смена задачи. Если вы внезапно переключаетесь на совершенно другую задачу в середине сеанса (скажем, с переписывания API-маршрутов на исправление выравнивания кнопок), сжатое резюме всё ещё тянет за собой устаревшие предположения, и модель начинает путаться.
3. Решение: одна задача — один сеанс
Принцип предельно прост: давайте ИИ одну задачу за раз. Deep Code делает это легко с помощью двух команд:

/clear— начать с чистого листа. Эта команда очищает текущий разговор и открывает новый сеанс. Никакой накопленной истории, никаких устаревших ссылок на файлы — ИИ сосредоточен исключительно на том, что перед ним прямо сейчас.

/resume— продолжить с того места, где остановились. Нужно вернуться к вчерашнему сеансу рефакторинга?/resumeвыводит список всех прошлых сеансов для проекта, каждый с кратким однострочным описанием. Перемещайтесь стрелками, нажмите Enter на нужном сеансе илиESC, чтобы выйти.
Итоги
Вот что мы рассмотрели:
- Контекст — это ваша история разговора — и она отправляется модели с каждым сообщением. Чем длиннее сеанс, тем тяжелее пакет данных и тем медленнее ответы.
- Автоматическое сжатие помогает, но не является панацеей. Оно расходует токены на суммирование и с трудом справляется при переключении задач в середине сеанса.
- Решение простое: одна задача — один сеанс. Используйте
/clear, чтобы очистить историю и начать заново. Используйте/resume, чтобы вернуться к предыдущему сеансу, когда нужно продолжить с того места, где вы остановились.
Тем не менее, у /resume есть свои недостатки — вы получаете только однострочное описание для каждого сеанса, нет возможности просмотреть содержание разговора перед восстановлением, а переключение между сеансами неудобно. Если вы сталкиваетесь с этими ограничениями, обратите внимание на панель истории задач — визуальный интерфейс, который позволяет просматривать полные истории разговоров, копировать сообщения и переключаться между задачами одним нажатием.