← Все гайды AI Release
EN Подписаться на @ai_release1

Как отслеживать лимиты и квоты ИИ-сервисов: TokenBar для Codex, Claude и Cursor

Обновлено: 25.10.2026 · AI Release · @ai_release1
Как отслеживать лимиты и квоты ИИ-сервисов: TokenBar для Codex, Claude и Cursor

TL;DR

Требования и подготовка

Пример: проверка, что jq уже стоит — jq --version. Если в ответ приходит command not found (bash) или jq : Имя "jq" не распознано (PowerShell), ставьте по команде выше.

Шаг 1. Инвентаризация сервисов и фиксация базовой линии

Что сделать: создать рабочую папку, проверить окружение и записать текущие показатели расхода по каждому сервису в файл quota.json.

Зачем: базовая линия — это снимок «сколько уже израсходовано» на старте. Без него через неделю невозможно понять, растёт расход или нет, и не с чем сверять данные TokenBar.

Как проверить: команда cat quota.json | jq . печатает ваш объект без ошибок парсинга.

mkdir -p ~/quota-monitor && cd ~/quota-monitor
node -v
npm -v
jq --version

Ожидаемый результат: три строки, каждая содержит номер версии. Если хоть одна команда отвечает command not found, дальше идти нельзя — установите компонент.

Создайте файл quota.json в папке ~/quota-monitor. Поля used (израсходовано) и limit (потолок) заполните цифрами со страницы использования соответствующего сервиса; нули ниже — заглушки, а не реальные лимиты:

{
  "checked_at": "2025-01-15T10:00:00Z",
  "providers": {
    "codex":  { "used": 0, "limit": 0 },
    "claude": { "used": 0, "limit": 0 },
    "cursor": { "used": 0, "limit": 0 }
  }
}

Пример: если панель Cursor показывает «израсходовано N из M запросов», впишите "used": N, "limit": M. Единицы измерения (запросы, токены, кредиты) у каждого провайдера свои — не смешивайте их в одном счёте, но и не приводите к общему знаменателю: скрипт считает проценты внутри каждого провайдера отдельно.

Почему это работает: плоский JSON с одинаковой структурой по трём провайдерам дальше читается одной командой jq, без ручного разбора разных форматов вывода.

Шаг 2. Установка TokenBar и подключение Codex, Claude, Cursor

Иллюстрация к разделу «Шаг 2. Установка TokenBar и подключение Codex, Claude, Cursor»
Иллюстрация к разделу «Шаг 2. Установка TokenBar и подключение Codex, Claude, Cursor»

Что сделать: поставить CLI TokenBar глобально, создать конфигурационный файл и перечислить в нём три провайдера.

Зачем: TokenBar — консольная утилита, которая сводит показатели лимитов и квот нескольких ИИ-сервисов в один снимок. Без него вы открываете три разные панели и вручную переносите цифры.

Как проверить: tokenbar --help печатает список команд, а tokenbar providers (или аналогичная команда вашей версии) показывает три подключённых провайдера.

npm install -g <имя-пакета-tokenbar>
tokenbar --help

Точное имя npm-пакета, набор флагов и поддерживаемые версии Node.js — сверьтесь с документацией TokenBar: в открытых источниках канала они не приводились, поэтому подставлять конкретику отсюда нельзя.

Конфигурация. Типовой путь для CLI-утилит на Linux/macOS — ~/.config/tokenbar/config.json; на Windows — %APPDATA%\tokenbar\config.json. Фактический путь и имена ключей сверьте с документацией, логика остаётся той же:

{
  "providers": ["codex", "claude", "cursor"],
  "refresh_interval_min": 15,
  "warn_threshold_pct": 80
}

Если сервис требует отдельный ключ, положите его в переменную окружения перед запуском. Имя переменной сверьте с документацией — не угадывайте:

export TOKENBAR_CLAUDE_KEY="<ваш-ключ>"

Пример: после установки выполните tokenbar --help и найдите в выводе команду выгрузки в JSON (обычно содержит слово export или json). Она понадобится на следующем шаге. Если такой команды нет — сверьтесь с документацией, возможно, снимок сохраняется автоматически в файл, путь к которому указан в справке.

Почему это работает: TokenBar обращается к каждому провайдеру по его учётным данным и складывает ответы в один файл-снимок; вы читаете один JSON вместо трёх панелей. Как связать такие CLI с другими агентами в одном рабочем окружении, разобрано в гайде как превратить чёлку MacBook в пульт управления ИИ-агентами.

Шаг 3. Проверка работы: снимок квот и оповещение по порогу

