تتيح تجاوزات تثبيت Plugin للمشرفين اختبار عمليات تثبيت Plugin في وقت الإعداد مقابل
حزمة npm محددة أو أرشيف tarball محلي ناتج عن npm-pack. وهي مخصصة لاختبارات E2E والتحقق من الحزم
فقط. يجب على المستخدمين العاديين تثبيت Plugins باستخدام
openclaw plugins install.
تنفذ التجاوزات كود Plugin من المصدر الذي توفره. استخدمها فقط في
دليل حالة معزول أو جهاز اختبار قابل للتخلص منه.
البيئة
تكون التجاوزات معطلة ما لم يُضبط كلا المتغيرين:
export OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1
export OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{
"codex": "npm-pack:/tmp/openclaw-codex-2026.5.8.tgz",
"openclaw-web-search": "npm:@openclaw/web-search@2026.5.8"
}'
خريطة التجاوز هي JSON مفهرسة حسب معرّف Plugin. تدعم القيم:
npm:<registry-spec> لحزم السجل والإصدارات أو الوسوم المحددة بدقة
npm-pack:<path.tgz> للأرشيفات المحلية التي ينتجها npm pack
تُحل مسارات npm-pack: النسبية من دليل العمل الحالي.
السلوك
عندما يطلب مسار في وقت الإعداد تثبيت Plugin يظهر معرّفه في الخريطة،
يستخدم OpenClaw مصدر التجاوز بدلا من مصدر npm من الكتالوج أو المضمن أو الافتراضي.
ينطبق هذا على الإعداد الأولي والمسارات الأخرى التي تستخدم مثبت Plugin المشترك
في وقت الإعداد.
ما زالت التجاوزات تفرض معرّف Plugin المتوقع. يجب أن يثبت أرشيف tarball مربوط بـ codex
Plugin يكون معرّف manifest الخاص به هو codex.
لا ترث التجاوزات حالة المصدر الرسمي الموثوق. حتى عندما يمثل إدخال الكتالوج
عادة حزمة مملوكة لـ OpenClaw، يُعامل التجاوز كمدخل اختبار يقدمه المشغل.
لا يمكن لملفات .env في مساحة العمل تمكين تجاوزات التثبيت. اضبط هذه المتغيرات في
الصدفة الموثوقة أو مهمة CI أو أمر الاختبار البعيد الذي يشغل OpenClaw.
حزمة E2E
استخدم دليل حالة معزولا حتى لا تلمس عمليات تثبيت الحزم وسجلات التثبيت
حالة OpenClaw العادية لديك:
npm pack extensions/codex --pack-destination /tmp
OPENCLAW_STATE_DIR="$(mktemp -d)" \
OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1 \
OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{"codex":"npm-pack:/tmp/openclaw-codex-2026.5.8.tgz"}' \
pnpm openclaw onboard --mode local
تحقق من الحزمة المثبتة داخل دليل الحالة:
find "$OPENCLAW_STATE_DIR/npm/projects" -path '*/node_modules/@openclaw/codex/package.json' -print
grep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json
بالنسبة لاختبار E2E لمزود حي، استورد مفتاح API الحقيقي من صدفة موثوقة أو سر CI
قبل تشغيل أمر الاختبار. لا تطبع المفاتيح؛ أبلغ فقط عن المصدر
وما إذا كان المفتاح موجودا.