Управление контекстом

Понимание и управление контекстным окном Claude Code, эффективное использование команд /compact, /clear и других

Обновлено 2026-10-15

Нужен API-ключ? Зарегистрироваться →Эндпоинты и Base URL →

Содержание

Каждый сеанс Claude Code работает в контекстном окне. Понимание принципов работы контекста поможет вам эффективнее использовать Claude и избежать ошибок, вызванных переполнением контекста.

Понимание контекстного окна

По состоянию на 2026-10-15, согласно документации Claude Code: Fable 5.1, Fable 5, Sonnet 5 и новее, Haiku 5.5, Opus 4.7 и новее по умолчанию работают с контекстным окном в 1 миллион token (1M), суффикс [1m] не нужен. Opus 4.6 и Sonnet 4.6 получают 1M только в варианте [1m], иначе окно составляет 200K. Модели, которые чаще всего используют на QCode (claude-opus-5-5, claude-sonnet-5-5, claude-haiku-5-5), относятся к первой группе. Чтобы зафиксировать окно сеанса на 200K, задайте переменную окружения CLAUDE_CODE_DISABLE_1M_CONTEXT=1.

Контекст включает:

  • Всю историю диалога (ваши вопросы + ответы Claude)
  • Содержимое файлов, добавленных через @
  • Входные данные и результаты вызовов инструментов
  • Системные подсказки и содержимое CLAUDE.md

По мере продолжения диалога контекст постоянно растёт. Когда контекст приближается к лимиту, скорость ответов Claude может снижаться, и в конечном счёте сработает автоматическое сжатие или возникнет ошибка.

Сжатие контекста: /compact

Команда /compact сжимает текущую историю диалога в краткое резюме, освобождая пространство контекста и сохраняя при этом важную информацию.

/compact

Вы также можете добавить пользовательские инструкции для управления фокусом сжатия:

/compact сохранить все примеры кода и список выполненных задач

Механизм автоматического сжатия: если вы не задавали окно сами, Claude Code сжимает диалог автоматически, когда тот приближается к лимиту контекста модели; для моделей с родным окном 1M по умолчанию это около 967K token (по официальной документации). Чтобы сжимать раньше, задайте окно командой вроде /autocompact 500k (auto возвращает значение по умолчанию; нужен Claude Code v2.1.221 или новее). Вы также можете запустить /compact заблаговременно при заполнении контекста на 70-80%, не дожидаясь последнего момента.

Очистка истории: /clear

Команда /clear удаляет всю историю диалога и начинает новый сеанс:

/clear

Примечание: /clear удаляет весь контекст, включая информацию о проекте, которую уже усвоил Claude. Подходит для переключения на совершенно новую несвязанную задачу.

Просмотр состояния контекста: /context

Используйте команду /context для просмотра текущего использования контекста:

/context

Ссылки на файлы через @

Используйте символ @ для добавления содержимого файлов в контекст:

@src/main.ts объясни функциональность этого файла
@package.json проверь версии зависимостей
@README.md

Лучшие практики:

  • Добавляйте только файлы, связанные с текущей задачей, избегая лишнего контекста
  • Большие файлы быстро расходуют пространство контекста, отдавайте приоритет ключевым файлам
  • Используйте CLAUDE.md для предоставления контекста проекта, а не повторяйте его в каждом диалоге

Ввод через конвейер

Передавайте вывод команд или содержимое файлов в Claude через конвейер:

# Передать содержимое файла
cat error.log | claude "проанализируй эту ошибку"

# Передать вывод команды
git diff | claude "сгенерируй сообщение коммита"

# Многострочный ввод
echo "Пожалуйста, проанализируй следующий код:
$(cat src/utils.ts)" | claude

Предотвращение переполнения при длительных сеансах

Симптом: E015 Internal server error

Когда контекст диалога приближается к пределу ёмкости модели (~95%), API Anthropic возвращает ошибку 500. QCode.cc преобразует её в ответ 429:

