Traductions communautaires par veiseule.ai — Help improve them on Crowdin
Aller au contenu principal

OAuth¶

OpenClaw prend en charge l’« authentification par abonnement » via OAuth pour les fournisseurs qui la proposent (notamment OpenAI Codex (ChatGPT OAuth)). Pour les abonnements Anthropic, utilisez le flux setup-token. Cette page explique :

  • 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)

OpenClaw prend également en charge des plugins de fournisseurs qui embarquent leurs propres flux OAuth ou par clé API. Exécutez-les via :

openclaw models auth login --provider <id>

Le puits à jetons (pourquoi il existe)¶

Les fournisseurs OAuth Ă©mettent couramment un nouveau jeton d’actualisation lors des flux de connexion/actualisation. Certains fournisseurs (ou clients OAuth) peuvent invalider les anciens jetons d’actualisation lorsqu’un nouveau est Ă©mis pour le mĂȘme utilisateur/la mĂȘme application.

SymptĂŽme pratique :

  • vous vous connectez via OpenClaw et via Claude Code / Codex CLI → l’un des deux se retrouve « dĂ©connectĂ© » alĂ©atoirement plus tard

Pour réduire cela, OpenClaw traite auth-profiles.json comme un puits à jetons :

  • l’exĂ©cution lit les identifiants depuis un seul endroit
  • nous pouvons conserver plusieurs profils et les router de maniĂšre dĂ©terministe

Stockage (oĂč vivent les jetons)¶

Les secrets sont stockés par agent :

  • Profils d’authentification (OAuth + clĂ©s API) : ~/.openclaw/agents/<agentId>/agent/auth-profiles.json
  • Cache d’exĂ©cution (gĂ©rĂ© automatiquement ; ne pas modifier) : ~/.openclaw/agents/<agentId>/agent/auth.json

Fichier hérité, import uniquement (toujours pris en charge, mais pas le stockage principal) :

  • ~/.openclaw/credentials/oauth.json (importĂ© dans auth-profiles.json lors de la premiĂšre utilisation)

Tout ce qui prĂ©cĂšde respecte Ă©galement $OPENCLAW_STATE_DIR (remplacement du rĂ©pertoire d’état). RĂ©fĂ©rence complĂšte : /gateway/configuration

Setup-token Anthropic (authentification par abonnement)¶

ExĂ©cutez claude setup-token sur n’importe quelle machine, puis collez-le dans OpenClaw :

openclaw models auth setup-token --provider anthropic

Si vous avez généré le jeton ailleurs, collez-le manuellement :

openclaw models auth paste-token --provider anthropic

Vérifier :

openclaw models status

Échange OAuth (comment fonctionne la connexion)¶

Les flux de connexion interactifs d’OpenClaw sont implĂ©mentĂ©s dans @mariozechner/pi-ai et reliĂ©s aux assistants/commandes.

Setup-token Anthropic (Claude Pro/Max)¶

Forme du flux :

  1. exécuter claude setup-token
  2. coller le jeton dans OpenClaw
  3. stocker comme profil d’authentification par jeton (sans actualisation)

Le chemin de l’assistant est openclaw onboard → choix d’authentification setup-token (Anthropic).

OpenAI Codex (ChatGPT OAuth)¶

Forme du flux (PKCE) :

  1. générer le vérificateur/défi PKCE + un state aléatoire
  2. ouvrir https://auth.openai.com/oauth/authorize?...
  3. tenter de capturer le rappel sur http://127.0.0.1:1455/auth/callback
  4. si le rappel ne peut pas s’attacher (ou si vous ĂȘtes distant/sans interface), collez l’URL de redirection/le code
  5. échanger à https://auth.openai.com/oauth/token
  6. extraire accountId depuis le jeton d’accùs et stocker { access, refresh, expires, accountId }

Le chemin de l’assistant est openclaw onboard → choix d’authentification openai-codex.

Actualisation + expiration¶

Les profils stockent un horodatage expires.

À l’exĂ©cution :

  • si expires est dans le futur → utiliser le jeton d’accĂšs stockĂ©
  • s’il est expirĂ© → actualiser (sous verrou de fichier) et Ă©craser les identifiants stockĂ©s

Le flux d’actualisation est automatique ; vous n’avez gĂ©nĂ©ralement pas besoin de gĂ©rer les jetons manuellement.

Comptes multiples (profils) + routage¶

Deux modĂšles :

1. Préféré : 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) :

openclaw agents add work
openclaw agents add personal

Configurez ensuite l’authentification par agent (assistant) et routez les discussions vers le bon agent.

2. Avancé : plusieurs profils dans un seul agent¶

auth-profiles.json prend en charge plusieurs identifiants de profil pour un mĂȘme fournisseur.

Choisissez quel profil est utilisé :

  • globalement via l’ordre de configuration (auth.order)
  • par session via /model ...@<profileId>

Exemple (remplacement par session) :

  • /model Opus@anthropic:work

Comment voir quels identifiants de profil existent :

  • openclaw channels list --json (affiche auth[])

Documentation connexe :