Справочник8 сентября 2026 г.·обновлено 8 сентября 2026 г.

Claude Code limits: как устроены лимиты и что делать, когда упёрся

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

Что это решает

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

Как устроено

Ограничитель первый: контекстное окно

Сколько текста помещается в одну беседу. В окно складываются системная часть, содержимое CLAUDE.md, определения инструментов всех подключённых MCP-серверов, вся история ходов, прочитанные файлы и выводы выполненных команд. Когда свободного места остаётся мало, срабатывает автоматическое сжатие: история заменяется её пересказом, детали теряются. Контекст относится к одной сессии и обнуляется по /clear.

Ограничитель второй: квота подписки

Сколько работы аккаунт может сделать за период. Механика скользящего окна: расход учитывается за последний отрезок времени и постепенно отпускает, а не обнуляется по расписанию календаря. Поверх короткого окна работает более длинный период, и у старшей модели потолок отдельный и более жёсткий, чем у младших. Общий пул делится со всеми поверхностями аккаунта — чат в браузере тратит ту же квоту, что и агент в терминале.

Ограничитель третий: rate limits API

При оплате по факту потолок не в объёме за окно, а в скорости: запросы в минуту, токены входа и выхода в минуту. Превышение приходит ответом 429 с заголовком retry-after — клиент ждёт и повторяет сам. Уровень лимитов поднимается вместе с накопленным расходом на аккаунте.

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

Что считается

Токены, не сообщения. Каждый ход отправляет заново весь накопленный контекст, поэтому стоимость сотого хода в длинной сессии кратно выше стоимости первого. Кэширование сглаживает картину: неизменный префикс (системная часть, CLAUDE.md, определения инструментов) тарифицируется дешевле — до тех пор, пока его не тронули. Правка CLAUDE.md или подключение нового MCP-сервера посреди работы обнуляет кэш, и следующий ход оплачивается целиком.

Что раздувает расход сильнее всего

  • Чтение файлов целиком там, где хватило бы поиска по шаблону. Один большой файл с данными способен занять заметную долю окна за один инструментальный вызов.
  • Вывод тестов и сборки без фильтра: стек на тысячу строк уходит в контекст полностью и остаётся там до конца сессии.
  • Подключённые и неиспользуемые MCP-серверы: их описания инструментов грузятся в контекст при старте каждой сессии, даже если ни один инструмент не вызван.
  • Раздутый CLAUDE.md: он платный при каждом запуске.
  • Скриншоты и изображения — дорогой вход по сравнению с текстом.
  • Субагенты: каждый работает в собственном окне и возвращает сводку, экономя главный контекст, но общий расход токенов при этом растёт.
  • Параллельные сессии в нескольких терминалах — умножение расхода на количество окон.

Как подключить

Настройка наблюдения и рамок занимает пять минут и делается один раз.

Видеть контекст. Внутри сессии:

/context

Показывает разбивку: сколько занимает системная часть, сколько инструменты MCP, сколько CLAUDE.md, сколько сама переписка и сколько осталось свободного места. Это главный диагностический экран.

Видеть квоту и деньги.

/usage    # состояние квоты на подписке и момент обновления окна
/cost     # накопленная стоимость сессии при оплате по факту

Вывести счётчик на постоянный показ. Строка состояния настраивается командой /statusline или полем statusLine в settings.json — туда выводится модель, ветка и заполнение контекста, чтобы приближение к пределу было видно без отдельной команды.

Поставить рамки.

/model         # переключить движок: рутина не требует старшей модели
/mcp           # посмотреть подключённые серверы и отключить лишние
/clear         # начать чистую сессию между несвязанными задачами
/compact       # сжать историю принудительно, с указанием, что сохранить

У /compact принимается инструкция: /compact сохрани решения по схеме БД и список изменённых файлов. Без неё сжатие само решает, что важно, и регулярно выбрасывает нужное.

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

Для неинтерактивных прогонов ограничивать длину цепочки флагом --max-turns и просить машиночитаемый вывод, а не развёрнутый рассказ.

Полезные сценарии

  • Перед началом новой задачи — /clear, чтобы прошлый контекст не оплачивался в каждом следующем ходе.
  • Перед долгим рефакторингом — /context, чтобы увидеть, что половина окна уже занята описаниями неиспользуемых инструментов.
  • Рутинный прогон линтера и тестов — на младшей модели, старшая остаётся на разбор архитектуры.
  • Длинный вывод команды — сразу через grep или tail, а не целиком в контекст.
  • Задача из нескольких независимых частей — субагенты, чтобы разбор чужого кода не осел в главном окне.
  • Упёрлись в квоту посреди работы — /compact с инструкцией и переключение на младшую модель вместо ожидания.

Ограничения

Лимит подписки не снимается деньгами внутри того же уровня: помогает либо ожидание окна, либо более высокий уровень, либо переход на оплату по факту.

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

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

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

Отдельного лимита «только на код» не существует: пул общий с остальными приложениями аккаунта.

Правило одной строкой: контекст лечится командой /clear, квота — ожиданием или сменой схемы оплаты, скорость — паузой и повтором; сначала определить ограничитель, потом действовать.

Как проверить результат

Базовый замер занимает две минуты. В свежей сессии проекта:

/context

Запомнить долю занятого места до первого вопроса. Если она уже велика, источник виден в той же разбивке — обычно это MCP-серверы или CLAUDE.md. Отключить лишний сервер через /mcp, выйти, зайти снова и сравнить.

Дальше — контроль в работе. Прогнать типовую задачу до конца, затем:

/cost     # при оплате по факту
/usage    # на подписке

Повторить ту же задачу в чистой сессии на младшей модели и сравнить обе цифры с качеством результата. Замер на собственном репозитории отвечает на вопрос про модель точнее любых общих рассуждений.

Проверка гигиены контекста: после двух-трёх задач подряд без /clear снова открыть /context. Рост занятого места между задачами, которые друг с другом не связаны, — прямой признак, что квота уходит на пересылку истории, а не на работу.

  • claude code
  • лимиты
  • контекст
  • токены