OpenClaw prend en charge l’« authentification par abonnement » via OAuth pour les fournisseurs qui la proposent (notamment OpenAI Codex (ChatGPT OAuth)). Pour Anthropic, la séparation pratique est désormais :Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- Clé API Anthropic : facturation normale de l’API Anthropic
- Anthropic Claude CLI / authentification par abonnement dans OpenClaw : le personnel d’Anthropic nous a indiqué que cet usage est de nouveau autorisé
- comment fonctionne l’échange de jetons OAuth (PKCE)
- où les jetons sont stockés (et pourquoi)
- comment gérer plusieurs comptes (profils + remplacements par session)
Le réceptacle de jetons (pourquoi il existe)
Les fournisseurs OAuth émettent couramment un nouveau jeton d’actualisation pendant les flux de connexion ou d’actualisation. Certains fournisseurs (ou clients OAuth) peuvent invalider les anciens jetons d’actualisation lorsqu’un nouveau est émis pour le même utilisateur ou la même application. Symptôme pratique :- vous vous connectez via OpenClaw et via Claude Code / Codex CLI → l’un d’eux finit aléatoirement par être « déconnecté » plus tard
auth-profiles.json comme un réceptacle de jetons :
- le runtime lit les identifiants depuis un seul endroit
- nous pouvons conserver plusieurs profils et les router de façon déterministe
- la réutilisation d’un CLI externe est propre à chaque fournisseur : Codex CLI peut amorcer un profil
openai-codex:defaultvide, mais dès qu’OpenClaw dispose d’un profil OAuth local, le jeton d’actualisation local fait autorité ; les autres intégrations peuvent rester gérées en externe et relire le magasin d’authentification de leur CLI - les chemins de statut et de démarrage qui connaissent déjà l’ensemble des fournisseurs configurés limitent la découverte de CLI externe à cet ensemble, afin qu’un magasin de connexion CLI sans rapport ne soit pas sondé pour une configuration à fournisseur unique
Stockage (où se trouvent les jetons)
Les secrets sont stockés dans les magasins d’authentification des agents :- Profils d’authentification (OAuth + clés API + références facultatives au niveau des valeurs) :
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - Fichier de compatibilité hérité :
~/.openclaw/agents/<agentId>/agent/auth.json(les entréesapi_keystatiques sont purgées lorsqu’elles sont détectées)
~/.openclaw/credentials/oauth.json(importé dansauth-profiles.jsonà la première utilisation)
$OPENCLAW_STATE_DIR (remplacement du répertoire d’état). Référence complète : /gateway/configuration
Pour les références statiques à des secrets et le comportement d’activation des instantanés au runtime, consultez Gestion des secrets.
Lorsqu’un agent secondaire n’a pas de profil d’authentification local, OpenClaw utilise une
héritage en lecture traversante depuis le magasin de l’agent par défaut/principal. Il ne clone pas le fichier
auth-profiles.json de l’agent principal à la lecture. Les jetons d’actualisation OAuth sont particulièrement
sensibles : les flux de copie normaux les ignorent par défaut, car certains fournisseurs les font tourner
ou les invalident après utilisation. Configurez une connexion OAuth distincte pour un agent
lorsqu’il a besoin d’un compte indépendant.
Compatibilité avec les jetons hérités Anthropic
OpenClaw expose également le jeton de configuration Anthropic comme chemin d’authentification par jeton pris en charge, mais il privilégie désormais la réutilisation de Claude CLI etclaude -p lorsqu’ils sont disponibles.
Migration Anthropic Claude CLI
OpenClaw prend de nouveau en charge la réutilisation d’Anthropic Claude CLI. Si vous avez déjà une connexion Claude locale sur l’hôte, l’onboarding/la configuration peut la réutiliser directement.Échange OAuth (fonctionnement de la connexion)
Les flux de connexion interactifs d’OpenClaw sont implémentés dans@earendil-works/pi-ai et raccordés aux assistants/commandes.
Jeton de configuration Anthropic
Forme du flux :- démarrer le jeton de configuration Anthropic ou coller le jeton depuis OpenClaw
- OpenClaw stocke l’identifiant Anthropic obtenu dans un profil d’authentification
- la sélection de modèle reste sur
anthropic/... - les profils d’authentification Anthropic existants restent disponibles pour le retour arrière/le contrôle de l’ordre
OpenAI Codex (ChatGPT OAuth)
OpenAI Codex OAuth est explicitement pris en charge pour une utilisation en dehors de Codex CLI, y compris dans les workflows OpenClaw. Forme du flux (PKCE) :- générer un vérificateur/défi PKCE + un
statealéatoire - ouvrir
https://auth.openai.com/oauth/authorize?... - essayer de capturer le rappel sur
http://127.0.0.1:1455/auth/callback - si le rappel ne peut pas se lier (ou si vous êtes à distance/sans interface), coller l’URL de redirection/le code
- échanger auprès de
https://auth.openai.com/oauth/token - extraire
accountIddu jeton d’accès et stocker{ access, refresh, expires, accountId }
openclaw onboard → choix d’authentification openai-codex.
Actualisation + expiration
Les profils stockent un horodatageexpires.
Au runtime :
- si
expiresest dans le futur → utiliser le jeton d’accès stocké - si expiré → actualiser (sous verrou de fichier) et remplacer les identifiants stockés
- si un agent secondaire lit un profil OAuth hérité de l’agent principal, l’actualisation réécrit dans le magasin de l’agent principal au lieu de copier le jeton d’actualisation dans le magasin de l’agent secondaire
- exception : certains identifiants de CLI externes restent gérés en externe ; OpenClaw
relit ces magasins d’authentification CLI au lieu de consommer des jetons d’actualisation copiés.
L’amorçage de Codex CLI est volontairement plus limité : il initialise un profil
openai-codex:defaultvide, puis les actualisations gérées par OpenClaw gardent le profil local comme référence canonique.
Plusieurs comptes (profils) + routage
Deux modèles :1) Recommandé : agents séparés
Si vous voulez que « personnel » et « travail » n’interagissent jamais, utilisez des agents isolés (sessions + identifiants + espace de travail séparés) :2) Avancé : plusieurs profils dans un seul agent
auth-profiles.json prend en charge plusieurs ID de profil pour le même fournisseur.
Choisir le profil utilisé :
- globalement via l’ordre de configuration (
auth.order) - par session via
/model ...@<profileId>
/model Opus@anthropic:work
openclaw channels list --json(afficheauth[])
- Basculement de modèle (rotation + règles de délai de récupération)
- Commandes Slash (surface de commande)
Associé
- Authentification - vue d’ensemble de l’authentification des fournisseurs de modèles
- Secrets - stockage des identifiants et SecretRef
- Référence de configuration - clés de configuration d’authentification