← ClaudeAtlas

session-costlisted

Посчитать израсходованные токены сессии Claude Code (input/output/cache) из ее транскрипта. Использовать когда нужно приложить расход токенов к смете/отчету по задаче, оценить объем работы агента, или сравнить вклад генерации против перечитывания контекста. Триггеры "сколько токенов потратили", "расход токенов за сессию", "токены в смету", "cost сессии". Для остатка лимита аккаунта это НЕ сюда - там /usage.
dewil/claude-toolkit · ★ 8 · Data & Documents · score 78
Install: claude install-skill dewil/claude-toolkit
# session-cost Считает токены сессии Claude Code по ее транскрипту, программно и без внешних API. `/usage` дает только % лимита аккаунта, `/cost` - ручной вызов; этот скилл дает сырые токены по типам, пригодные для сметы, отчета и автоматизации. ## Как работает Claude Code пишет каждую сессию в `~/.claude/projects/<encoded-project>/<session-id>.jsonl`. У каждого assistant-сообщения есть `message.usage` с полями `input_tokens`, `output_tokens`, `cache_creation_input_tokens` (запись кэша), `cache_read_input_tokens` (чтение кэша). Скрипт суммирует их за сессию. Имя папки проекта - абсолютный путь рабочей папки, где каждый не-alnum символ заменен на `-` (`/Users/x/My.Proj` -> `-Users-x-My-Proj`). ## Запуск ```bash python3 scripts/session-cost.py # текущая сессия (env CLAUDE_CODE_SESSION_ID), проект по CWD python3 scripts/session-cost.py --session <id> # конкретная сессия python3 scripts/session-cost.py --file <path.jsonl> python3 scripts/session-cost.py --project <dir> --all-sessions python3 scripts/session-cost.py --json # машиночитаемо ``` ## Что знать про цифры (важно для честной сметы) - **Текущая сессия** определяется по env `CLAUDE_CODE_SESSION_ID` (его ставит Claude Code) - надежно. Без него - свежайшая по mtime, а при **параллельных сессиях** в одном проекте это может оказаться ЧУЖАЯ сессия. Тогда указывай `--session` явно. - **`cache_read` обычно доминирует** (десятки млн) - это перечитывание постоянного контекста (системный промпт, прав