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.
openclaw update
حدّث OpenClaw بأمان وبدّل بين قنوات stable/beta/dev.
إذا ثبّت عبر npm/pnpm/bun (تثبيت عام، بلا بيانات git وصفية)،
تتم التحديثات عبر مسار مدير الحزم في التحديث.
الاستخدام
الخيارات
--no-restart: تخطَّ إعادة تشغيل خدمة Gateway بعد نجاح التحديث. تحديثات مدير الحزم التي تعيد تشغيل Gateway تتحقق من أن الخدمة المعاد تشغيلها تبلغ عن الإصدار المحدّث المتوقع قبل نجاح الأمر.--channel <stable|beta|dev>: يضبط قناة التحديث (git + npm؛ تُحفظ في الإعدادات).--tag <dist-tag|version|spec>: يتجاوز هدف الحزمة لهذا التحديث فقط. في تثبيتات الحزم، يتم تعيينmainإلىgithub:openclaw/openclaw#main.--dry-run: يعاين إجراءات التحديث المخطط لها (تدفق القناة/الوسم/الهدف/إعادة التشغيل) من دون كتابة الإعدادات أو التثبيت أو مزامنة المكونات الإضافية أو إعادة التشغيل.--json: يطبع JSON قابلًا للقراءة آليًا من نوعUpdateRunResult، بما في ذلكpostUpdate.plugins.warningsعندما تحتاج المكونات الإضافية المُدارة التالفة أو غير القابلة للتحميل إلى إصلاح بعد نجاح تحديث النواة، وتفاصيل الرجوع الاحتياطي للمكونات الإضافية في قناة beta عندما لا يتوفر إصدار beta لمكوّن إضافي، وpostUpdate.plugins.integrityDriftsعند اكتشاف انحراف في أثر حزمة npm للمكوّن الإضافي أثناء مزامنة المكونات الإضافية بعد التحديث.--timeout <seconds>: مهلة لكل خطوة (القيمة الافتراضية 1800s).--yes: يتخطى مطالبات التأكيد (مثل تأكيد الرجوع إلى إصدار أقدم).
openclaw update على علم --verbose. استخدم --dry-run لمعاينة
إجراءات القناة/الوسم/التثبيت/إعادة التشغيل المخطط لها، و--json للنتائج
القابلة للقراءة آليًا، وopenclaw update status --json عندما تحتاج فقط إلى تفاصيل
القناة والتوفر. إذا كنت تصحح سجلات Gateway حول تحديث،
فإن إسهاب وحدة التحكم ومستوى سجل الملفات منفصلان: يؤثر --verbose الخاص بـ Gateway
في خرج الطرفية/WebSocket، بينما تتطلب سجلات الملفات logging.level: "debug" أو
"trace" في الإعدادات. راجع تسجيل Gateway.
في وضع Nix (
OPENCLAW_NIX_MODE=1)، تكون تشغيلات openclaw update التي تُحدِث تغييرات معطلة. حدّث مصدر Nix أو مُدخل flake لهذا التثبيت بدلًا من ذلك؛ بالنسبة إلى nix-openclaw، استخدم البدء السريع المعتمد على الوكيل أولًا. يبقى openclaw update status وopenclaw update --dry-run للقراءة فقط.update status
يعرض قناة التحديث النشطة + وسم/فرع/SHA الخاص بـ git (لنسخ المصدر)، إضافة إلى توفر التحديث.
--json: يطبع JSON للحالة قابلًا للقراءة آليًا.--timeout <seconds>: مهلة الفحوصات (القيمة الافتراضية 3s).
update wizard
تدفق تفاعلي لاختيار قناة تحديث وتأكيد ما إذا كان يجب إعادة تشغيل Gateway
بعد التحديث (القيمة الافتراضية هي إعادة التشغيل). إذا اخترت dev من دون نسخة git، فإنه
يعرض إنشاء واحدة.
الخيارات:
--timeout <seconds>: مهلة لكل خطوة تحديث (القيمة الافتراضية1800)
ما الذي يفعله
عندما تبدّل القنوات صراحةً (--channel ...)، يبقي OpenClaw أيضًا
طريقة التثبيت متوافقة:
dev→ يضمن وجود نسخة git (الافتراضي:~/openclaw، ويمكن تجاوزها بـOPENCLAW_GIT_DIR)، ويحدّثها، ويثبّت CLI العام من تلك النسخة.stable→ يثبّت من npm باستخدامlatest.beta→ يفضّل وسم توزيع npm beta، لكنه يرجع إلىlatestعندما تكون beta مفقودة أو أقدم من الإصدار المستقر الحالي.
update.run في مستوى التحكم
تفرض إعادة تشغيل تحديث غير مؤجلة وبلا فترة تهدئة بعد تبديل الحزمة،
لأن عملية Gateway القديمة قد لا تزال تحتوي على أجزاء في الذاكرة تشير إلى
ملفات أزالتها الحزمة الجديدة.
بالنسبة إلى تثبيتات مدير الحزم، يحل openclaw update إصدار الحزمة الهدف
قبل استدعاء مدير الحزم. تستخدم تثبيتات npm العامة تثبيتًا مرحليًا:
يثبّت OpenClaw الحزمة الجديدة في بادئة npm مؤقتة، ويتحقق من مخزون dist
المعبأ هناك، ثم يبدّل شجرة الحزمة النظيفة تلك إلى البادئة العامة الحقيقية.
إذا فشل التحقق، لا يعمل doctor بعد التحديث ولا مزامنة المكونات الإضافية ولا
إعادة التشغيل من الشجرة المشكوك فيها. حتى عندما يطابق الإصدار المثبت
الهدف بالفعل، ينعش الأمر تثبيت الحزمة العامة، ثم يشغّل مزامنة المكونات الإضافية،
وتحديث إكمال أوامر النواة، وأعمال إعادة التشغيل. يحافظ ذلك على مواءمة
الملحقات الجانبية المعبأة وسجلات المكونات الإضافية المملوكة للقناة مع
بنية OpenClaw المثبتة، مع ترك إعادة بناء إكمال أوامر المكونات الإضافية الكاملة
لتشغيلات openclaw completion --write-state الصريحة.
عند تثبيت خدمة Gateway مُدارة محلية وتمكين إعادة التشغيل،
توقف تحديثات مدير الحزم الخدمة الجارية قبل استبدال شجرة الحزمة،
ثم تنعش بيانات الخدمة الوصفية من التثبيت المحدّث، وتعيد تشغيل
الخدمة، وتتحقق من أن Gateway المعاد تشغيلها تبلغ عن الإصدار المتوقع قبل
الإبلاغ عن النجاح. على macOS، يتحقق فحص ما بعد التحديث أيضًا من أن LaunchAgent
محمّل/قيد التشغيل للملف النشط وأن منفذ local loopback المكوّن
سليم. إذا كان plist مثبتًا لكن launchd لا يشرف عليه، يعيد OpenClaw
تمهيد LaunchAgent تلقائيًا، ثم يعيد تشغيل فحوصات
الصحة/الإصدار/جاهزية القناة. يحمّل التمهيد الجديد مهمة RunAtLoad
مباشرة، لذلك لا يقوم استرداد التحديث فورًا بتشغيل kickstart -k على Gateway
الذي أُنشئ حديثًا. إذا ظل Gateway غير سليم، يخرج الأمر
بقيمة غير صفرية ويطبع مسار سجل إعادة التشغيل إضافة إلى تعليمات صريحة لإعادة التشغيل
وإعادة التثبيت والتراجع عن الحزمة. مع --no-restart،
يظل استبدال الحزمة يعمل، لكن الخدمة المُدارة لا تُوقف أو
تُعاد تشغيلها، لذلك قد يستمر Gateway الجاري في استخدام الشفرة القديمة إلى أن تعيد تشغيله
يدويًا.
تدفق نسخة git
اختيار القناة
stable: يسحب أحدث وسم غير beta، ثم يبني ويشغّل doctor.beta: يفضّل أحدث وسم-beta، لكنه يرجع إلى أحدث وسم stable عندما تكون beta مفقودة أو أقدم.dev: يسحبmain، ثم يجلب ويعيد الأساس.
خطوات التحديث
بناء تمهيدي (خاص بـ dev فقط)
يشغّل بناء TypeScript في شجرة عمل مؤقتة. إذا فشل الطرف، يرجع حتى 10 التزامات للعثور على أحدث التزام قابل للبناء. اضبط
OPENCLAW_UPDATE_PREFLIGHT_LINT=1 لتشغيل lint أيضًا أثناء هذا الفحص التمهيدي؛ يعمل lint في وضع تسلسلي مقيد لأن مضيفات تحديث المستخدم غالبًا أصغر من مشغلات CI.تثبيت التبعيات
يستخدم مدير حزم المستودع. بالنسبة إلى نسخ pnpm، يمهّد المحدّث
pnpm عند الطلب (عبر corepack أولًا، ثم رجوع مؤقت إلى npm install pnpm@11) بدلًا من تشغيل npm run build داخل مساحة عمل pnpm.@beta أولًا. إذا لم يكن للمكوّن الإضافي
إصدار beta، يرجع OpenClaw إلى مواصفة default/latest المسجلة ويبلغ
عن ذلك كتحذير. بالنسبة إلى مكونات npm الإضافية، يرجع OpenClaw أيضًا عندما تكون حزمة beta
موجودة لكنها تفشل في تحقق التثبيت. لا تجعل تحذيرات الرجوع الخاصة بالمكونات الإضافية هذه
تحديث النواة يفشل. لا تُعاد كتابة الإصدارات الدقيقة والوسوم الصريحة.
تُبلغ إخفاقات مزامنة المكونات الإضافية بعد التحديث، عندما تكون محددة ضمن مكوّن إضافي مُدار ويمكن لمسار المزامنة الالتفاف حولها (مثل سجل npm لا يمكن الوصول إليه لمكوّن إضافي غير أساسي)، كتحذيرات بعد نجاح تحديث النواة. تحتفظ نتيجة JSON بالحالة العليا للتحديث
status: "ok" وتبلغ عن postUpdate.plugins.status: "warning" مع إرشادات openclaw doctor --fix وopenclaw plugins inspect <id> --runtime --json. لا تزال استثناءات المحدّث أو المزامنة غير المتوقعة تفشل نتيجة التحديث. أصلح تثبيت المكوّن الإضافي أو خطأ التحديث، ثم أعد تشغيل openclaw doctor --fix أو openclaw update.بعد خطوة المزامنة لكل مكوّن إضافي، يشغّل openclaw update تمريرة تقارب ما بعد النواة إلزامية قبل إعادة تشغيل gateway: يصلح حمولات المكونات الإضافية المكوّنة المفقودة، ويتحقق من كل سجل تثبيت متتبع نشط على القرص، ويتحقق ثابتًا من أن package.json الخاص به قابل للتحليل (وأن أي main مُعلَن صراحة موجود). تعيد الإخفاقات من هذه التمريرة — ولقطة إعدادات OpenClaw غير الصالحة — القيمة postUpdate.plugins.status: "error" وتقلب حالة التحديث العليا إلى "error"، لذلك يخرج openclaw update بقيمة غير صفرية ولا يُعاد تشغيل gateway بمجموعة مكونات إضافية غير متحقق منها. يتضمن الخطأ أسطر postUpdate.plugins.warnings[].guidance منظمة تشير إلى openclaw doctor --fix وopenclaw plugins inspect <id> --runtime --json للمتابعة. تُتخطى إدخالات المكونات الإضافية المعطلة والسجلات غير المرتبطة بمصادر موثوقة كأهداف مزامنة رسمية هنا، بما يعكس سياسة skipDisabledPlugins المستخدمة في فحص الحمولات المفقودة، لذلك لا يمكن لسجل مكوّن إضافي معطل قديم أن يمنع تحديثًا صالحًا otherwise.عند بدء Gateway المحدّث، يكون تحميل المكونات الإضافية للتحقق فقط: لا يشغّل بدء التشغيل مديري الحزم ولا يغيّر أشجار التبعيات. تتجاوز عمليات إعادة التشغيل الخاصة بمدير الحزم update.run التأجيل الخامل العادي وفترة تهدئة إعادة التشغيل بعد تبديل شجرة الحزمة، لذلك لا يمكن للعملية القديمة أن تواصل تحميل الأجزاء المحذوفة بكسل عند الحاجة.إذا ظل تمهيد pnpm يفشل، يتوقف المحدّث مبكرًا مع خطأ خاص بمدير الحزم بدلًا من محاولة npm run build داخل نسخة المصدر.الاختصار --update
يعيد openclaw --update الكتابة إلى openclaw update (مفيد للصدفات وسكربتات التشغيل).
ذات صلة
openclaw doctor(يعرض تشغيل التحديث أولًا على نسخ git)- قنوات التطوير
- التحديث
- مرجع CLI