بيان المكون الإضافي (openclaw.plugin.json)
هذه الصفحة مخصصة لـ بيان المكون الإضافي الأصلي في OpenClaw فقط.
للاطلاع على تخطيطات الحزم المتوافقة، راجع حزم المكونات الإضافية.
تستخدم تنسيقات الحزم المتوافقة ملفات بيان مختلفة:
- حزمة Codex:
.codex-plugin/plugin.json - حزمة Claude:
.claude-plugin/plugin.jsonأو تخطيط مكونات Claude الافتراضي بدون بيان - حزمة Cursor:
.cursor-plugin/plugin.json
openclaw.plugin.json الموضح هنا.
بالنسبة إلى الحزم المتوافقة، يقرأ OpenClaw حاليًا بيانات الحزمة الوصفية بالإضافة إلى
جذور Skills المعلنة، وجذور أوامر Claude، والقيم الافتراضية لملف settings.json في حزمة Claude،
والقيم الافتراضية لـ Claude bundle LSP، وحزم hooks المدعومة عندما يطابق التخطيط
توقعات وقت تشغيل OpenClaw.
يجب على كل مكون إضافي أصلي في OpenClaw أن يتضمن ملف openclaw.plugin.json في
جذر المكون الإضافي. يستخدم OpenClaw هذا البيان للتحقق من صحة التكوين
من دون تنفيذ كود المكون الإضافي. تُعامل البيانات المفقودة أو غير الصالحة على أنها
أخطاء في المكون الإضافي وتمنع التحقق من صحة التكوين.
راجع الدليل الكامل لنظام المكونات الإضافية: المكونات الإضافية.
وللاطلاع على نموذج القدرات الأصلي وإرشادات التوافق الخارجي الحالية:
نموذج القدرات.
ما الذي يفعله هذا الملف
openclaw.plugin.json هو البيانات الوصفية التي يقرأها OpenClaw قبل أن يحمّل
كود المكون الإضافي الخاص بك.
استخدمه من أجل:
- هوية المكون الإضافي
- التحقق من صحة التكوين
- بيانات التعريف الخاصة بالمصادقة والإعداد الأولي التي يجب أن تكون متاحة من دون تشغيل وقت تشغيل المكون الإضافي
- تلميحات تفعيل منخفضة التكلفة يمكن لأسطح control-plane فحصها قبل تحميل وقت التشغيل
- واصفات إعداد منخفضة التكلفة يمكن لأسطح الإعداد/التهيئة الأولية فحصها قبل تحميل وقت التشغيل
- بيانات تعريف الأسماء المستعارة والتمكين التلقائي التي يجب حلها قبل تحميل وقت تشغيل المكون الإضافي
- بيانات تعريف مختصرة لملكية عائلة النماذج ينبغي أن تفعّل المكون الإضافي تلقائيًا قبل تحميل وقت التشغيل
- لقطات ثابتة لملكية القدرات تُستخدم في ربط التوافق المضمّن وتغطية العقود
- بيانات تعريف تكوين خاصة بالقنوات ينبغي دمجها في أسطح الفهرسة والتحقق من دون تحميل وقت التشغيل
- تلميحات واجهة المستخدم للتكوين
- تسجيل سلوك وقت التشغيل
- تعريف نقاط دخول الكود
- بيانات تعريف تثبيت npm
package.json.
مثال بسيط
مثال غني
مرجع الحقول ذات المستوى الأعلى
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
id | نعم | string | المعرّف الأساسي للمكون الإضافي. هذا هو المعرّف المستخدم في plugins.entries.<id>. |
configSchema | نعم | object | مخطط JSON مضمن لتكوين هذا المكون الإضافي. |
enabledByDefault | لا | true | يحدد مكونًا إضافيًا مضمّنًا على أنه مفعّل افتراضيًا. احذف هذا الحقل، أو عيّن أي قيمة غير true، لترك المكون الإضافي معطلًا افتراضيًا. |
legacyPluginIds | لا | string[] | معرّفات قديمة تُطبَّع إلى هذا المعرّف الأساسي للمكون الإضافي. |
autoEnableWhenConfiguredProviders | لا | string[] | معرّفات الموفرين التي يجب أن تفعّل هذا المكون الإضافي تلقائيًا عندما تشير المصادقة أو التكوين أو مراجع النماذج إليها. |
kind | لا | "memory" | "context-engine" | يعلن نوع مكون إضافي حصريًا يُستخدم بواسطة plugins.slots.*. |
channels | لا | string[] | معرّفات القنوات المملوكة لهذا المكون الإضافي. تُستخدم للاكتشاف والتحقق من صحة التكوين. |
providers | لا | string[] | معرّفات الموفرين المملوكة لهذا المكون الإضافي. |
modelSupport | لا | object | بيانات تعريف مختصرة مملوكة للبيان لعائلة النماذج، وتُستخدم لتحميل المكون الإضافي تلقائيًا قبل وقت التشغيل. |
cliBackends | لا | string[] | معرّفات الواجهات الخلفية للاستدلال في CLI المملوكة لهذا المكون الإضافي. تُستخدم للتفعيل التلقائي عند بدء التشغيل انطلاقًا من مراجع التكوين الصريحة. |
commandAliases | لا | object[] | أسماء الأوامر المملوكة لهذا المكون الإضافي والتي ينبغي أن تُنتج تشخيصات واعية بالمكون الإضافي للتكوين وCLI قبل تحميل وقت التشغيل. |
providerAuthEnvVars | لا | Record<string, string[]> | بيانات تعريف منخفضة التكلفة لمتغيرات البيئة الخاصة بمصادقة الموفر، ويمكن لـ OpenClaw فحصها من دون تحميل كود المكون الإضافي. |
providerAuthAliases | لا | Record<string, string> | معرّفات موفرين يجب أن تعيد استخدام معرّف موفر آخر للبحث عن المصادقة، مثل موفر برمجة يشارك مفتاح API الأساسي وملفات تعريف المصادقة الخاصة بالموفر الأساسي. |
channelEnvVars | لا | Record<string, string[]> | بيانات تعريف منخفضة التكلفة لمتغيرات بيئة القنوات، ويمكن لـ OpenClaw فحصها من دون تحميل كود المكون الإضافي. استخدم هذا لأسطح إعداد القنوات أو المصادقة المعتمدة على متغيرات البيئة والتي ينبغي أن تراها أدوات البدء/التكوين العامة. |
providerAuthChoices | لا | object[] | بيانات تعريف منخفضة التكلفة لخيارات المصادقة لمحددات الإعداد الأولي، وحل الموفر المفضل، وربط أعلام CLI البسيط. |
activation | لا | object | تلميحات تفعيل منخفضة التكلفة للتحميل المُحفَّز بواسطة الموفر أو الأمر أو القناة أو المسار أو القدرة. بيانات تعريف فقط؛ لا يزال وقت تشغيل المكون الإضافي يملك السلوك الفعلي. |
setup | لا | object | واصفات إعداد/تهيئة أولية منخفضة التكلفة يمكن لأسطح الاكتشاف والإعداد فحصها من دون تحميل وقت تشغيل المكون الإضافي. |
contracts | لا | object | لقطة ثابتة للقدرات المضمّنة من أجل speech، وrealtime transcription، وrealtime voice، وmedia-understanding، وimage-generation، وmusic-generation، وvideo-generation، وweb-fetch، وweb search، وملكية الأدوات. |
channelConfigs | لا | Record<string, object> | بيانات تعريف تكوين القنوات المملوكة للبيان والمُدمجة في أسطح الاكتشاف والتحقق من الصحة قبل تحميل وقت التشغيل. |
skills | لا | string[] | أدلة Skills التي سيتم تحميلها، نسبةً إلى جذر المكون الإضافي. |
name | لا | string | اسم مقروء بشريًا للمكون الإضافي. |
description | لا | string | ملخص قصير يظهر في أسطح المكونات الإضافية. |
version | لا | string | إصدار معلوماتي للمكون الإضافي. |
uiHints | لا | Record<string, object> | تسميات واجهة المستخدم والعناصر النائبة وتلميحات الحساسية لحقول التكوين. |
مرجع providerAuthChoices
يصف كل إدخال في providerAuthChoices خيارًا واحدًا للإعداد الأولي أو المصادقة.
يقرأ OpenClaw هذا قبل تحميل وقت تشغيل الموفر.
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
provider | نعم | string | معرّف الموفر الذي ينتمي إليه هذا الخيار. |
method | نعم | string | معرّف أسلوب المصادقة الذي سيتم التوجيه إليه. |
choiceId | نعم | string | معرّف ثابت لخيار المصادقة يُستخدم بواسطة تدفقات الإعداد الأولي وCLI. |
choiceLabel | لا | string | تسمية موجهة للمستخدم. إذا حُذفت، يعود OpenClaw إلى choiceId. |
choiceHint | لا | string | نص مساعد قصير للمحدد. |
assistantPriority | لا | number | تُرتَّب القيم الأقل أولًا في المحددات التفاعلية التي يقودها المساعد. |
assistantVisibility | لا | "visible" | "manual-only" | يُخفي الخيار من محددات المساعد مع الاستمرار في السماح بالاختيار اليدوي عبر CLI. |
deprecatedChoiceIds | لا | string[] | معرّفات خيارات قديمة ينبغي أن تعيد توجيه المستخدمين إلى هذا الخيار البديل. |
groupId | لا | string | معرّف مجموعة اختياري لتجميع الخيارات المرتبطة. |
groupLabel | لا | string | تسمية موجهة للمستخدم لتلك المجموعة. |
groupHint | لا | string | نص مساعد قصير للمجموعة. |
optionKey | لا | string | مفتاح خيار داخلي لتدفقات المصادقة البسيطة ذات العلم الواحد. |
cliFlag | لا | string | اسم علم CLI، مثل --openrouter-api-key. |
cliOption | لا | string | صيغة خيار CLI الكاملة، مثل --openrouter-api-key <key>. |
cliDescription | لا | string | الوصف المستخدم في تعليمات CLI. |
onboardingScopes | لا | Array<"text-inference" | "image-generation"> | أسطح الإعداد الأولي التي ينبغي أن يظهر فيها هذا الخيار. إذا حُذفت، فالقيمة الافتراضية هي ["text-inference"]. |
مرجع commandAliases
استخدم commandAliases عندما يملك المكون الإضافي اسم أمر وقت تشغيل قد يضعه المستخدمون
عن طريق الخطأ في plugins.allow أو يحاولون تشغيله كأمر CLI جذري. يستخدم OpenClaw
هذه البيانات الوصفية للتشخيصات من دون استيراد كود وقت تشغيل المكون الإضافي.
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
name | نعم | string | اسم الأمر الذي ينتمي إلى هذا المكون الإضافي. |
kind | لا | "runtime-slash" | يحدد الاسم المستعار على أنه أمر slash في الدردشة بدلًا من أمر CLI جذري. |
cliCommand | لا | string | أمر CLI جذري ذي صلة يُقترح لعمليات CLI، إذا كان موجودًا. |
مرجع activation
استخدم activation عندما يمكن للمكون الإضافي أن يعلن بتكلفة منخفضة عن أحداث control-plane
التي ينبغي أن تفعّله لاحقًا.
هذه الكتلة هي بيانات تعريف فقط. وهي لا تسجل سلوك وقت التشغيل، ولا
تحل محل register(...) أو setupEntry أو نقاط دخول وقت التشغيل/المكون الإضافي الأخرى.
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
onProviders | لا | string[] | معرّفات الموفرين التي ينبغي أن تفعّل هذا المكون الإضافي عند طلبها. |
onCommands | لا | string[] | معرّفات الأوامر التي ينبغي أن تفعّل هذا المكون الإضافي. |
onChannels | لا | string[] | معرّفات القنوات التي ينبغي أن تفعّل هذا المكون الإضافي. |
onRoutes | لا | string[] | أنواع المسارات التي ينبغي أن تفعّل هذا المكون الإضافي. |
onCapabilities | لا | Array<"provider" | "channel" | "tool" | "hook"> | تلميحات قدرات عامة تُستخدم في تخطيط التفعيل ضمن control-plane. |
مرجع setup
استخدم setup عندما تحتاج أسطح الإعداد والتهيئة الأولية إلى بيانات تعريف منخفضة التكلفة
مملوكة للمكون الإضافي قبل تحميل وقت التشغيل.
cliBackends على المستوى الأعلى صالحًا ويستمر في وصف الواجهات الخلفية للاستدلال في CLI.
أما setup.cliBackends فهو سطح الواصفات الخاص بالإعداد من أجل
تدفقات control-plane/الإعداد التي ينبغي أن تظل بيانات تعريف فقط.
مرجع setup.providers
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
id | نعم | string | معرّف الموفر الذي يُعرَض أثناء الإعداد أو التهيئة الأولية. |
authMethods | لا | string[] | معرّفات أساليب الإعداد/المصادقة التي يدعمها هذا الموفر من دون تحميل وقت التشغيل الكامل. |
envVars | لا | string[] | متغيرات البيئة التي يمكن لأسطح الإعداد/الحالة العامة التحقق منها قبل تحميل وقت تشغيل المكون الإضافي. |
حقول setup
| الحقل | مطلوب | النوع | ما الذي يعنيه |
|---|---|---|---|
providers | لا | object[] | واصفات إعداد الموفر المعروضة أثناء الإعداد والتهيئة الأولية. |
cliBackends | لا | string[] | معرّفات الواجهات الخلفية المتاحة وقت الإعداد من دون تفعيل وقت التشغيل الكامل. |
configMigrations | لا | string[] | معرّفات ترحيل التكوين المملوكة لسطح إعداد هذا المكون الإضافي. |
requiresRuntime | لا | boolean | ما إذا كان الإعداد لا يزال يحتاج إلى تنفيذ وقت تشغيل المكون الإضافي بعد البحث عن الواصفات. |
مرجع uiHints
uiHints هو خريطة من أسماء حقول التكوين إلى تلميحات عرض صغيرة.
| الحقل | النوع | ما الذي يعنيه |
|---|---|---|
label | string | تسمية الحقل الموجهة للمستخدم. |
help | string | نص مساعد قصير. |
tags | string[] | وسوم واجهة مستخدم اختيارية. |
advanced | boolean | يحدد الحقل على أنه متقدم. |
sensitive | boolean | يحدد الحقل على أنه سري أو حساس. |
placeholder | string | نص العنصر النائب لمدخلات النماذج. |
مرجع contracts
استخدم contracts فقط لبيانات تعريف ملكية القدرات الثابتة التي يمكن لـ OpenClaw
قراءتها من دون استيراد وقت تشغيل المكون الإضافي.
| الحقل | النوع | ما الذي يعنيه |
|---|---|---|
speechProviders | string[] | معرّفات موفري speech التي يملكها هذا المكون الإضافي. |
realtimeTranscriptionProviders | string[] | معرّفات موفري realtime transcription التي يملكها هذا المكون الإضافي. |
realtimeVoiceProviders | string[] | معرّفات موفري realtime voice التي يملكها هذا المكون الإضافي. |
mediaUnderstandingProviders | string[] | معرّفات موفري media-understanding التي يملكها هذا المكون الإضافي. |
imageGenerationProviders | string[] | معرّفات موفري image-generation التي يملكها هذا المكون الإضافي. |
videoGenerationProviders | string[] | معرّفات موفري video-generation التي يملكها هذا المكون الإضافي. |
webFetchProviders | string[] | معرّفات موفري web-fetch التي يملكها هذا المكون الإضافي. |
webSearchProviders | string[] | معرّفات موفري web search التي يملكها هذا المكون الإضافي. |
tools | string[] | أسماء أدوات الوكيل التي يملكها هذا المكون الإضافي من أجل فحوصات العقد المضمّنة. |
مرجع channelConfigs
استخدم channelConfigs عندما يحتاج مكون إضافي للقنوات إلى بيانات تعريف تكوين منخفضة التكلفة قبل
تحميل وقت التشغيل.
| الحقل | النوع | ما الذي يعنيه |
|---|---|---|
schema | object | مخطط JSON لـ channels.<id>. وهو مطلوب لكل إدخال تكوين قناة مُعلن. |
uiHints | Record<string, object> | تسميات واجهة مستخدم/عناصر نائبة/تلميحات حساسية اختيارية لذلك القسم من تكوين القناة. |
label | string | تسمية القناة المدمجة في أسطح المحدد والفحص عندما لا تكون بيانات وقت التشغيل الوصفية جاهزة. |
description | string | وصف قصير للقناة لأسطح الفحص والفهرس. |
preferOver | string[] | معرّفات مكونات إضافية قديمة أو أقل أولوية ينبغي أن تتفوق عليها هذه القناة في أسطح الاختيار. |
مرجع modelSupport
استخدم modelSupport عندما ينبغي لـ OpenClaw أن يستنتج مكون الموفر الإضافي الخاص بك من
معرّفات النماذج المختصرة مثل gpt-5.4 أو claude-sonnet-4.6 قبل تحميل وقت تشغيل
المكون الإضافي.
- تستخدم مراجع
provider/modelالصريحة بيانات تعريفprovidersالمملوكة في البيان - تتفوق
modelPatternsعلىmodelPrefixes - إذا طابق كل من مكون إضافي غير مضمّن ومكون إضافي مضمّن، فإن المكون الإضافي غير المضمّن يفوز
- يُتجاهل أي غموض متبقٍ حتى يحدد المستخدم أو التكوين موفرًا
| الحقل | النوع | ما الذي يعنيه |
|---|---|---|
modelPrefixes | string[] | بادئات تُطابق باستخدام startsWith مع معرّفات النماذج المختصرة. |
modelPatterns | string[] | مصادر Regex تُطابق مع معرّفات النماذج المختصرة بعد إزالة لاحقة ملف التعريف. |
openclaw doctor --fix من أجل
نقل speechProviders وrealtimeTranscriptionProviders،
وrealtimeVoiceProviders وmediaUnderstandingProviders،
وimageGenerationProviders وvideoGenerationProviders،
وwebFetchProviders وwebSearchProviders إلى contracts؛ إذ لم يعد
تحميل البيان العادي يتعامل مع تلك الحقول ذات المستوى الأعلى على أنها
ملكية قدرات.
البيان مقابل package.json
يؤدي الملفان وظيفتين مختلفتين:
| الملف | استخدمه من أجل |
|---|---|
openclaw.plugin.json | الاكتشاف، والتحقق من صحة التكوين، وبيانات تعريف خيارات المصادقة، وتلميحات واجهة المستخدم التي يجب أن تكون موجودة قبل تشغيل كود المكون الإضافي |
package.json | بيانات npm الوصفية، وتثبيت التبعيات، وكتلة openclaw المستخدمة لنقاط الدخول، وحظر التثبيت، والإعداد، أو بيانات تعريف الفهرس |
- إذا كان يجب على OpenClaw معرفته قبل تحميل كود المكون الإضافي، فضعه في
openclaw.plugin.json - إذا كان متعلقًا بالتغليف، أو ملفات الدخول، أو سلوك تثبيت npm، فضعه في
package.json
حقول package.json التي تؤثر في الاكتشاف
توجد بعض بيانات تعريف المكونات الإضافية قبل وقت التشغيل عمدًا في package.json ضمن
كتلة openclaw بدلًا من openclaw.plugin.json.
أمثلة مهمة:
| الحقل | ما الذي يعنيه |
|---|---|
openclaw.extensions | يعرّف نقاط دخول المكونات الإضافية الأصلية. |
openclaw.setupEntry | نقطة دخول خفيفة مخصصة للإعداد فقط تُستخدم أثناء التهيئة الأولية وبدء تشغيل القنوات المؤجل. |
openclaw.channel | بيانات تعريف خفيفة لفهرس القنوات مثل التسميات، ومسارات الوثائق، والأسماء المستعارة، ونصوص الاختيار. |
openclaw.channel.configuredState | بيانات تعريف خفيفة لفاحص حالة التكوين يمكنها الإجابة عن سؤال “هل يوجد إعداد يعتمد على env فقط بالفعل؟” من دون تحميل وقت تشغيل القناة الكامل. |
openclaw.channel.persistedAuthState | بيانات تعريف خفيفة لفاحص المصادقة المحفوظة يمكنها الإجابة عن سؤال “هل يوجد أي تسجيل دخول بالفعل؟” من دون تحميل وقت تشغيل القناة الكامل. |
openclaw.install.npmSpec / openclaw.install.localPath | تلميحات التثبيت/التحديث للمكونات الإضافية المضمّنة والمنشورة خارجيًا. |
openclaw.install.defaultChoice | مسار التثبيت المفضل عند توفر عدة مصادر تثبيت. |
openclaw.install.minHostVersion | الحد الأدنى المدعوم من إصدار مضيف OpenClaw، باستخدام حد أدنى semver مثل >=2026.3.22. |
openclaw.install.allowInvalidConfigRecovery | يسمح بمسار استرداد ضيق لإعادة تثبيت المكونات الإضافية المضمّنة عندما يكون التكوين غير صالح. |
openclaw.startup.deferConfiguredChannelFullLoadUntilAfterListen | يتيح تحميل أسطح القنوات المخصصة للإعداد فقط قبل المكون الإضافي الكامل للقناة أثناء بدء التشغيل. |
openclaw.install.minHostVersion أثناء التثبيت وتحميل سجل
البيان. تُرفض القيم غير الصالحة؛ أما القيم الأحدث ولكن الصالحة فتتجاوز
المكون الإضافي على المضيفين الأقدم.
إن openclaw.install.allowInvalidConfigRecovery ضيق النطاق عمدًا. فهو
لا يجعل التكوينات المعطوبة التعسفية قابلة للتثبيت. في الوقت الحالي، لا يسمح إلا لتدفقات التثبيت
بالتعافي من حالات فشل معينة قديمة لترقية المكونات الإضافية المضمّنة، مثل
مسار مكون إضافي مضمّن مفقود أو إدخال channels.<id> قديم لذلك
المكون الإضافي المضمّن نفسه. وما تزال أخطاء التكوين غير المرتبطة تمنع التثبيت وتوجه
المشغلين إلى openclaw doctor --fix.
إن openclaw.channel.persistedAuthState هو بيانات تعريف الحزمة لوحدة فاحص صغيرة:
openclaw.channel.configuredState البنية نفسها من أجل فحوصات حالة التكوين
الرخيصة المعتمدة على env فقط:
config.hasConfiguredState الخاص بالمكون الإضافي بدلًا من ذلك.
متطلبات مخطط JSON
- يجب على كل مكون إضافي أن يتضمن مخطط JSON، حتى إذا كان لا يقبل أي تكوين.
- يُقبل مخطط فارغ (على سبيل المثال،
{ "type": "object", "additionalProperties": false }). - يتم التحقق من المخططات عند قراءة/كتابة التكوين، وليس أثناء وقت التشغيل.
سلوك التحقق
- تُعد مفاتيح
channels.*غير المعروفة أخطاء، ما لم يكن معرّف القناة معلنًا بواسطة بيان مكون إضافي. - يجب أن تشير
plugins.entries.<id>وplugins.allowوplugins.denyوplugins.slots.*إلى معرّفات مكونات إضافية قابلة للاكتشاف. تُعد المعرّفات غير المعروفة أخطاء. - إذا كان المكون الإضافي مثبتًا لكن بيانه أو مخططه معطوبًا أو مفقودًا، يفشل التحقق ويبلغ Doctor عن خطأ المكون الإضافي.
- إذا كان تكوين المكون الإضافي موجودًا لكن المكون الإضافي معطل، فيُحتفظ بالتكوين وتظهر تحذيرات في Doctor + السجلات.
plugins.* الكامل.
ملاحظات
- البيان مطلوب للمكونات الإضافية الأصلية في OpenClaw، بما في ذلك التحميلات المحلية من نظام الملفات.
- ما يزال وقت التشغيل يحمّل وحدة المكون الإضافي بشكل منفصل؛ البيان مخصص فقط للاكتشاف + التحقق.
- تُحلَّل البيانات الأصلية باستخدام JSON5، لذا تُقبل التعليقات والفواصل اللاحقة والمفاتيح غير الموضوعة بين علامتي اقتباس طالما أن القيمة النهائية لا تزال كائنًا.
- لا يقرأ محمّل البيان إلا حقول البيان الموثقة. تجنب إضافة مفاتيح مخصصة ذات مستوى أعلى هنا.
providerAuthEnvVarsهو مسار البيانات الوصفية الرخيص لفحوصات المصادقة، والتحقق من علامات env، وأسُطح مصادقة الموفر المشابهة التي يجب ألا تشغّل وقت تشغيل المكون الإضافي لمجرد فحص أسماء env.- يسمح
providerAuthAliasesلمتغيرات الموفر بإعادة استخدام متغيرات البيئة الخاصة بمصادقة موفر آخر، وملفات تعريف المصادقة، والمصادقة المستندة إلى التكوين، وخيار الإعداد الأولي لمفتاح API من دون ترميز ثابت لهذه العلاقة في النواة. channelEnvVarsهو مسار البيانات الوصفية الرخيص للرجوع إلى shell-env، ومطالبات الإعداد، وأسُطح القنوات المشابهة التي يجب ألا تشغّل وقت تشغيل المكون الإضافي لمجرد فحص أسماء env.providerAuthChoicesهو مسار البيانات الوصفية الرخيص لمحددات خيارات المصادقة، وحل--auth-choice، وربط الموفر المفضل، وتسجيل أعلام CLI البسيطة في الإعداد الأولي قبل تحميل وقت تشغيل الموفر. أما بالنسبة إلى بيانات تعريف المعالج التفاعلي في وقت التشغيل التي تتطلب كود الموفر، فراجع hooks وقت تشغيل الموفر.- تُختار أنواع المكونات الإضافية الحصرية عبر
plugins.slots.*.- يُختار
kind: "memory"بواسطةplugins.slots.memory. - يُختار
kind: "context-engine"بواسطةplugins.slots.contextEngine(الافتراضي:legacyالمدمج).
- يُختار
- يمكن حذف
channelsوprovidersوcliBackendsوskillsعندما لا يحتاجها المكون الإضافي. - إذا كان المكون الإضافي يعتمد على وحدات أصلية، فوثّق خطوات البناء وأي
متطلبات قائمة سماح لمدير الحزم (على سبيل المثال، pnpm
allow-build-scriptspnpm rebuild <package>).
ذو صلة
- بناء المكونات الإضافية — البدء باستخدام المكونات الإضافية
- بنية المكونات الإضافية — البنية الداخلية
- نظرة عامة على SDK — مرجع Plugin SDK