Claude Code и миллион токенов: сессии, compact и здравый смысл

В Claude Code качество ответов зависит не только от модели, но и от того, как вы ведёте сессию: что оставляете в контексте, что сворачиваете и когда вообще начинаете заново. После расширения окна до порядка миллиона токенов эти решения стали ещё заметнее — запас большой, но «мусор» в истории никуда не девается.
Что считается контекстом
Под контекстным окном имеется в виду всё, что модель «видит» перед следующим ответом: системные инструкции, история диалога, результаты вызовов инструментов и содержимое файлов, которые агент уже прочитал. Чем шире окно, тем дольше можно держать в голове большой проект — но тем выше цена за ошибки в управлении этим объёмом.
Context rot и зачем нужна compaction
На практике заметен эффект, который в материале называют context rot: по мере роста истории растёт и шум — старые, уже неактуальные куски начинают отвлекать модель от текущей задачи, а внимание распределяется тоньше. Окно при этом остаётся жёстким лимитом: когда вы к нему подбираетесь, длинная история может быть сжата в краткое резюме, после чего работа продолжается уже в «свежем» слое — это и есть compaction. Плохая свёртка (когда в резюме теряются важные детали) бьёт по качеству сильнее, чем кажется, поэтому имеет смысл заранее думать, что вы вообще кладёте в сессию.
Команда /usage
В Claude Code добавили слэш-команду /usage — чтобы проще ориентироваться в расходе и нагрузке при работе в терминале. Если вы не понимаете, «куда уходит» контекст и почему сессия ведёт себя иначе, чем вчера, начать стоит с прозрачной картины использования, а уже потом — с тонкой настройки сценариев.
Практика: когда продолжать, когда резать, когда отпускать
- Одна долгая сессия — удобно для связного рефакторинга или фичи в одном модуле, пока контекст остаётся релевантным.
- Новая сессия — логична, когда вы перескакиваете на другую задачу, другой сервис или другой стек: меньше шансов смешать договорённости и артефакты.
- Compaction / «перемотка» контекста — имеет смысл, когда история раздулась, но задача всё ещё одна: вы убираете лишнее, сохраняя суть. (Точные команды и нюансы rewind/compact лучше сверить с актуальной справкой в продукте.)
- Сабагенты — способ вынести подзадачу в отдельный контур, чтобы не засорять родительскую сессию лишними вызовами и промежуточными файлами.
Универсального рецепта «всегда N сессий» нет: кто-то живёт в одном длинном чате, кто-то режет историю агрессивно. Золотая середина обычно там, где вы сознательно выбираете, что должно остаться в контексте, а что — в репозитории, тикете или новом чате.
Источник и развёрнутые пояснения: Using Claude Code: session management and 1M context (Claude).