Многие пользователи начинают работу с инструментом Claude Code, предлагая нейросети прочитать весь проект целиком перед первым вопросом. Хотя такой подход кажется логичным и исчерпывающим, он приводит к быстрому расходу лимитов. Каждое последующее сообщение тянет за собой всю историю прочитанных данных, что избыточно нагружает контекстное окно и делает сессию неоправданно дорогой.
Принцип работы контекстного окна в Claude Code
Claude Code ведет непрерывную запись каждой сессии, формируя так называемое контекстное окно. В него попадают все ваши сообщения, содержимое каждого открытого файла и результаты выполнения команд. Всякий раз, когда Claude дает ответ или применяет инструменты, эта запись целиком отправляется обратно в модель. Таким образом, любая информация, прочитанная в начале сессии, сохраняется и сопровождает каждое последующее действие пользователя.
Эксперимент на базе Flask, популярного open-source фреймворка на Python, с использованием модели Sonnet 5 в рамках плана Claude Pro, наглядно демонстрирует эту проблему. Свежая сессия изначально содержит 42,9 тыс. токенов — это системный промпт и определения инструментов. Когда Claude Code попросили прочитать все файлы исходного кода Flask и объяснить одну функцию, объем контекста подскочил до 213,2 тыс. токенов из-за обработки 24 файлов. Последующие уточняющие вопросы, даже не требующие открытия новых данных, увеличили показатель до 227,2 тыс., а затем и до 240,8 тыс. токенов. В итоге стоимость сессии по тарифам API составила 0,97 доллара, из которых 203,5 тыс. токенов — это объем нового материала.
Оптимизация сессии через точечный поиск и фильтрацию
Чтобы избежать лишних трат, эффективнее задавать конкретный файл и просить Claude Code сначала выполнить поиск, а не открывать всё подряд. При использовании команды grep нейросеть находит нужные строки без полного считывания каждого файла. В повторном тесте после команды /clear начальный объем составил стандартные 42,9 тыс. токенов. При тех же трех вопросах, но с использованием поиска, контекст вырос лишь до 87 тыс. токенов, а стоимость сессии снизилась до 0,32 доллара при почти идентичных ответах.
Для управления доступом к данным полезны следующие приемы:
- Использование deny-правил: В файле settings.json проекта можно прописать папки, к которым Claude Code не должен обращаться (например, docs или tests). При попытке обратиться к таким файлам нейросеть будет блокировать запрос согласно заданным разрешениям.
- Избирательное упоминание файлов: Использование тега @ загружает файл целиком в диалог, что быстро расходует лимиты, поэтому его лучше применять только для небольших документов.
- Мониторинг ресурсов: Команда /context позволяет увидеть, что именно занимает место в окне, а /usage отображает расчетную стоимость сессии и остаток лимита в рамках пятичасового окна и недельной квоты.
Эти рекомендации помогают сохранять рабочую сессию в течение всего дня, не выходя за рамки плана подписки. Аналогичный принцип применим к лог-файлам и результатам тестов: вместо полной выгрузки данных эффективнее указывать конкретную точку сбоя, чтобы не перегружать контекст второстепенной информацией.
Технические тонкости: как именно раздувается контекст
Проблема раздувания контекста кроется в архитектуре взаимодействия Claude Code с моделью. Поскольку каждое действие — будь то ответ на ваш запрос или использование встроенного инструмента — требует отправки всей истории сессии, «багаж» из ранее открытых файлов становится постоянным источником затрат. Это кумулятивный эффект: даже если последующие вопросы не требуют обращения к новым данным, Claude Code вынужден «пережевывать» все 24 открытых файла из первого запроса при каждой новой итерации.
В ходе эксперимента с Flask, Claude Code самостоятельно зафиксировал критический момент: чтение файлов заняло 102,3 тыс. токенов. Система даже предложила использовать параметры offset (смещение) и limit (ограничение) при работе с крупными файлами, чтобы минимизировать нагрузку. Стоит учитывать, что хотя пользователи с подписками Pro и Max не оплачивают каждый запрос напрямую, их активность жестко лимитируется: Claude Code учитывает использование ресурсов в рамках «пятичасового окна» и устанавливает еженедельный кап на количество сообщений. Нерациональное чтение проекта приводит к тому, что эти лимиты исчерпываются значительно быстрее, чем при сфокусированной работе.
Эффективность точечного поиска против чтения всего проекта
При втором сценарии тестирования, где использовался поиск, была реализована принципиально иная стратегия. Вместо того чтобы скармливать модели содержимое десятков файлов, Claude Code выполнил одну поисковую операцию, прочитал лишь один конкретный файл и вернул точный диапазон строк, содержащих искомую функцию. Это позволило удержать объем контекста на уровне 72 тыс. токенов после первого вопроса, увеличив его лишь до 87 тыс. к концу сессии. Результат был идентичен первому варианту, но при этом объем «новых» данных, которые модель была вынуждена обрабатывать, сократился с 203,5 тыс. до 44,3 тыс. токенов.
Важно понимать, что «фокусировка» сессии имеет и свои издержки. В сфокусированном режиме потребовалось девять запросов против пяти в первом случае. Поскольку каждый запрос снова отправляет историю, модель в итоге прочитала чуть больше кэшированных данных. Однако кэшированные операции стоят значительно дешевле новых, поэтому итоговая стоимость сессии упала почти в три раза — с 0,97 до 0,32 доллара.
Алгоритм оптимизации ежедневной работы
Для поддержания стабильной работы в рамках ограничений Claude Pro, рекомендуется внедрить следующий регламент использования Claude Code:
- Анализ стартовой точки: Всегда запускайте /context до первого промпта, чтобы понимать «вес» системного промпта и текущих настроек.
- Ограничение доступа: Использование deny правил в settings.json — это лучший способ защитить контекстное окно от «мусора» вроде документации или unit-тестов, которые могут случайно попасть под руку ИИ.
- Гигиена сессии: При смене задачи обязательно используйте /clear. Команду /compact стоит применять только в исключительных случаях, когда необходимо сохранить историю контекста для продолжения работы.
- Контроль лимитов: Регулярная проверка /usage перед началом долгой сессии позволяет увидеть, сколько времени осталось до блокировки в рамках пятичасового окна.
Данный подход применим не только к исходному коду. Лог-файлы ошибок и дампы тестов часто содержат тысячи строк избыточной информации. Указание Claude Code на конкретную точку сбоя вместо загрузки всего файла лога — это навык, который позволяет растянуть использование лимитов Claude Pro на весь рабочий день, не прибегая к покупке более дорогих планов.
Справка: Claude Code — это агентный инструмент разработки от компании Anthropic, поддерживающий операционные системы macOS, Windows и Linux. Он интегрирует в работу несколько моделей ИИ Anthropic и доступен по модели подписки или через оплату API по факту использования.






