Community-Übersetzungen von veiseule.ai — Help improve them on Crowdin
Zum Hauptinhalt springen

OAuth

OpenClaw unterstützt „Subscription-Auth“ via OAuth für Anbieter, die dies anbieten (insbesondere OpenAI Codex (ChatGPT OAuth)). Für Anthropic-Abonnements verwenden Sie den setup-token-Flow. Diese Seite erklärt:

  • wie der OAuth-Token-Austausch funktioniert (PKCE)
  • wo Tokens gespeichert werden (und warum)
  • wie mehrere Konten gehandhabt werden (Profile + sitzungsbezogene Overrides)

OpenClaw unterstützt außerdem Anbieter-Plugins, die ihre eigenen OAuth- oder API‑Schlüssel- Flows mitbringen. Führen Sie diese aus über:

openclaw models auth login --provider <id>

Die Token-Senke (warum sie existiert)

OAuth-Anbieter stellen während Login-/Refresh-Flows häufig ein neues Refresh-Token aus. Einige Anbieter (oder OAuth-Clients) können ältere Refresh-Tokens ungültig machen, wenn für denselben Benutzer/dieselbe App ein neues ausgegeben wird.

Praktisches Symptom:

  • Sie melden sich über OpenClaw und über Claude Code / Codex CLI an → eines davon wird später zufällig „abgemeldet“

Um dies zu reduzieren, behandelt OpenClaw auth-profiles.json als Token-Senke:

  • die Runtime liest Anmeldedaten aus einer einzigen Quelle
  • wir können mehrere Profile vorhalten und deterministisch routen

Speicher (wo Tokens gespeichert werden)

Secrets werden pro Agent gespeichert:

  • Auth-Profile (OAuth + API-Schlüssel): ~/.openclaw/agents/<agentId>/agent/auth-profiles.json
  • Runtime-Cache (automatisch verwaltet; nicht bearbeiten): ~/.openclaw/agents/<agentId>/agent/auth.json

Legacy-Datei nur zum Import (weiterhin unterstützt, aber nicht der Hauptspeicher):

  • ~/.openclaw/credentials/oauth.json (bei der ersten Verwendung in auth-profiles.json importiert)

All dies berücksichtigt außerdem $OPENCLAW_STATE_DIR (Override des State-Verzeichnisses). Vollständige Referenz: /gateway/configuration

Anthropic Setup-Token (Abonnement-Authentifizierung)

Führen Sie claude setup-token auf einem beliebigen Rechner aus und fügen Sie es anschließend in OpenClaw ein:

openclaw models auth setup-token --provider anthropic

Wenn Sie das Token anderswo generiert haben, fügen Sie es manuell ein:

openclaw models auth paste-token --provider anthropic

Verifizieren:

openclaw models status

OAuth-Austausch (wie die Anmeldung funktioniert)

Die interaktiven Login-Flows von OpenClaw sind in @mariozechner/pi-ai implementiert und in die Assistenten/Befehle eingebunden.

Anthropic (Claude Pro/Max) Setup-Token

Flussform:

  1. führen Sie claude setup-token aus
  2. fügen Sie das Token in OpenClaw ein
  3. als Token-Auth-Profil speichern (kein Refresh)

Der Assistentenpfad ist openclaw onboard → Auth-Auswahl setup-token (Anthropic).

OpenAI Codex (ChatGPT OAuth)

Ablauf (PKCE):

  1. PKCE-Verifier/Challenge + zufälligen state erzeugen
  2. https://auth.openai.com/oauth/authorize?... öffnen
  3. versuchen, den Callback auf http://127.0.0.1:1455/auth/callback abzufangen
  4. falls der Callback nicht binden kann (oder Sie remote/headless sind), fügen Sie die Redirect-URL/den Code ein
  5. Austausch bei https://auth.openai.com/oauth/token
  6. accountId aus dem Access-Token extrahieren und { access, refresh, expires, accountId } speichern

Der Assistentenpfad ist openclaw onboard → Auth-Auswahl openai-codex.

Aktualisierung + Ablauf

Profile speichern einen expires-Zeitstempel.

Zur Laufzeit:

  • wenn expires in der Zukunft liegt → gespeichertes Access-Token verwenden
  • wenn abgelaufen → Refresh (unter Dateisperre) und Überschreiben der gespeicherten Anmeldedaten

Der Refresh-Flow ist automatisch; in der Regel müssen Sie Tokens nicht manuell verwalten.

Mehrere Konten (Profile) + Routing

Zwei Muster:

1. Bevorzugt: getrennte Agenten

Wenn „privat“ und „geschäftlich“ niemals interagieren sollen, verwenden Sie isolierte Agenten (separate Sitzungen + Anmeldedaten + Workspace):

openclaw agents add work
openclaw agents add personal

Konfigurieren Sie dann die Authentifizierung pro Agent (Assistent) und routen Sie Chats an den richtigen Agenten.

2. Erweitert: mehrere Profile in einem Agenten

auth-profiles.json unterstützt mehrere Profil-IDs für denselben Anbieter.

Wählen Sie, welches Profil verwendet wird:

  • global über die Konfigurationsreihenfolge (auth.order)
  • pro Sitzung über /model ...@<profileId>

Beispiel (Sitzungs-Override):

  • /model Opus@anthropic:work

So sehen Sie, welche Profil-IDs existieren:

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

Verwandte Dokumente: