Самая опасная цифра в дашборде AI-кодинга — та, что подписана просто «стоимость» без единого пояснения.
Локальная утилита может восстановить активность токенов из логов Claude Code и Codex, применить таблицу цен с датой — и получить оценку. Она годится для сравнения периодов и понимания формы локальной активности. Но это не счёт.
Начните с границы формата файла
Claude Code и Codex пишут логи по-разному. Claude умеет показывать поля input, output, cache creation и cache read в сообщениях ассистента. Codex может отделять контекст модели от поздних событий с токенами, а кешированный ввод иногда включается в общий input.
Перед любыми расчётами приведите форматы к единому виду:
provider timestamp model input tokens output tokens cache creation tokens cache read tokensКак только такая граница появилась, остальная часть отчёта перестаёт гадать, что означает сырое поле провайдера.
Кешированный ввод — не обычный ввод дважды
Для события Codex безопасный расчёт начинается с отделения кешированного ввода:
non-cached input = max(total input - cached input, 0)Затем оценивается некeшированный ввод, вывод, создание кеша и чтение кеша по своим тарифам. Ценообразование общего ввода с добавлением чтения кеша даёт красивый на вид, но завышенный результат.
Вот почему простая функция tokens * price не годится для трекера с несколькими провайдерами.
Повторное сканирование не должно создавать новые расходы
Файлы сессий читаются многократно. Приложения перезапускаются, наблюдатели переподключаются, архивные файлы могут всплыть. Если одно и то же событие считать каждый раз при его обнаружении, недельный отчёт растёт, хотя объём работы не меняется.
Защита от повторного учёта — часть бухгалтерии. Используйте стабильные идентификаторы событий провайдера, где они есть. Если формат их не предоставляет, документируйте запасной вариант и его погрешность, а не прячьте за отполированной суммой.
Дата в таблице цен
Идентификаторы новых моделей могут появиться раньше, чем десктопное приложение узнает их тарифы. Цены API тоже меняются.
Трекер должен:
- поставлять снимок тарифов с датой;
- показывать неизвестные именованные модели;
- оставлять их без цены, а не угадывать похожую ставку;
- сохранять дату тарифа в исторических отчётах.
В Agent Island расчётное число подписано «API value». Это контрафактная оценка по встроенным тарифам.
Держите четыре ответа раздельно
Полезный дашборд не должен схлопывать в одну метрику:
- Квота провайдера: насколько аккаунт близок к сбросу.
- Локальный объём токенов: что содержат записи сессий.
- Оценочная стоимость API: расчёт по датированным категориям токенов.
- Фактические счета: чеки, кредиты, подписки и корректировки провайдера.
Только четвёртый — счёт. Локальные записи не содержат достаточно контекста, чтобы его воспроизвести.
Чек-лист для оценки
Прежде чем доверять трекеру затрат на AI-кодинг, спросите:
- Какие именно локальные записи он читает?
- Разделяет ли он ввод, вывод, создание кеша и чтение кеша?
- Как он предотвращает двойной учёт повторных событий?
- Что происходит, когда модель отсутствует в таблице тарифов?
- Датирован ли снимок цен?
- В интерфейсе написано «оценка» или подразумеваются реальные траты?
- Сбор локальный, а передача данных — отдельное действие?
Реализация может быть сложной, но контракт должен легко объясняться. Если цифру можно принять за реально потраченные деньги, пояснение должно быть рядом с ней.
Комментарии (0)
Войдите, чтобы комментировать.
Пока нет комментариев. Будьте первым.