---
read_when:
    - Вы хотите понять OpenClaw OAuth от начала до конца
    - У вас возникли проблемы с аннулированием токена / выходом из системы
    - Вам нужны потоки аутентификации Claude CLI или OAuth
    - Вам нужны несколько учетных записей или маршрутизация профилей
summary: 'OAuth в OpenClaw: обмен токенов, хранение и шаблоны работы с несколькими аккаунтами'
title: OAuth
x-i18n:
    generated_at: "2026-06-28T22:51:28Z"
    model: gpt-5.5
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: 4aa48fd468a541ed72935833a3196105798380799fa6135fe1dd9f68838307b6
    source_path: concepts/oauth.md
    workflow: 16
---

OpenClaw поддерживает «аутентификацию по подписке» через OAuth для провайдеров, которые ее предлагают
(в частности, **OpenAI Codex (ChatGPT OAuth)**). Для Anthropic практическое разделение
теперь такое:

- **API-ключ Anthropic**: обычная оплата Anthropic API
- **Anthropic Claude CLI / аутентификация по подписке внутри OpenClaw**: сотрудники Anthropic
  сообщили нам, что такое использование снова разрешено

OpenAI Codex OAuth явно поддерживается для использования во внешних инструментах, таких как
OpenClaw.

OpenClaw хранит и аутентификацию по API-ключу OpenAI, и ChatGPT/Codex OAuth под
каноническим идентификатором провайдера `openai`. Более старые идентификаторы профилей `openai-codex:*` и
записи `auth.order.openai-codex` являются устаревшим состоянием, которое исправляет
`openclaw doctor --fix`; используйте идентификаторы профилей `openai:*` и `auth.order.openai` для
новой конфигурации.

Для Anthropic в production более безопасный рекомендуемый путь — аутентификация по API-ключу.

На этой странице объясняется:

- как работает **обмен токенов** OAuth (PKCE)
- где **хранятся** токены (и почему)
- как работать с **несколькими аккаунтами** (профили + переопределения для отдельных сессий)

OpenClaw также поддерживает **Plugin провайдеров**, которые поставляют собственные
потоки OAuth или API-ключей. Запускайте их так:

```bash
openclaw models auth login --provider <id>
```

## Приемник токенов (зачем он нужен)

Провайдеры OAuth часто выпускают **новый refresh-токен** во время потоков входа или обновления. Некоторые провайдеры (или OAuth-клиенты) могут инвалидировать старые refresh-токены, когда новый выпускается для того же пользователя/приложения.

Практический симптом:

- вы входите через OpenClaw _и_ через Claude Code / Codex CLI → один из них позже случайно оказывается «разлогинен»

Чтобы уменьшить это, OpenClaw рассматривает `auth-profiles.json` как **приемник токенов**:

- среда выполнения читает учетные данные из **одного места**
- мы можем хранить несколько профилей и маршрутизировать их детерминированно
- повторное использование внешнего CLI зависит от провайдера: Codex CLI может bootstrap пустой
  профиль `openai:default`, но после появления у OpenClaw локального OAuth-профиля
  локальный refresh-токен становится каноническим. Если этот локальный refresh-токен отклонен,
  OpenClaw может использовать пригодный токен Codex CLI того же аккаунта как runtime-only
  fallback; другие интеграции могут оставаться управляемыми извне и перечитывать свое
  хранилище аутентификации CLI
- пути статуса и запуска, которые уже знают настроенный набор провайдеров, ограничивают область
  обнаружения внешнего CLI этим набором, поэтому хранилище входа нерелевантного CLI не
  проверяется для настройки с одним провайдером

## Хранилище (где находятся токены)

Секреты хранятся в хранилищах аутентификации агентов:

- Профили аутентификации (OAuth + API-ключи + необязательные ссылки уровня значений): `~/.openclaw/agents/<agentId>/agent/auth-profiles.json`
- Устаревший файл совместимости: `~/.openclaw/agents/<agentId>/agent/auth.json`
  (статические записи `api_key` очищаются при обнаружении)

Устаревший файл только для импорта (по-прежнему поддерживается, но не является основным хранилищем):

- `~/.openclaw/credentials/oauth.json` (импортируется в `auth-profiles.json` при первом использовании)

