Содержание
Ошибка Claude Code Prompt is too long означает, что отправляемый ввод превышает лимит контекста. В текущем интерактивном интерфейсе вместо неё может появиться Context limit reached. Сначала отличите длинную историю, которую можно сжать, от слишком большого исходного ввода. Ниже приведены примеры сообщений; числа условные.
Prompt is too long
# Пример ошибки API:
prompt is too long: 233153 tokens > 200000 maximum
Ввод — не только последний набранный текст: в него могут входить история разговора, прочитанные файлы, результаты инструментов и инструкции. В сообщении 233153 tokens > 200000 maximum указаны 233 153 токена ввода при допустимых 200 000. Само контекстное окно включает и ввод, и генерируемый для этого ответа вывод; эта ошибка означает, что уже один ввод превышает предел. Способ восстановления отличается от ситуации исчерпания лимита использования, когда израсходован объём, доступный по плану за определённый период.
Используйте /compact для длинной истории; уменьшите ввод, если уже первое сообщение слишком велико; при ошибке сжатия сначала устраните указанную причину. Это основные пути восстановления. Автоматическое сжатие по умолчанию включено, но не гарантирует предотвращения каждого переполнения. На основе официальной документации об ошибках Claude Code и спецификаций API, проверенных 21 сентября 2026 года, разберём причины, восстановление и условия использования 200K и 1M. Прямые обращения к API рассмотрены отдельно.
Одинаковая ошибка «слишком длинно» требует разных сокращений
Сожмите предыдущую историю. Если окно снова заполняется сразу после сжатия, разделите большие чтения на части.
Предыдущего разговора для сжатия нет. Начните с меньших вставок, вложений, инструкций и накладных расходов инструментов.
Сначала устраните сопутствующую причину: например, ошибку аутентификации или недоступность модели. Одно повторение сжатия не поможет.
Команда /context показывает состав окна, а /usage — расход за период или лимиты плана. Обе связаны с токенами, но измеряют разное.
1. Что означает эта ошибка
Контекстное окно ограничивает объём информации, который модель может учитывать и генерировать в одном ответе. Оно измеряется в токенах, а не символах, и включает ввод, вывод текущего ответа и токены рассуждения. Ввод из кэша API тоже занимает окно. Кэширование меняет стоимость или обработку, но не сводит занимаемое место к нулю. См. спецификацию контекстного окна Anthropic.
Ошибка Prompt is too long возникает, когда отправляемый ввод уже сам по себе не помещается в окно. Даже короткий вопрос может быть частью большого запроса, если с ним передаются история или файлы. Поэтому сокращения только последнего вопроса иногда недостаточно. Основы — в статье Что такое контекстное окно?
При приближении к пределу Claude Code удаляет старые результаты инструментов и при необходимости суммирует разговор. Однако огромная вставка, отключённое автоматическое сжатие или ошибка аутентификации во время сжатия могут остановить работу. Повторное чтение того же огромного файла сразу после сжатия снова заполнит окно. Не определяйте причину только по тому, включено ли автоматическое сжатие. Прочитайте полную ошибку и выясните, что было загружено непосредственно перед ней.
2. Что заполняет контекстное окно?
Следующая разбивка основана на описании работы Claude Code. Сохранённый журнал разговора не идентичен текущему вводу модели. Удаление старых результатов инструментов или сжатие меняет содержимое активного окна.
| Компонент | Что попадает в окно | Что проверить |
|---|---|---|
| История разговора | Реплики, передаваемые в текущем запросе. Сжатие заменяет часть истории сводкой | /compact для той же задачи; /clear для следующей, не связанной с ней задачи |
| Файлы и результаты инструментов | Прочитанное содержимое файлов, результаты поиска, вывод команд и подобные материалы | Сужайте поиск, читайте нужные строки или поручайте подробное исследование субагенту |
| MCP | Названия инструментов и инструкции серверов. По умолчанию Tool Search загружает подробные определения по мере необходимости | Проверяйте реальный объём через /context и отключайте ненужные серверы через /mcp |
| CLAUDE.md и память | Применимые инструкции и загруженная память. Не каждый файл автоматической памяти присутствует постоянно | Сокращайте постоянные правила, выносите пояснения для отдельных задач в отдельные материалы |
| Навыки | Обычно описания при запуске и содержимое при использовании. Настройки могут отложить и загрузку описаний | Пересмотрите лишних кандидатов на автоматический вызов и слишком длинные тексты навыков |
| Системные инструкции | Рабочие инструкции Claude Code или среды подключения | Начните с инструкций, вложений и инструментов, которыми управляете сами |
Утверждение, что подключение MCP всегда загружает полные определения всех инструментов при запуске, не соответствует текущему поведению по умолчанию. Определения могут загружаться заранее, если Tool Search отключён, настроена предварительная загрузка или подключение её не поддерживает. Проверьте условия своего подключения в официальной таблице настроек Tool Search. Проверка /context полезнее оценки накладных расходов только по числу серверов.
Субагенты исследуют в отдельном окне и могут вернуть результаты без всех промежуточных выводов инструментов в родительском разговоре. Однако возвращённая сводка или выводы всё равно занимают родительское окно. Просьба воспроизвести всё исследование уменьшает пользу. Задавайте нужный результат, например: «Верни только относящиеся к делу файлы и строки, выводы и открытые вопросы». Принципы описаны в статье Инженерия контекста.
Используйте /context для оценки заполнения текущего окна и /usage для оценки расхода токенов и использования плана. Показанная во втором случае стоимость — оценка, а не окончательный счёт. В поддерживаемых средах /skill-doctor также проверяет накладные расходы навыков, но доступность зависит от условий. Если команды нет, начните с /context. Шаги измерения описаны в статье Что занимает ваш контекст?, а условия доступности — в официальном списке команд.
3. Размеры окна: 200K и 1M
200K — это 200 000 токенов, 1M — миллион. Но проверяйте ёмкость модели, используемый Claude Code размер для вашего подключения, порог автоматического сжатия и условия оплаты по отдельности. Командой /status проверьте текущую модель и аккаунт, а через /model — доступные варианты.
Отделяйте ёмкость от условий использования
Например, Sonnet 4.5. Claude Code может использовать и модель с поддержкой 1M как 200K из-за подключения или настройки, отключающей 1M.
В Anthropic API — например, семейство Fable, Sonnet 5 и Opus 4.7 или новее. Для некоторых 1M используется по умолчанию; добавлять [1m] нужно не всегда.
Источник: Конфигурация моделей и расширенный контекст Anthropic. Момент запуска автоматического сжатия зависит от настроек и модели.
В подписках Opus 1M входит в Max, Team и Enterprise, а для Opus 1M на Pro и Sonnet 4.6 1M в подписках нужны usage credits. Sonnet 5 при прямом подключении к Anthropic API работает иначе: 1M доступен по умолчанию на всех планах без дополнительных usage credits и выбора [1m]. Шлюзы и настройки, отключающие 1M, создают исключения, поэтому одного названия модели недостаточно.
«Стандартная цена» для 1M означает отсутствие дополнительной надбавки за токен длинного контекста при превышении 200K. Это не означает неограниченный дополнительный ввод за ту же общую сумму. Обработка большего числа токенов увеличивает расход. Включён ли 1M в план или оплачивается кредитами — отдельный вопрос.
Соотношение символов и токенов также зависит от модели и содержимого. Не предполагайте, что каждая новая модель добавляет фиксированный процент: при работе с API считайте токены для целевой модели. Некоторым задачам нужно большее окно, но предварительное удаление ненужных журналов и дублирующихся инструкций помогает оценить реальную потребность.
4. Как продолжить работу
Выбирайте действие по ситуации: выросла история или во ввод добавлен большой файл. Варианты ниже расположены по приоритету.
Как освободить место в окне
/compact Сосредоточься на ошибке аутентификации. Это уменьшает объём, сохраняя контекст./context, затем отключите ненужные MCP-серверы и сократите CLAUDE.md. Вынесите подробные процедуры отдельно, чтобы читать их только при необходимости./model выберите модель с контекстом 1M. Сначала выполните очистку из шагов 1–4. Не отключайте автоматическое сжатие: оставьте его включённым по умолчанию.Для длинной истории используйте шаг 1, для следующей несвязанной задачи — 2. Для слишком большого начального ввода — 3 и 4. Если указана причина сбоя сжатия, сначала устраните её.
Если /compact завершается ошибкой Error during compaction: Conversation too long, официальное объяснение — не хватает места для создаваемой сводки. Очистите поле ввода, дважды нажмите Esc и выберите в списке ход перед большим вводом, чтобы откатить разговор. Двойное нажатие не откатывает несколько ходов автоматически. Если действие также откатывает код, проверьте его область. Затем повторите сжатие; если места всё ещё мало, используйте /clear и начните с меньшего ввода. Условия — в официальном описании клавиатурного управления.
Если после automatic compaction failed указана ошибка аутентификации или недоступная модель, сначала устраните эту причину. Not enough messages to compact. означает, что предыдущего разговора слишком мало для сжатия: уменьшите вложения или вставленный текст, а не повторяйте сжатие. Если окно заполняется сразу после сжатия, ограничьте последние большие журналы или файлы нужными частями.
При прямых обращениях к API
/compact и /clear — операции Claude Code, а не управляющие команды для Messages API. При работе с API проверьте отправляемые messages, system, tools и вложения; оцените ввод через API подсчёта токенов целевой модели. Уменьшайте сам запрос: суммируйте старую историю, оставляйте нужные разделы документов, убирайте лишние определения. Не разрывайте пары вызовов инструментов и их результатов. Для длинных разговоров доступно и сжатие на стороне API, но поддерживаемые модели и настройки отличаются от команд Claude Code.
После восстановления убедитесь, что на небольшой запрос приходит ответ, затем постепенно добавляйте нужные сведения. Повторная отправка того же огромного ввода и ожидание не увеличат ёмкость. Регулярная очистка описана в статье Экономия токенов в Claude Code.
5. Как отличить похожие ошибки
Слишком большой ввод, заданный предел вывода, достижение предела окна при генерации и расход за период — разные проблемы. Проверяйте текст ошибки или поле API stop_reason, а не делайте вывод только по обрыву ответа.
| Симптом | Значение | Основное действие |
|---|---|---|
| Prompt is too long / N tokens > M maximum | Предмет этой статьи: ввод превышает контекстное окно | /compact, /clear, передача больших чтений субагенту или модель 1M |
| Ответ обрывается (stop_reason: max_tokens) | Вывод достиг заданного в запросе max_tokens | В API проверьте настройку вывода и предел модели либо попросите продолжение |
| stop_reason: model_context_window_exceeded | Ввод и вывод вместе достигли предела окна при генерации | Сократите ввод, оставив место для вывода |
| usage limit reached | Доступный по плану объём использования исчерпан; это не размер токенного окна | Дождитесь сброса; см. Что делать с лимитами использования |
| Usage credits required for 1M context | Проблема доступа: выбранный контекст 1M не входит в план. Это не переполнение ввода и не исчерпанный объём | Включите кредиты и перезапустите, либо через /model вернитесь к стандартному окну |
По спецификации API Anthropic, Claude 4.5 и новее принимает запрос, если сам ввод помещается, даже когда ввод вместе с запрошенным max_tokens превышает окно. Достижение предела окна при генерации даёт model_context_window_exceeded, поэтому один короткий ответ ещё не доказывает остановку из-за max_tokens. Другие проблемы — в статье Частые ошибки Claude Code.
6. Профилактика
Перед работой: проверьте загруженное через /context. Сужайте большие документы поиском или диапазонами строк вместо вставки целиком. Делегируя исследование, задавайте и объём выводов, которые должен вернуть субагент.
Во время работы: обычно оставляйте автоматическое сжатие включённым. Если помните, что отключали его, проверьте /config и применённые настройки. Убедитесь также, что после каждого сжатия не перечитывается тот же материал. Более частое ручное сжатие не обязательно лучше: важны момент запуска /compact и указание решений, которые нужно сохранить.
Между задачами: перед несвязанной задачей сохраните нужные сведения в файлы и выполните /clear для нового разговора. Предыдущий разговор сохраняется, но возобновление той же огромной истории может вернуть причину ошибки. В постоянных инструкциях CLAUDE.md держите только правила, нужные каждый раз.
Нестандартные подключения: при использовании шлюза или собственного ID модели проверьте, соответствует ли предполагаемое Claude Code окно реальной ёмкости подключения. Увеличение числа в конфигурации не расширяет настоящее окно модели. Вместе с администратором изучите официальные настройки собственных моделей.
Итоги
Prompt is too long означает, что полный ввод с историей и вложениями не помещается, а не только последняя набранная фраза. Выбирайте по ситуации: /compact для длинной истории, сокращение слишком большого начального ввода или устранение причины ошибки сжатия.
Подробные определения MCP по умолчанию загружаются по запросу. Проверяйте текущее содержимое через /context, а не оценивайте накладные расходы лишь по числу серверов. Для 1M проверяйте модель, подключение и условия плана; разделяйте ёмкость, оплату и пороги автоматического сжатия. При прямом использовании API проверяйте запрос и причину остановки вместо команд Claude Code.
Частые вопросы
В. «Prompt is too long» и «usage limit reached» — одно и то же?
О. Нет. Первая ошибка означает превышение контекстного предела одним запросом, вторая относится к объёму использования по плану. При слишком большом вводе сократите отправляемое. /clear не восстанавливает объём, доступный по плану.
В. Почему ошибка возникает при включённом автоматическом сжатии?
О. Возможны огромный ввод, отсутствие предыдущего разговора для сжатия, ошибка сжатия или повторное заполнение окна сразу после него. Не сводите диагноз к двум вариантам: прочитайте всю ошибку и проверьте последние чтения. Если указана причина вроде ошибки аутентификации, сначала устраните её.
В. /compact тоже выдаёт «Conversation too long».
О. Официальное объяснение — не хватает места для сводки. Очистите поле ввода, дважды нажмите Esc, выберите в списке предыдущий ход для отката разговора и повторите попытку. Если этого мало, запишите важное и начните с меньшего ввода после /clear. Перед действием, откатывающим код, проверьте его область.
В. Поможет ли переход на модель 1M?
О. Может помочь, если нужный ввод помещается в новое окно, но условия доступности зависят от модели, подключения и плана. Стандартная цена за токен при 1M не означает прежнюю общую стоимость при большем объёме обработки. Сначала сократите лишнюю историю и огромные выводы: так проще оценить нужную ёмкость.
В. Как понять, что занимает окно?
О. В Claude Code используйте /context. Это не накопленный расход или лимиты плана в /usage. Часть определений MCP загружается по запросу, поэтому одного числа подключений недостаточно. Для API оценивайте запрос через API подсчёта токенов целевой модели.