Долгая сессия тратит больше токенов: /compact или /clear?
При смене задачи используйте /clear, а /compact — только посреди задачи. Каждое сообщение заново читает весь разговор, поэтому чем дольше сессия, тем дороже каждая строка. /clear ничего не стоит; /compact — сам по себе большой запрос.
Codex
Для новой задачи начинайте новый чат через /new, а когда одна задача разрослась — используйте /compact.
Расход Codex зависит от размера контекста: чем больше ввод, тем больше расход. Кэшированный ввод считается как десятая часть обычного, а запись в кэш бесплатна, но чем длиннее разговор, тем больше эта доля. При смене задачи введите /new (или /clear) — контекст начнётся с нуля; если ту же задачу нужно продолжать, а она уже длинная, /compact превратит чат в краткое резюме. /status показывает расход токенов и сколько контекста осталось, а /resume возвращает старый чат.
Что сказано в официальной документации
Model choice, context, reasoning, tool use, retrieval, and caching all affect usage, so prompt length alone isn't a reliable estimate.Charges are based on the model used and the actual input, cached input, and output tokens consumed.Codex does not charge for cache writes./new: Start a new chat inside the same CLI session./compact: Summarize the visible chat to free tokens./status: Display session configuration and token usage.Claude
При смене задачи — /clear, он ничего не стоит. /compact — только посреди задачи: это сам по себе большой запрос.
Claude Code отправляет весь разговор с каждым запросом, а каждый вызов инструмента — это ещё один запрос. С кэшем история перечитывается по кэш-ставке, примерно десятая часть обычного ввода, так что одна строка в сессии, открытой весь день, всё равно платит за всю историю. Панель /usage говорит об этом так: «Longer sessions are more expensive even when cached. /compact mid-task, /clear when switching to new tasks.» (долгие сессии обходятся дороже даже с кэшем; /compact — посреди задачи, /clear — при переходе к новой). По подписке кэш живёт час, а когда вы перешли на usage credits — пять минут; после более долгого перерыва первое сообщение заново обрабатывает весь контекст по обычной ставке, и это самое дорогое сообщение. Перед /clear выполните /rename, чтобы потом найти сессию через /resume. /compact принимает пометку о том, что сохранить, например /compact keep only test output and code changes, а раздел с заголовком # Compact instructions в CLAUDE.md делает это постоянным правилом.
Что сказано в официальной документации
With prompt caching, Claude Code re-reads that history at the cached token rate, so a one-line question in a session that has been open all day still draws usage for the whole conversation.Cache misses: your first message after a break longer than the cache lifetime misses the cache and reprocesses your full context. The lifetime is an hour on a subscription and drops to five minutes once you're drawing on usage creditsCompaction: /compact reads the conversation it summarizes, so compacting a large context is itself a large request. When you want a fresh start instead of continuity, /clear costs nothingUse /clear to start fresh when switching to unrelated work. Stale context wastes tokens on every subsequent message. Use /rename before clearing so you can easily find the session later, then /resume to return to it.cache_read_input_tokens — Tokens served from cache on this turn, billed at roughly 10% of the standard input rateВеб-поиск, большие файлы, длинные логи: не пускайте их в контекст
Один поиск стоит дёшево. Дорого — положить в контекст целую веб-страницу, целый файл или целый лог: как только они там оказались, каждое следующее сообщение платит за них снова.
Нужен один факт — просите поиск, а не загрузку всей страницы; загружайте, только когда нужен полный текст. У Claude и web search, и web fetch идут в счёт лимитов, а пересказ статьи на 10 000 слов стоит намного дороже одного поиска. Research делает много поисков подряд и тратит ещё больше.
Называйте файл и функцию, а если можете — и диапазон строк. «Исправь функцию login в auth.ts» читает один файл; «улучши этот код» запускает широкий обход.
Фильтруйте логи и вывод тестов до того, как их увидит агент. В Claude Code хук PreToolUse может сделать так, чтобы команда тестов возвращала только упавшие строки, и на официальной странице о расходах есть готовый скрипт. Проще всего самому отобрать строки с ошибками через grep и вставить их.
Задачи с длинным выводом (запуск тестов, загрузка документации, чтение логов) отдавайте субагенту: длинный вывод остаётся в его контексте, а основная сессия получает резюме. Это экономит контекст основной сессии; общее число токенов при этом не всегда меньше.
Codex: давайте только нужные файлы и по возможности сужайте источники.
Что сказано в официальной документации
Usage of web search and web fetch counts toward your usage limits.asking Claude to summarize a 10,000-word article will use substantially more of your context window than a regular web search query.Instead of Claude reading a 10,000-line log file to find errors, a hook can grep for ERROR and return only matching lines, reducing context from tens of thousands of tokens to hundreds.Vague requests like "improve this codebase" trigger broad scanning. Specific requests like "add input validation to the login function in auth.ts" let Claude work efficiently with minimal file reads.Limit source material. Provide only relevant files and, when possible, narrow the sources or date range.Частые заблуждения
- /compact экономит токены, запускайте его когда угодно
Не экономит. Чтобы написать резюме, /compact должен прочитать весь разговор, поэтому чем больше контекст, тем больше этот запрос. Он подходит для середины задачи, которую вы собираетесь продолжать. При смене задачи используйте /clear — он ничего не стоит.
- С кэшем сессию можно держать открытой весь день почти бесплатно
Это не так. Кэш лишь снижает цену перечитывания примерно до десятой части. Вся история всё равно читается с каждым сообщением, и чем она длиннее, тем больше эта доля. К тому же по подписке кэш живёт всего час: вернётесь после более долгого перерыва — и первое сообщение заново обработает весь контекст по обычной ставке.
- Веб-поиск сжигает токены, лучше им не пользоваться
Дело не в поиске. Поиск приносит несколько фрагментов. Дорого стоит загрузка целых страниц, чтение целых файлов и вставка целых логов: это содержимое остаётся в контексте и перечитывается на каждом следующем ходу.
Советы
- Перед сменой задачи выполните /rename, затем /clear; вернуться поможет /resume. В Codex используйте /new и /resume.
- Используйте /compact только посреди задачи и добавляйте, что сохранить, например /compact keep only test output and code changes.
- Уходите больше чем на час? Сначала закончите текущее дело. На Pro и Max, когда Claude Code предлагает продолжить большую сессию с резюме, соглашайтесь: следующие сообщения тогда обходятся без полной истории.
- В любой момент запустите /context в Claude Code или /status в Codex, чтобы увидеть, насколько заполнен контекст.
- Останавливайте задачи /loop и завершайте работу участников команды, когда они закончили. Каждый запуск в простаивающей сессии несёт с собой весь контекст.
- Claude Code отмечает в /usage длинный контекст или промахи кэша, когда что-то из этого достигает 10 % недавнего расхода. Увидели такую пометку — пора делать /clear.