Справочник28 августа 2026 г.·обновлено 28 августа 2026 г.

Claude Code API key: чем отличается от подписки, где взять и как хранить

Ключ нужен там, где нет интерактивного входа: CI, cron, скрипт, чужая машина. Где его выпустить, куда положить, как не утечь в git и как убедиться, что расход идёт по нужному ключу.

Что это решает

Claude Code API key — ключ из консоли Anthropic, которым клиент авторизуется вместо входа в аккаунт с подпиской. Он нужен там, где интерактивного входа нет: пайплайн CI, cron на сервере, скрипт с claude -p, чужая машина без браузера. Второй повод — учёт: расход по ключу и рабочему пространству виден отдельно, поэтому проект, команду или клиента считают по счёту, а не по ощущениям. Третий — потолок: подписка упирается в лимиты плана, ключ упирается только в тот лимит расхода, который поставили сами.

Как устроено

Два способа авторизации

ПодпискаКлюч API
Вход/login, браузер, аккаунтпеременная ANTHROPIC_API_KEY
Оплатафиксированный платёж за плансчёт за фактически потраченные токены
Потолоклимиты использования по окнулимит расхода и ограничения скорости организации
Где работаетинтерактивная сессия на машине с браузеромлюбой процесс, куда можно передать переменную окружения
Учётобщий по аккаунтупо ключу и рабочему пространству

Переключение живёт в окружении, а не в конфиге: заданная переменная ANTHROPIC_API_KEY перебивает сохранённый вход в аккаунт. Команда /status внутри сессии показывает, чем клиент авторизован прямо сейчас, — с неё и начинают любой разбор «почему списалось не туда».

Из чего складывается счёт

Оплата считается по токенам: отдельно вход, отдельно выход, ставки различаются по моделям. Чтение из кеша дешевле обычного ввода. Ключевая механика агентной работы: на каждом шаге в модель уходит весь накопленный контекст заново, поэтому расход растёт быстрее, чем длина переписки.

Практические следствия:

  • одна длинная сессия дороже двух коротких на ту же работу;
  • большой файл, оставшийся в контексте, оплачивается на каждом последующем шаге;
  • субагент, который перемалывает выдачу в своём окне и возвращает абзац, дешевле той же выдачи, вываленной в главный контекст;
  • модель попроще на механической работе экономит больше, чем любая правка промпта.

Точные ставки смотрят на странице цен Anthropic: они различаются по моделям и меняются, держать их в голове бессмысленно.

Где живёт ключ

В процесс ключ попадает несколькими путями, и в проекте выбирают один:

  • переменная окружения ANTHROPIC_API_KEY — через ~/.zshrc, direnv, секрет пайплайна, обёртку запуска;
  • apiKeyHelper в ~/.claude/settings.json — путь к команде, которая печатает ключ в stdout. Удобно, когда ключ выдаёт хранилище секретов и его ротируют по расписанию: сам ключ на диске в открытом виде не лежит;
  • шлюз: ANTHROPIC_BASE_URL вместе с ANTHROPIC_AUTH_TOKEN, когда трафик обязан идти через корпоративный прокси с логированием;
  • облако компании: CLAUDE_CODE_USE_BEDROCK или CLAUDE_CODE_USE_VERTEX — тогда авторизация берётся из кредов AWS или Google, а ключ Anthropic не нужен вовсе.

Что видно в консоли

Ключ выпускается в консоли Anthropic и привязан к организации и рабочему пространству. Значение показывается один раз при создании; дальше в консоли остаются имя, дата и расход. Забыли скопировать — выпускают новый, восстановить прежний нельзя.

