Без оператора · 2026-10-26

Claude Code: истёк OAuth-токен при запуске без оператора

По состоянию на 2026-10-26 в claude -p, cron и CI без оператора после истечения сохранённого входа, который не удаётся обновить, каждый запрос к модели завершается ошибкой Login expired. Для CI и скриптов официальная документация предлагает годовой OAuth-токен из claude setup-token; можно также использовать API-ключ или токен шлюза.

Обновлено 2026-10-26

Один ключ для Claude, GPT и ведущих китайских моделей, оплата по токенам, старт за несколько минут.

#Login expired#setup-token#CLAUDE_CODE_OAUTH_TOKEN#ANTHROPIC_API_KEY

Что проверить

1 год

Срок долгоживущего токена

claude setup-token создаёт OAuth-токен на один год, который задаётся в CLAUDE_CODE_OAUTH_TOKEN; по документации требуется план Pro, Max, Team или Enterprise.

Login expired

Ошибка истечения

Когда сохранённый вход истекает и не может быть обновлён, каждый запрос к модели завершается ошибкой Login expired до повторного входа.

3 дня

Напоминание о продлении

За 3 дня до истечения входа Claude Code при запуске предупреждает, что вход скоро истечёт, и предлагает выполнить /login.

--bare

Особенность режима bare

По документации --bare не читает OAuth-учётные данные и системную связку ключей, а также не читает CLAUDE_CODE_OAUTH_TOKEN; в этом режиме используйте ANTHROPIC_API_KEY или apiKeyHelper.

Какие учётные данные подходят для работы без оператора

По состоянию на 2026-10-26 официальная документация authentication перечисляет такие источники учётных данных: долгоживущий OAuth-токен для подписчиков (создаётся через claude setup-token и задаётся в CLAUDE_CODE_OAUTH_TOKEN), API-ключ Claude Console (задаётся в ANTHROPIC_API_KEY и используется в неинтерактивном режиме -p, если присутствует), токен шлюза (задаётся в ANTHROPIC_AUTH_TOKEN и передаётся как Bearer) и apiKeyHelper для динамических учётных данных. Если вход истёк, выполните /login или перейдите на долгоживущие учётные данные.

Что написано на официальных страницах

Официальная документация authentication сообщает: за 3 дня до истечения входа появляется напоминание о продлении; после истечения, когда вход нельзя обновить, каждый запрос к модели завершается ошибкой Login expired · Please run /login; строка Login в /status показывает Expired — log in again (Claude Code v2.1.210 или новее). Долгоживущий токен создаётся через claude setup-token и требует плана Pro, Max, Team или Enterprise.

Хронология

2026-10-18

Сообщение пользователя (Zenn, опубликовано 2026-10-23): планировщик задач Windows запустил claude -p в 3 часа ночи; после истечения входа процесс завершился примерно через 20 секунд с сообщением об ошибке: OAuth-сессия истекла и не может быть обновлена; код выхода 1.

2026-10-23

В статье сообщества (опубликована в этот день) сказано, что при работе без оператора никто не видел предложения войти снова; автор заметил это утром 2026-10-18, вошёл заново и вручную перезапустил скрипт. В статье сказано, что после истечения остаётся только войти вручную.

2026-10-26

Проверены страницы authentication, headless и CLI reference на code.claude.com, а также страница environment в документации QCode; формулировки учётных данных и ошибок соответствуют этим страницам на 2026-10-26.

Подтверждено и не подтверждено

Подтверждено (дословно на официальных страницах)

Документация сообщает: claude setup-token создаёт OAuth-токен на один год и требует плана Pro, Max, Team или Enterprise; CLAUDE_CODE_OAUTH_TOKEN предназначен для CI и скриптов; ANTHROPIC_API_KEY используется в режиме -p, если присутствует; ANTHROPIC_AUTH_TOKEN предназначен для шлюза; --bare не читает OAuth-учётные данные, системную связку ключей и CLAUDE_CODE_OAUTH_TOKEN; строка Expired в /status требует v2.1.210 или новее.

Не подтверждено и не опубликовано

Сообщение пользователя (Zenn, опубликовано 2026-10-23): запуск без оператора 2026-10-18 завершился примерно через 20 секунд после старта, потому что OAuth-сессия истекла и не могла быть обновлена. Это отчёт пользователя, а не официальный список ошибок. В документации сказано, что фоновая сессия в agent view или Remote Control перестаёт продвигаться после истечения учётных данных; для CI и скриптов описан долгоживущий токен из claude setup-token.

Вход по подписке и API-учётные данные

Вход по подписке и долгоживущий токен

claude setup-token создаёт OAuth-токен на один год, привязанный к подписке Claude; он подходит для CI и скриптов. Режим bare не читает эту переменную.