429 {"error":{"code":"E015","message":"Internal server error"},"status":500}

Это известное поведение API Anthropic (не уникальная проблема QCode.cc). QCode.cc преобразует такие ошибки 5xx в ответы 429, чтобы задействовать встроенный механизм повторных попыток Claude Code.

Шаги по устранению

  1. Попробуйте /compact:

  2. Если успешно, диалог может продолжаться в обычном режиме

  3. Если /compact сам выдаёт ошибку (запрос на сжатие тоже требует отправки полного контекста), выполните следующий шаг

  4. Выйдите и перезапустите Claude Code: bash # Нажмите Ctrl+C или введите /exit # Затем перезапустите claude

Рекомендации по предотвращению

  • Регулярное сжатие: запускайте /compact заблаговременно при заполнении контекста на 70-80%, не дожидаясь переполнения
  • Декомпозиция задач: разбивайте большие задачи на несколько небольших, используя отдельный сеанс для каждой
  • Используйте CLAUDE.md вместо повторного копирования: записывайте контекст проекта в CLAUDE.md — Claude автоматически прочитает его при запуске, без необходимости повторно предоставлять в каждом диалоге
  • Избегайте добавления больших файлов: каждый добавленный большой файл расходует значительное количество контекста, отдавайте приоритет ключевым фрагментам
  • Используйте /cost для мониторинга: команда /cost позволяет просмотреть расход token в текущем сеансе

Краткий справочник команд

Команда Действие
/compact Сжать контекст (сохранить резюме)
/clear Очистить весь контекст
/context Просмотреть состояние контекста
/cost Просмотреть расход token
@путь_к_файлу Добавить файл в контекст
## Иерархия контекстной инженерии

«Контекстная инженерия» означает осознанную организацию того, что Claude читает при каждом запросе — размещение ценной, стабильной информации на первом плане и отсечение шума. Контекст Claude Code следует чёткой иерархии приоритетов (от высшего к низшему):

  1. Корпоративная / управляемая политика — правила, спускаемые организацией. Высший приоритет; отдельный пользователь не может их переопределить.
  2. Память проекта CLAUDE.md / AGENTS.md — инструкции уровня проекта в корне репозитория, описывающие соглашения по коду, команды сборки и контекст проекта.
  3. Правила с привязкой к пути — вложенные файлы CLAUDE.md или .claude/rules в подкаталогах, действующие только на работу в пределах этого пути.
  4. Живая история диалога — обмен сообщениями в текущем сеансе. Низший приоритет и та часть, которая чаще всего разрастается.

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

Практические рекомендации

  • Держите инструкции краткими и содержательными: чем лаконичнее ваш CLAUDE.md, тем легче Claude их соблюдать; длинное, не относящееся к делу содержимое размывает ключевые инструкции.
  • /compact в логических точках: сжимайте историю после завершения этапа — длинные, расфокусированные диалоги снижают точность.
  • /clear между несвязанными задачами: очищайте историю при переключении на совершенно новую задачу, чтобы старый контекст не мешал.
  • Ссылайтесь по пути вместо вставки: используйте @путь_к_файлу, чтобы Claude читал файлы по мере необходимости, вместо того чтобы вставлять большие блоки в диалог — это экономит контекст и повышает точность.
  • Размещайте стабильное содержимое в начале: неизменное содержимое — системные подсказки, CLAUDE.md, большие блоки фоновой информации — должно идти первым и не редактироваться часто, чтобы попадать в кэширование подсказок (чтение из кэша стоит примерно 10% от обычного ввода). Именно поэтому краткий, стабильный CLAUDE.md и повторное использование сеансов экономят деньги.

Коротко: погружайте стабильное, ценное содержимое в верх иерархии и не меняйте его, а изменчивую историю диалога периодически сворачивайте. Подробнее см. Память проекта CLAUDE.md и Оптимизация затрат.

Подробности о частых командах контекста

По состоянию на 2026-10-15, согласно справочнику команд Claude Code:

