Управление контекстом
Понимание и управление контекстным окном Claude Code, эффективное использование команд /compact, /clear и других
Нужен API-ключ? Зарегистрироваться →Эндпоинты и Base URL →
Содержание
- Понимание контекстного окна
- Сжатие контекста: /compact
- Очистка истории: /clear
- Просмотр состояния контекста: /context
- Ссылки на файлы через @
- Ввод через конвейер
- Предотвращение переполнения при длительных сеансах
- Краткий справочник команд
- Подробности о частых командах контекста
- Что учесть при работе через QCode
- Частые ошибки и диагностика
- Часто задаваемые вопросы
Каждый сеанс 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.
Шаги по устранению¶
-
Попробуйте
/compact: -
Если успешно, диалог может продолжаться в обычном режиме
-
Если
/compactсам выдаёт ошибку (запрос на сжатие тоже требует отправки полного контекста), выполните следующий шаг -
Выйдите и перезапустите 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 следует чёткой иерархии приоритетов (от высшего к низшему):
- Корпоративная / управляемая политика — правила, спускаемые организацией. Высший приоритет; отдельный пользователь не может их переопределить.
- Память проекта
CLAUDE.md/AGENTS.md— инструкции уровня проекта в корне репозитория, описывающие соглашения по коду, команды сборки и контекст проекта. - Правила с привязкой к пути — вложенные файлы
CLAUDE.mdили.claude/rulesв подкаталогах, действующие только на работу в пределах этого пути. - Живая история диалога — обмен сообщениями в текущем сеансе. Низший приоритет и та часть, которая чаще всего разрастается.
Понимание этой иерархии помогает размещать инструкции в правильном месте: общие соглашения — в 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