Иллюстрация к разделу «Шаг 3. Проверка работы: снимок квот и оповещение по порогу»
Иллюстрация к разделу «Шаг 3. Проверка работы: снимок квот и оповещение по порогу»

Что сделать: выгрузить снимок TokenBar в JSON, прогнать его через скрипт проверки порогов и поставить скрипт на расписание.

Зачем: сам снимок — просто файл, который никто не откроет. Скрипт превращает проценты в строки OK/ALERT, а cron или Планировщик задач запускает его без вашего участия.

Как проверить: скрипт печатает по одной строке на каждого провайдера; при превышении порога появляется ALERT.

Сохраните файл quota-check.sh в ~/quota-monitor и сделайте его исполняемым:

#!/usr/bin/env bash
set -euo pipefail

SNAP="${1:-snapshot.json}"
THRESHOLD="${2:-80}"

jq -r '.providers | to_entries[] | "\(.key)\t\(.used)\t\(.limit)"' "$SNAP" |
while IFS=$'\t' read -r name used limit; do
  if [ "$limit" -le 0 ]; then
    printf 'SKIP  %s: лимит неизвестен (%s/%s)\n' "$name" "$used" "$limit"
    continue
  fi
  pct=$(( used * 100 / limit ))
  if [ "$pct" -ge "$THRESHOLD" ]; then
    printf 'ALERT %s: %s%% (%s/%s)\n' "$name" "$pct" "$used" "$limit"
  else
    printf 'OK    %s: %s%% (%s/%s)\n' "$name" "$pct" "$used" "$limit"
  fi
done
chmod +x quota-check.sh
./quota-check.sh snapshot.json 80

Пример вывода (значения условные, подставьте свои из снимка):

OK    claude: 41% (41/100)
OK    codex: 62% (62/100)
ALERT cursor: 84% (420/500)

Расписание. Строка для cron — проверка каждые 30 минут с дописыванием в журнал:

crontab -e
*/30 * * * * /home/<пользователь>/quota-monitor/quota-check.sh /home/<пользователь>/quota-monitor/snapshot.json 80 >> /home/<пользователь>/quota-monitor/quota.log 2>&1

Чек-лист приёмки:

Почему это работает: jq разворачивает объект providers в три строки «имя → used → limit», а цикл while считает процент целочисленно и сравнивает с порогом. Никаких внешних зависимостей, кроме jq, у проверки нет. Если вы держите ИИ-агентов в общем репозитории и хотите контролировать ещё и безопасность их кода, пригодится гайд как проверить код от Cursor и Claude Code на уязвимости.

Возможные проблемы и решения

Проблема. Команда TokenBar не находится после установки

npm prefix -g
export PATH="$(npm prefix -g)/bin:$PATH"

Затем перезапустите терминал и повторите tokenbar --help.

Проблема. Скрипт не видит провайдеров

head -c 120 snapshot.json
jq -e '.providers | type == "object"' snapshot.json

Вторая команда должна вернуть true. Если вернула false или ошибку — снимок пересоздан неверно, сверьтесь с документацией по флагу выгрузки.

Проблема. Проценты считаются как 0 % или деление падает

Резюме и следующие шаги

Вы получили три вещи: конфиг TokenBar с подключёнными Codex, Claude и Cursor, файл snapshot.json с текущими процентами расхода и скрипт quota-check.sh, который сам пишет ALERT в журнал по расписанию. Дальше настройте порог под свою нагрузку (например, 70 % для сервиса, который вы расходуете быстрее всего) и пересматривайте базовую линию quota.json раз в месяц.

FAQ

Нужен ли TokenBar, если я пользуюсь только одним сервисом?

Нет, для одного сервиса достаточно quota.json и скрипта из Шага 3 — они не зависят от TokenBar. TokenBar окупается удобством, когда сервисов два и больше.

TokenBar заменяет официальные панели биллинга и оплаты?

Нет. Он показывает лимиты и квоты, а баланс, счета и списания подтверждайте в кабинете провайдера. Расхождения трактуйте в пользу кабинета.

Как часто обновлять снимок квот?

Ориентир — интервал, указанный в refresh_interval_min (в примере 15 минут), а проверку порогов в cron можно ставить реже, раз в 30 минут. Для активной работы с агентами интервал уменьшают; конкретные ограничения по частоте запросов сверьте с документацией TokenBar.

Хранит ли TokenBar мои ключи и где они лежат?

Точный ответ зависит от версии и способа установки — сверьтесь с документацией TokenBar. Практическое правило: держите ключи в переменных окружения или в файле конфигурации с правами 600 и не коммитьте их в git.

🤖 Кратко для ИИ