OAuth
OpenClaw supports “subscription auth” via OAuth for providers that offer it (notably OpenAI Codex (ChatGPT OAuth)). For Anthropic subscriptions, use the setup-token flow. This page explains:- OAuth टोकन विनिमय कैसे काम करता है (PKCE)
- टोकन कहाँ संग्रहीत होते हैं (और क्यों)
- कई खातों को कैसे संभालें (प्रोफ़ाइल + प्रति‑सत्र ओवरराइड)
टोकन सिंक (यह क्यों मौजूद है)
OAuth providers commonly mint a new refresh token during login/refresh flows. Some providers (or OAuth clients) can invalidate older refresh tokens when a new one is issued for the same user/app. व्यावहारिक लक्षण:- आप OpenClaw और Claude Code / Codex CLI के माध्यम से लॉग इन करते हैं → बाद में इनमें से कोई एक “लॉग आउट” हो जाता है
auth-profiles.json को टोकन सिंक के रूप में मानता है:
- रनटाइम एक ही स्थान से क्रेडेंशियल पढ़ता है
- हम कई प्रोफ़ाइल रख सकते हैं और उन्हें निर्धारक रूप से रूट कर सकते हैं
भंडारण (टोकन कहाँ रहते हैं)
सीक्रेट्स प्रति‑एजेंट संग्रहीत होते हैं:- Auth प्रोफ़ाइल (OAuth + API keys):
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - रनटाइम कैश (स्वचालित रूप से प्रबंधित; संपादित न करें):
~/.openclaw/agents/<agentId>/agent/auth.json
~/.openclaw/credentials/oauth.json(पहली बार उपयोग परauth-profiles.jsonमें आयात)
$OPENCLAW_STATE_DIR (state dir override). Full reference: /gateway/configuration
Anthropic setup-token (सदस्यता प्रमाणीकरण)
किसी भी मशीन परclaude setup-token चलाएँ, फिर इसे OpenClaw में पेस्ट करें:
OAuth विनिमय (लॉगिन कैसे काम करता है)
OpenClaw के इंटरैक्टिव लॉगिन प्रवाह@mariozechner/pi-ai में कार्यान्वित हैं और विज़ार्ड/कमांड्स से जुड़े हैं।
Anthropic (Claude Pro/Max) setup-token
प्रवाह का स्वरूप:claude setup-tokenचलाएँ- टोकन को OpenClaw में पेस्ट करें
- टोकन auth प्रोफ़ाइल के रूप में संग्रहीत करें (रीफ़्रेश नहीं)
openclaw onboard → auth विकल्प setup-token (Anthropic)।
OpenAI Codex (ChatGPT OAuth)
प्रवाह का स्वरूप (PKCE):- PKCE verifier/challenge + रैंडम
stateजनरेट करें https://auth.openai.com/oauth/authorize?...खोलेंhttp://127.0.0.1:1455/auth/callbackपर कॉलबैक कैप्चर करने का प्रयास करें- यदि कॉलबैक बाइंड नहीं हो पाता (या आप रिमोट/हेडलेस हैं), तो रीडायरेक्ट URL/कोड पेस्ट करें
https://auth.openai.com/oauth/tokenपर एक्सचेंज करें- एक्सेस टोकन से
accountIdनिकालें और{ access, refresh, expires, accountId }संग्रहीत करें
openclaw onboard → auth विकल्प openai-codex।
रीफ़्रेश + समाप्ति
प्रोफ़ाइल एकexpires टाइमस्टैम्प संग्रहीत करती हैं।
रनटाइम पर:
- यदि
expiresभविष्य में है → संग्रहीत एक्सेस टोकन का उपयोग करें - यदि समाप्त हो गया है → (फ़ाइल लॉक के तहत) रीफ़्रेश करें और संग्रहीत क्रेडेंशियल ओवरराइट करें
कई खाते (प्रोफ़ाइल) + रूटिंग
दो पैटर्न:1. पसंदीदा: अलग‑अलग एजेंट
यदि आप चाहते हैं कि “व्यक्तिगत” और “कार्य” कभी इंटरैक्ट न करें, तो अलग‑थलग एजेंट उपयोग करें (अलग सत्र + क्रेडेंशियल + वर्कस्पेस):2. उन्नत: एक एजेंट में कई प्रोफ़ाइल
auth-profiles.json उसी प्रदाता के लिए कई प्रोफ़ाइल IDs का समर्थन करता है।
कौन‑सी प्रोफ़ाइल उपयोग होगी, चुनें:
- कॉन्फ़िग ऑर्डरिंग के माध्यम से वैश्विक रूप से (
auth.order) - प्रति‑सत्र
/model ...@<profileId>के माध्यम से
/model Opus@anthropic:work
openclaw channels list --json(auth[]दिखाता है)
- /concepts/model-failover (रोटेशन + कूलडाउन नियम)
- /tools/slash-commands (कमांड सतह)