Как подключить

  1. Консоль Anthropic → API keys → создать ключ. Имя — по месту использования: ci-rih-api, mac-dmitry, cron-reports. Имена вроде test через месяц не дадут понять, что отзывать.
  2. Скопировать сразу и положить в менеджер секретов: Keychain, 1Password, Vault, секреты CI. Не в заметки, не в чат, не в репозиторий.
  3. Завести отдельное рабочее пространство на проект, если расход нужно разделять. Тогда счёт бьётся по проектам сам, без ручного разбора выгрузки.
  4. Поставить лимит расхода на организацию или пространство до первого запуска. Ночной цикл, ушедший вразнос, останавливает лимит, а не человек у экрана.
  5. Отдать ключ процессу, не записывая его в файлы проекта:
export ANTHROPIC_API_KEY="$(security find-generic-password -s anthropic-api -w)"
claude -p "проверка связи, ответь одним словом ok"

Либо через помощник в ~/.claude/settings.json:

{
  "apiKeyHelper": "/usr/local/bin/get-anthropic-key.sh"
}
  1. В CI использовать секрет пайплайна, прокинутый в переменные окружения шага. Не файл в репозитории и не аргумент командной строки: аргументы видны в логе задания и в выводе ps.
  2. Проверить, что локальные настройки с ключом не уезжают в git. Значения кладут в окружение или в .claude/settings.local.json, а не в коммитимый .claude/settings.json.

Полезные сценарии

  • Ночной прогон отчёта или чеклиста на сервере через claude -p без интерактивной сессии.
  • Проверка merge request в CI: агент читает дифф, пишет замечания комментарием.
  • Отдельный ключ на клиента или проект, чтобы перевыставить расход по счёту.
  • Корпоративный контур через Bedrock или Vertex, когда трафик не должен покидать периметр облака компании.
  • Шлюз с логированием запросов, когда служба безопасности требует аудита переписки с моделью.
  • Разовая работа на чужой машине, где входить в личный аккаунт не нужно.

Ограничения

  • Платится каждый токен, включая перечитывание одних и тех же файлов на каждом шаге. Небрежная постановка задачи стоит денег напрямую, а не нервов.
  • Без выставленного лимита расход ограничен только временем работы процесса. Цикл, который «почти починил» тест до утра, обнаруживается по счёту.
  • Ключ даёт доступ к деньгам организации. Утёкший ключ отзывают в консоли и выпускают новый; переписывание истории git проблему не решает, коммит остаётся в форках, зеркалах и кешах CI.
  • Набор возможностей у двух способов авторизации совпадает не полностью — что доступно конкретно вашей организации, проверяют на своей организации, а не по чужим рассказам.
  • Ограничение скорости у организации общее: параллельные субагенты и батчи упираются в него и получают отказ. Скрипт, который на такой отказ не умеет ждать и повторять, падает целиком.
  • Ключ снимает потолок и вместе с ним снимает тормоз: с подпиской перерасход упирается в лимит окна, с ключом — в счёт.

Как проверить результат

  • /status в сессии — показывает, чем клиент авторизован. Первое, что смотрят при расхождении ожиданий со счётом.
  • Убедиться, что переменная доехала до процесса, не печатая значение:
[ -n "$ANTHROPIC_API_KEY" ] && echo "ключ задан" || echo "ключа нет"
  • Пробный headless-вызов claude -p "ответь одним словом: ok" — дешёвый способ убедиться, что ключ живой и organization не заблокирована.
  • Страница Usage в консоли: расход должен появиться на нужном ключе и в нужном рабочем пространстве. Пусто там, где ждали, значит процесс авторизовался чем-то другим.
  • Учебный отзыв: отозвать тестовый ключ и убедиться, что пайплайн падает с внятной ошибкой авторизации, а не молча переезжает на чужую.
  • Перед первым пушем прогнать по репозиторию поиск секретов и просмотреть git diff --staged глазами: ключ чаще всего утекает не в коде, а в конфиге, который «просто закоммитили заодно».

Правило одной строкой: ключ хранится в менеджере секретов, попадает в процесс переменной окружения, и лимит расхода ставится раньше первого запуска.

  • claude code
  • api key
  • секреты
  • биллинг