Команда Что сказано в документации
/compact [инструкции] Сжимает диалог до краткого резюме и освобождает контекст; можно добавить указания, что сохранить
/clear Начинает новый диалог с пустым контекстом (псевдонимы /reset, /new); прежний диалог можно найти через /resume
/context Показывает занятость контекста цветной сеткой и подсказки по оптимизации для самых «тяжёлых» элементов; all разворачивает детали
/rewind Откатывает диалог и код к прежней точке; можно также выбрать «Summarize from here» или «Summarize up to here», сжав только часть и сохранив остальное
/autocompact [auto\|размер] Задаёт окно автосжатия, например /autocompact 500k; auto возвращает значение по умолчанию, подобранное под модель

Согласно официальной документации по памяти, CLAUDE.md в корне проекта после /compact заново читается с диска и не теряется; инструкции, сказанные только в диалоге, после сжатия могут исчезнуть — всё, что должно сохраняться, запишите в CLAUDE.md.

Что учесть при работе через QCode

  • У моделей Claude нет отдельного тарифа для длинного контекста, оплата идёт по фактическим токенам. У моделей GPT, если входные данные одного запроса (включая попадания в кэш) превышают 272K, весь запрос оплачивается по тарифу длинного контекста; правило описано в разделе Тарификация. Сжимайте длинную сессию до приближения к 272K — так дешевле.
  • Каждый ход заново отправляет модели весь текущий контекст, поэтому чем длиннее сессия, тем больше токенов на ход. Стабильное начало (CLAUDE.md, системный промпт) может браться из кэша, а частое изменение ранних частей сбрасывает кэш.
  • Расход текущей сессии смотрите командой /usage (псевдоним /cost). QCode тарифицирует по токенам, цены по моделям — на qcode.cc/models.

Частые ошибки и диагностика

Симптом Причина Что делать
429 с E015 / Internal server error в теле Контекст близок к пределу модели (около 95%): переполнение в длинной сессии Сначала /compact; если и он не проходит, выйдите и перезапустите — см. «Предотвращение переполнения» выше
Сам /compact выдаёт ошибку Запрос на сжатие тоже несёт весь контекст, который уже не помещается Выйдите и перезапустите Claude Code; при необходимости вернитесь к более раннему диалогу через /resume
После сжатия Claude «забыл» требование Оно было сказано только в диалоге Запишите его в CLAUDE.md
Нужно зафиксировать окно 200K Окно по умолчанию уже 1M Задайте переменную окружения CLAUDE_CODE_DISABLE_1M_CONTEXT=1
Контекст растёт необычно быстро Подключены большие файлы или длинный вывод инструментов Найдите «тяжёлые» элементы через /context и подключайте только нужные фрагменты

Часто задаваемые вопросы

Что использовать: /compact или /clear?

Если вы продолжаете одну и ту же работу — /compact: он сохраняет резюме. /clear нужен лишь при переходе к совершенно несвязанной задаче: он начинает с чистого листа.

Теряется ли CLAUDE.md при сжатии?

Нет. CLAUDE.md в корне проекта после сжатия читается заново; вложенные CLAUDE.md в подкаталогах и правила с условиями по путям подгружаются снова по мере необходимости.

Как сделать так, чтобы автосжатие срабатывало раньше?

Задайте окно командой вроде /autocompact 500k; auto возвращает значение по умолчанию, подобранное под модель. Команда требует Claude Code v2.1.221 или новее. Можно также запускать /compact вручную, когда занято 70–80% (это рекомендация, а не официальная цифра).

После сжатия что-то пропало. Можно ли вернуться?

Да. Выберите прежнюю точку через /rewind и восстановите диалог, код или и то и другое. Это опирается на контрольные точки сессии; см. Советы по рабочим процессам.

Начните с QCode

Один API-ключ для Claude Code, Codex и других инструментов; тарификация по токенам, цены каждой модели — на qcode.cc/models

Enterprise →