OAuth
يدعم OpenClaw “مصادقة الاشتراك” عبر OAuth لموفري الخدمة الذين يتيحون ذلك (ولا سيما OpenAI Codex (ChatGPT OAuth)). بالنسبة إلى اشتراكات Anthropic، يجب أن يستخدم الإعداد الجديد مسار تسجيل الدخول المحلي Claude CLI على مضيف البوابة، لكن Anthropic تميز بين استخدام Claude Code المباشر ومسار إعادة الاستخدام الخاص بـ OpenClaw. وتذكر مستندات Claude Code العامة من Anthropic أن استخدام Claude Code المباشر يبقى ضمن حدود اشتراك Claude. وبشكل منفصل، أبلغت Anthropic مستخدمي OpenClaw في 4 أبريل 2026 الساعة 12:00 ظهرًا بتوقيت PT / 8:00 مساءً بتوقيت BST أن OpenClaw يُحتسب كحزمة تشغيل تابعة لجهة خارجية، ويتطلب الآن Extra Usage لهذا النوع من الحركة. أما OpenAI Codex OAuth فهو مدعوم صراحةً للاستخدام في الأدوات الخارجية مثل OpenClaw. تشرح هذه الصفحة ما يلي: بالنسبة إلى Anthropic في بيئات الإنتاج، تظل مصادقة مفتاح API هي المسار الآمن الموصى به.- كيفية عمل تبادل الرموز المميزة في OAuth (PKCE)
- موضع تخزين الرموز المميزة (ولماذا)
- كيفية التعامل مع حسابات متعددة (الملفات الشخصية + تجاوزات لكل جلسة)
مصرف الرموز المميزة (لماذا هو موجود)
غالبًا ما يُصدر موفرو OAuth رمز refresh جديدًا أثناء تدفقات تسجيل الدخول/التحديث. ويمكن لبعض الموفّرين (أو عملاء OAuth) إبطال رموز refresh الأقدم عند إصدار رمز جديد للمستخدم/التطبيق نفسه. العرض العملي للمشكلة:- تسجل الدخول عبر OpenClaw وأيضًا عبر Claude Code / Codex CLI → ثم يتعرض أحدهما بشكل عشوائي إلى “تسجيل الخروج” لاحقًا
auth-profiles.json على أنه مصرف رموز مميزة:
- يقرأ وقت التشغيل بيانات الاعتماد من مكان واحد
- يمكننا الاحتفاظ بعدة ملفات شخصية وتوجيهها بشكل حتمي
- عند إعادة استخدام بيانات الاعتماد من CLI خارجي مثل Codex CLI، يقوم OpenClaw بعكسها مع مصدرها ويعيد قراءة هذا المصدر الخارجي بدلًا من تدوير رمز refresh بنفسه
التخزين (أين توجد الرموز المميزة)
تُخزَّن الأسرار لكل وكيل على حدة:- ملفات تعريف المصادقة (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
بالنسبة إلى مراجع الأسرار الثابتة وسلوك تفعيل snapshot في وقت التشغيل، راجع إدارة الأسرار.
توافق الرموز القديمة لـ Anthropic
يكشف OpenClaw الآن عن setup-token الخاص بـ Anthropic مرة أخرى كمسار قديم/يدوي. وما زال إشعار الفوترة الخاص بـ Anthropic والمخصص لـ OpenClaw ينطبق على هذا المسار، لذا استخدمه مع توقع أن Anthropic تتطلب Extra Usage لحركة Claude-login التي يقودها OpenClaw.ترحيل Anthropic Claude CLI
إذا كان Claude CLI مثبتًا بالفعل ومسجل الدخول على مضيف البوابة، فيمكنك تحويل اختيار نموذج Anthropic إلى الواجهة الخلفية المحلية الخاصة بـ CLI. وهذا مسار مدعوم في OpenClaw عندما تريد إعادة استخدام تسجيل دخول Claude CLI المحلي على المضيف نفسه. المتطلبات المسبقة:- أن يكون الملف التنفيذي
claudeمثبتًا على مضيف البوابة - أن يكون Claude CLI قد تمت مصادقته بالفعل هناك عبر
claude auth login
anthropic/... إلى claude-cli/...، ويعيد كتابة
مسارات التراجع المطابقة لـ Anthropic Claude، ويضيف إدخالات allowlist مطابقة
من claude-cli/... ضمن agents.defaults.models.
التحقق:
تبادل OAuth (كيف يعمل تسجيل الدخول)
تُنفَّذ تدفقات تسجيل الدخول التفاعلية في OpenClaw داخل@mariozechner/pi-ai وتُوصَل بالأدلة والأوامر.
Anthropic Claude CLI
شكل التدفق: مسار Claude CLI:- سجّل الدخول باستخدام
claude auth loginعلى مضيف البوابة - شغّل
openclaw models auth login --provider anthropic --method cli --set-default - لا تخزّن ملف تعريف مصادقة جديدًا؛ بدّل اختيار النموذج إلى
claude-cli/... - احتفظ بملفات تعريف مصادقة Anthropic الحالية للتراجع
claude نفسها. يستطيع OpenClaw إعادة استخدام هذا التسجيل المحلي، لكن
Anthropic تصنف بشكل منفصل المسار الذي يتحكم فيه OpenClaw على أنه استخدام لحزمة تشغيل تابعة لجهة خارجية لأغراض الفوترة.
مسار المساعد التفاعلي:
openclaw onboard/openclaw configure→ خيار المصادقةanthropic-cli
OpenAI Codex (ChatGPT OAuth)
يتم دعم OpenAI Codex OAuth صراحةً للاستخدام خارج Codex CLI، بما في ذلك تدفقات عمل OpenClaw. شكل التدفق (PKCE):- إنشاء PKCE verifier/challenge + قيمة
stateعشوائية - فتح
https://auth.openai.com/oauth/authorize?... - محاولة التقاط callback على
http://127.0.0.1:1455/auth/callback - إذا تعذر ربط callback (أو كنت بعيدًا/من دون واجهة)، الصق URL/code الخاص بإعادة التوجيه
- إجراء التبادل عند
https://auth.openai.com/oauth/token - استخراج
accountIdمن access token وتخزين{ access, refresh, expires, accountId }
openclaw onboard → خيار المصادقة openai-codex.
التحديث + انتهاء الصلاحية
تخزن الملفات الشخصية الطابع الزمنيexpires.
في وقت التشغيل:
- إذا كانت
expiresفي المستقبل → استخدم access token المخزن - إذا انتهت صلاحيته → حدّثه (ضمن قفل ملف) واكتب بيانات الاعتماد الجديدة فوق القديمة
- الاستثناء: بيانات الاعتماد المعاد استخدامها من CLI خارجي تبقى مُدارة خارجيًا؛ يعيد OpenClaw قراءة مخزن مصادقة CLI ولا يستهلك رمز refresh المنسوخ بنفسه أبدًا
حسابات متعددة (ملفات شخصية) + التوجيه
يوجد نمطان:1) المفضل: وكلاء منفصلون
إذا كنت تريد ألا يتفاعل “الشخصي” و”العمل” أبدًا، فاستخدم وكلاء معزولين (جلسات + بيانات اعتماد + مساحة عمل منفصلة):2) متقدم: ملفات شخصية متعددة داخل وكيل واحد
يدعمauth-profiles.json عدة معرّفات ملفات شخصية للمزوّد نفسه.
اختر الملف الشخصي المستخدم عبر:
- بشكل عام عبر ترتيب التكوين (
auth.order) - لكل جلسة عبر
/model ...@<profileId>
/model Opus@anthropic:work
openclaw channels list --json(يعرضauth[])
- /concepts/model-failover (قواعد التدوير + فترات التهدئة)
- /tools/slash-commands (سطح الأوامر)
ذو صلة
- المصادقة — نظرة عامة على مصادقة مزوّدي النماذج
- الأسرار — تخزين بيانات الاعتماد وSecretRef
- مرجع التكوين — مفاتيح تكوين المصادقة