API-ключ и токен шлюза

ANTHROPIC_API_KEY создаётся в Claude Console и используется в режиме -p, если присутствует; ANTHROPIC_AUTH_TOKEN предназначен для шлюза или прокси и передаётся как Bearer.

Шаги диагностики

① Проверьте ошибку и состояние: если запрос завершается с Login expired или строка Login в /status показывает Expired, сохранённый вход истёк. ② Если есть интерактивный доступ, выполните /login в сессии (или claude auth login в оболочке); на машине без оператора используйте claude setup-token: он запускает тот же браузерный процесс авторизации, что и /login, выводит токен в терминал и нигде его не сохраняет, поэтому скопируйте токен в CLAUDE_CODE_OAUTH_TOKEN. ③ Если скрипт использует --bare, задайте ANTHROPIC_API_KEY (созданный в Claude Console) или apiKeyHelper; --bare не читает OAuth-учётные данные. ④ Если подключение идёт через шлюз, задайте ANTHROPIC_AUTH_TOKEN; он имеет приоритет над ANTHROPIC_API_KEY. ⑤ Сохраните учётные данные в переменных окружения или secret для cron / CI и запустите ещё раз, чтобы убедиться, что код выхода равен 0.

Запуск без оператора с ключом QCode

В документации QCode подключение задаётся через ANTHROPIC_BASE_URL=https://api.qcode.cc/api и ANTHROPIC_AUTH_TOKEN=ваш ключ QCode (начинается с cr_); в документации сказано, что три домена доступа дают одинаковые возможности и один и тот же ключ работает на всех. Ключ задаётся в ANTHROPIC_AUTH_TOKEN, а не в ANTHROPIC_API_KEY, и Claude Code отправляет его как Bearer-токен; вызовы моделей оплачиваются по токенам, цены по моделям указаны на /models. Личный тариф действует 30 дней с покупки. Не хотите месячный тариф? «Разовые пакеты» начинаются с $4: разовый объём, который нужно израсходовать за 7 дней. Если у вас уже есть личный тариф и квоты не хватает, докупите бустер-пакет.

Частые вопросы

Какая ошибка появляется при истечении OAuth-токена Claude Code?

В официальной документации указана ошибка Login expired · Please run /login; за 3 дня до истечения входа также появляется напоминание о продлении.

Какие учётные данные может использовать claude -p без оператора?

Годовой CLAUDE_CODE_OAUTH_TOKEN, созданный через claude setup-token (нужна подписка), ANTHROPIC_API_KEY из Claude Console или ANTHROPIC_AUTH_TOKEN для шлюза; также доступен apiKeyHelper.

Сколько действует токен claude setup-token?

В документации он назван one-year OAuth token, то есть действует один год; требуется план Pro, Max, Team или Enterprise, и он может только отправлять запросы к моделям.

Почему в режиме --bare всё равно происходит ошибка аутентификации?

По документации --bare не читает OAuth-учётные данные, системную связку ключей и CLAUDE_CODE_OAUTH_TOKEN; в этом режиме используйте ANTHROPIC_API_KEY или apiKeyHelper.

Как быстрее всего восстановить работу после истечения входа?

В интерактивной среде выполните /login; на машине без оператора перейдите на долгоживущий токен или API-ключ и проверьте текущие учётные данные в строке Login в /status.

Использует ли ключ QCode вход по подписке?

В документации QCode подключение задаётся переменными ANTHROPIC_BASE_URL и ANTHROPIC_AUTH_TOKEN, ключ QCode начинается с cr_; это не вход /login по подписке. В официальном порядке выбора учётных данных ANTHROPIC_AUTH_TOKEN стоит выше входа /login по подписке.

Источники

Документация authentication, headless и CLI reference на code.claude.com (получено 2026-10-26); статья сообщества на Zenn (опубликована 2026-10-23, отчёт пользователя); страницы environment и cloud-servers в документации QCode, qcode.cc/pricing и /pay-as-you-go (получено 2026-10-26); qcode.cc/models.

Переведите работу без оператора на API-ключ

Хотите, чтобы агент постоянно работал на сервере? Разместите сервер за рубежом, установите на него Claude Code или Codex и вызывайте модели с помощью ключа QCode; AI-сервис и облачный сервер используют один баланс. См. qcode.cc/en/cloud; интерфейс облачных серверов сейчас доступен только на китайском и английском.

Не знаете, с чего начать?

Попробовать неделю

Пакет «Малый» — $4: квота $30 на 7 дней

Работаете каждый день

«Стартовый» — $9.00 в месяц, за $1 квоты примерно вдвое дешевле пакета «Средний» ($5 квоты в день)