Все перечисленное также учитывает `$OPENCLAW_STATE_DIR` (переопределение каталога состояния). Полная справка: [/gateway/configuration](/ru/gateway/configuration-reference#auth-storage)

О статических ссылках на секреты и поведении активации runtime-снимка см. [Управление секретами](/ru/gateway/secrets).

Когда у вторичного агента нет локального профиля аутентификации, OpenClaw использует сквозное
наследование из хранилища агента по умолчанию/главного агента. Он не клонирует
`auth-profiles.json` главного агента при чтении. Refresh-токены OAuth особенно
чувствительны: обычные потоки копирования по умолчанию пропускают их, потому что некоторые провайдеры
ротируют или инвалидируют refresh-токены после использования. Настройте отдельный вход OAuth для
агента, когда ему нужен независимый аккаунт.

## Совместимость с устаревшими токенами Anthropic

<Warning>
В публичной документации Anthropic Claude Code сказано, что прямое использование Claude Code остается в пределах
лимитов подписки Claude, а сотрудники Anthropic сообщили нам, что использование Claude
CLI в стиле OpenClaw снова разрешено. Поэтому OpenClaw считает повторное использование Claude CLI и
`claude -p` санкционированными для этой интеграции, если Anthropic
не опубликует новую политику.

Текущие документы Anthropic о тарифах для прямого Claude Code см. в [Using Claude Code
with your Pro or Max
plan](https://support.claude.com/en/articles/11145838-using-claude-code-with-your-pro-or-max-plan)
и [Using Claude Code with your Team or Enterprise
plan](https://support.anthropic.com/en/articles/11845131-using-claude-code-with-your-team-or-enterprise-plan/).

Если вам нужны другие варианты в стиле подписки в OpenClaw, см. [OpenAI
Codex](/ru/providers/openai), [Qwen Cloud Coding
Plan](/ru/providers/qwen), [MiniMax Coding Plan](/ru/providers/minimax)
и [Z.AI / GLM Coding Plan](/ru/providers/zai).
</Warning>

OpenClaw также предоставляет setup-token Anthropic как поддерживаемый путь аутентификации по токену, но теперь предпочитает повторное использование Claude CLI и `claude -p`, когда они доступны.

## Миграция Anthropic Claude CLI

OpenClaw снова поддерживает повторное использование Anthropic Claude CLI. Если на хосте у вас уже есть локальный
вход Claude, onboarding/configure может использовать его напрямую.

## Обмен OAuth (как работает вход)

Интерактивные потоки входа OpenClaw реализованы в `openclaw/plugin-sdk/llm` и подключены к мастерам/командам.

### Setup-token Anthropic

Форма потока:

1. запустите setup-token Anthropic или paste-token из OpenClaw
2. OpenClaw сохраняет полученные учетные данные Anthropic в профиле аутентификации
3. выбор модели остается на `anthropic/...`
4. существующие профили аутентификации Anthropic остаются доступными для отката/управления порядком

### OpenAI Codex (ChatGPT OAuth)

OpenAI Codex OAuth явно поддерживается для использования вне Codex CLI, включая рабочие процессы OpenClaw.

Команда входа по-прежнему использует канонический идентификатор провайдера OpenAI:

```bash
openclaw models auth login --provider openai
```

Используйте `--profile-id openai:<name>` для нескольких аккаунтов ChatGPT/Codex OAuth в
одном агенте. Не используйте `openai-codex:<name>` для новых профилей. Doctor переносит
этот старый префикс в не конфликтующий идентификатор профиля `openai:*`; запустите
`openclaw models auth list --provider openai` после исправления, прежде чем копировать
идентификаторы профилей в `auth.order` или `/model ...@<profileId>`.

Форма потока (PKCE):

1. сгенерировать PKCE verifier/challenge + случайный `state`
2. открыть `https://auth.openai.com/oauth/authorize?...`
3. попытаться перехватить callback на `http://127.0.0.1:1455/auth/callback`
4. если callback не может привязаться (или вы работаете удаленно/без GUI), вставить URL/код перенаправления
5. выполнить обмен на `https://auth.openai.com/oauth/token`
6. извлечь `accountId` из access-токена и сохранить `{ access, refresh, expires, accountId }`

Путь мастера: `openclaw onboard` → выбор аутентификации `openai`.

## Обновление + истечение срока действия

Профили хранят метку времени `expires`.

Во время выполнения:

- если `expires` в будущем → использовать сохраненный access-токен
- если срок истек → обновить (под файловой блокировкой) и перезаписать сохраненные учетные данные
- если вторичный агент читает унаследованный OAuth-профиль главного агента, обновление
  записывается обратно в хранилище главного агента вместо копирования refresh-токена в
  хранилище вторичного агента
- исключение: некоторые учетные данные внешнего CLI остаются управляемыми извне; OpenClaw
  перечитывает эти хранилища аутентификации CLI вместо расходования скопированных refresh-токенов.
  Bootstrap Codex CLI намеренно уже: он создает пустой профиль
  `openai:default`, затем обновления, принадлежащие OpenClaw, сохраняют локальный
  профиль каноническим. Если локальное обновление Codex завершается с ошибкой, а у Codex CLI есть
  пригодный токен для того же аккаунта, OpenClaw может использовать этот токен для текущего
  runtime-запроса, не записывая его обратно в `auth-profiles.json`.

Поток обновления автоматический; обычно вам не нужно управлять токенами вручную.

## Несколько аккаунтов (профили) + маршрутизация

Два шаблона:

### 1) Предпочтительно: отдельные агенты

Если вы хотите, чтобы «личное» и «рабочее» никогда не взаимодействовали, используйте изолированных агентов (отдельные сессии + учетные данные + рабочее пространство):

```bash
openclaw agents add work
openclaw agents add personal
```

Затем настройте аутентификацию для каждого агента (мастер) и маршрутизируйте чаты нужному агенту.

### 2) Расширенный вариант: несколько профилей в одном агенте

`auth-profiles.json` поддерживает несколько идентификаторов профилей для одного провайдера.

Выберите, какой профиль используется:

- глобально через порядок в конфигурации (`auth.order`)
- для отдельной сессии через `/model ...@<profileId>`

Пример (переопределение сессии):

- `/model Opus@anthropic:work`

Как посмотреть существующие идентификаторы профилей:

- `openclaw channels list --json` (показывает `auth[]`)

Связанные документы:

- [Failover моделей](/ru/concepts/model-failover) (правила ротации + cooldown)
- [Slash-команды](/ru/tools/slash-commands) (поверхность команд)

## Связанное

- [Аутентификация](/ru/gateway/authentication) - обзор аутентификации провайдеров моделей
- [Секреты](/ru/gateway/secrets) - хранилище учетных данных и SecretRef
- [Справочник конфигурации](/ru/gateway/configuration-reference#auth-storage) - ключи конфигурации аутентификации
