Skip to main content
تُعرَض حزمة SDK الخاصة بالـ Plugin كمجموعة من المسارات الفرعية العامة المحددة ضمن openclaw/plugin-sdk/. تفهرس هذه الصفحة المسارات الفرعية الشائعة الاستخدام مجمّعةً حسب الغرض. تحدد ثلاثة ملفات هذه الواجهة:
  • scripts/lib/plugin-sdk-entrypoints.json: قائمة نقاط الدخول المُصانة التي تُجمّعها عملية البناء.
  • scripts/lib/plugin-sdk-private-local-only-subpaths.json: مسارات فرعية محلية للاختبارات/الاستخدام الداخلي في المستودع. صادرات الحزمة هي القائمة بعد استبعاد هذه اللائحة.
  • src/plugin-sdk/entrypoints.ts: بيانات وصفية للتصنيف تخص المسارات الفرعية المهملة، والمساعدات المحجوزة المضمّنة، والواجهات المضمّنة المدعومة، والواجهات العامة المملوكة للـ Plugin.
يدقق المشرفون عدد الصادرات العامة باستخدام pnpm plugin-sdk:surface وعدد المسارات الفرعية النشطة للمساعدات المحجوزة باستخدام pnpm plugins:boundary-report:summary؛ وتؤدي صادرات المساعدات المحجوزة غير المستخدمة إلى فشل تقرير CI بدلًا من بقائها في SDK العام كدين توافق خامل. للاطلاع على دليل إنشاء الـ Plugin، راجع نظرة عامة على SDK الخاص بالـ Plugin.

نقطة دخول الـ Plugin

مساعدات التوافق والاختبار المهملة

تظل المسارات الفرعية المهملة مُصدّرة للـ Plugins الأقدم، لكن ينبغي للكود الجديد استخدام المسارات الفرعية المحددة لـ SDK أدناه. القائمة المُصانة هي scripts/lib/plugin-sdk-deprecated-public-subpaths.json؛ ويرفض CI استيرادات الإنتاج المضمّنة منها. أما ملفات التصدير الجامعة الواسعة مثل plugin-sdk/compat، وplugin-sdk/config-types، وplugin-sdk/infra-runtime، و plugin-sdk/text-runtime فهي للتوافق فقط، وplugin-sdk/zod عبارة عن إعادة تصدير للتوافق: استورد zod مباشرةً من zod. كما أن ملفات التصدير الجامعة الواسعة للنطاقات plugin-sdk/agent-runtime، وplugin-sdk/channel-lifecycle، وplugin-sdk/channel-runtime، وplugin-sdk/cli-runtime، وplugin-sdk/conversation-runtime، وplugin-sdk/hook-runtime، وplugin-sdk/media-runtime، وplugin-sdk/plugin-runtime، و plugin-sdk/security-runtime مهملة أيضًا لصالح المسارات الفرعية المحددة. أصبحت المسارات الفرعية لمساعدات الاختبار في OpenClaw، والمدعومة بـ Vitest، محلية للمستودع فقط ولم تعد ضمن صادرات الحزمة: agent-runtime-test-contracts، channel-contract-testing، وchannel-target-testing، وchannel-test-helpers، وplugin-state-test-runtime، وplugin-test-api، وplugin-test-contracts، وplugin-test-runtime، وprovider-http-test-mocks، وprovider-test-contracts، وreply-payload-testing، وsqlite-runtime-testing، وtest-env، وtest-fixtures، وtest-node-mocks، وtesting. كما أن واجهتي المساعدات المضمّنتين الخاصتين ssrf-runtime-internal وcodex-native-task-runtime محليتان للمستودع فقط.

المسارات الفرعية المحجوزة لمساعدات الـ Plugin المضمّنة

plugin-sdk/codex-mcp-projection هو المسار الفرعي المحجوز الوحيد: واجهة توافق مملوكة للـ Plugin من أجل Plugin ‏Codex المضمّن، وليست واجهة API عامة لـ SDK. تحظر ضوابط عقد الحزمة الاستيرادات بين Plugins ذات مالكين مختلفين، و يفشل CI عندما يتوقف استيراد مسار فرعي محجوز. plugin-sdk/codex-native-task-runtime محلي للمستودع فقط وليس ضمن صادرات الحزمة. يتتبع src/plugin-sdk/entrypoints.ts أيضًا الواجهات المضمّنة المدعومة، وهي نقاط دخول SDK المدعومة بواسطة الـ Plugin المضمّن الخاص بها إلى أن تحل العقود العامة محلها: plugin-sdk/discord، وplugin-sdk/lmstudio، وplugin-sdk/lmstudio-runtime، وplugin-sdk/matrix، وplugin-sdk/mattermost، وplugin-sdk/memory-core-engine-runtime، وplugin-sdk/provider-zai-endpoint، وplugin-sdk/qa-runner-runtime، وplugin-sdk/telegram-account، وplugin-sdk/tts-runtime، وplugin-sdk/zalouser. كما أن العديد منها مهمل للكود الجديد؛ راجع الملاحظات الخاصة بكل صف أدناه.
تظل عائلات مساعدات القنوات المهملة متاحة فقط للتوافق مع الـ Plugin المنشورة. تتمثل خطة الإزالة في: الإبقاء عليها طوال فترة ترحيل الـ Plugin الخارجية، والإبقاء على الـ Plugin المضمنة/الخاصة بالمستودع على channel-inbound وchannel-outbound، ثم إزالة المسارات الفرعية الخاصة بالتوافق في عملية التنظيف الرئيسية التالية لـ SDK. ينطبق ذلك على العائلات القديمة لرسائل القنوات/وقت التشغيل، والبث التدفقي للقنوات، والوصول المباشر إلى الرسائل الخاصة، وتفرعات مساعدات الوارد، وخيارات الرد، ومسارات الاقتران.
تعرض لقطات استخدام الموفّر عادةً حصة واحدة أو أكثر من windows، لكل منها تسمية ونسبة مئوية مستخدمة ووقت اختياري لإعادة التعيين. ينبغي للموفّرين الذين يعرضون نصًا للرصيد أو حالة الحساب بدلًا من نوافذ الحصص القابلة لإعادة التعيين إرجاع summary مع مصفوفة windows فارغة بدلًا من اختلاق نسب مئوية. يعرض OpenClaw نص الملخص هذا في مخرجات الحالة؛ استخدم error فقط عندما تفشل نقطة نهاية الاستخدام أو لا تُرجع بيانات استخدام قابلة للاستفادة.
المسارات الفرعية المحجوزة في SDK للمساعدات المضمّنة هي واجهات محدودة خاصة بالمالك لشفرة الـ Plugin المضمّنة. وهي مُتعقبة في مخزون SDK كي تظل عمليات بناء الحزم والأسماء المستعارة حتمية، لكنها ليست واجهات برمجة تطبيقات عامة لتأليف الـ Plugins. ينبغي لعقود المضيف الجديدة القابلة لإعادة الاستخدام أن تستخدم مسارات SDK الفرعية العامة مثل plugin-sdk/gateway-runtime وplugin-sdk/ssrf-runtime و plugin-sdk/plugin-config-runtime.

ذو صلة