Разобрал 169 сессий Claude Code и нашёл, куда утекают токены
Автор распарсил свои логи Claude Code за полгода и посчитал, на что уходит контекст. Читать стоит, если лимиты подписки кончаются к обеду, а понимания, почему именно, нет: тут дан скрипт, который отвечает на этот вопрос по вашим собственным сессиям.
- 169 сессий, 28 649 запросов, 5,75 млрд токенов чтения из кеша, средний контекст одного запроса — 201k.
- 22 сессии длиннее 300 запросов дали 67 % всего расхода. Самая длинная — 886 запросов.
- 32 % объёма чтения — это повторные чтения одного файла в одной сессии: style.css на 16 123 строки прочитан 266 раз.
- 459 скриншотов обошлись примерно в 130 млн токенов, потому что браузерное превью жило прямо в основном чате.
- Цифр «после» у автора нет, он это признаёт: правила и хуки введены недавно. Долларовые суммы — пересчёт по тарифам API, а не счёт, сам он работает по подписке.
- Скопировать usage.js из статьи (около 30 строк на Node) и прогнать по ~/.claude/projects/**/*.jsonl: он отфильтрует isSidechain и напечатает сессии, запросы, чтение кеша и средний контекст.
- Повесить Stop-хук с порогами WARN_REQ = 120, HARD_REQ = 150, WARN_CTX = 150000, HARD_CTX = 200000. Он ничего не блокирует, только предупреждает.
- Записать в CLAUDE.md запрет читать один файл дважды за сессию: прочитанное всё ещё в контексте, изменившийся файл читать только диапазоном.
- Метрика: средний контекст запроса и число сессий длиннее 300 запросов. Снять сегодня, перезапустить usage.js через две недели. У автора было 201k и 22 такие сессии.
из статьи