Providers
ComfyUI
يأتي OpenClaw مزودًا بـ plugin مضمّن باسم comfy لتشغيل ComfyUI المعتمد على تدفقات العمل. يعتمد
الـ plugin بالكامل على تدفقات العمل: لا يربط OpenClaw عناصر التحكم العامة مثل size أو
aspectRatio أو resolution أو durationSeconds أو عناصر التحكم المشابهة لـ TTS
بمخططك.
| الخاصية | التفاصيل |
|---|---|
| المزوّد | comfy |
| النموذج | comfy/workflow |
| الأدوات المشتركة | image_generate, video_generate, music_generate |
| المصادقة | لا توجد لـ ComfyUI المحلي؛ COMFY_API_KEY أو COMFY_CLOUD_API_KEY لـ Comfy Cloud |
| API | ComfyUI /prompt / /history / /view؛ Comfy Cloud /api/* |
الإمكانات المدعومة
- إنشاء الصور وتحريرها من ملف JSON لتدفق العمل (يتطلب التحرير صورة مرجعية واحدة مرفوعة)
- إنشاء الفيديو من ملف JSON لتدفق العمل، إما من نص إلى فيديو أو من صورة إلى فيديو (صورة مرجعية واحدة)
- إنشاء الموسيقى/الصوت عبر الأداة المشتركة
music_generate، مع صورة مرجعية واحدة اختيارية - تنزيل المخرجات من Node مُعدّة، أو من جميع Nodes المطابقة للمخرجات عند عدم إعداد أي Node
بدء الاستخدام
اختر بين تشغيل ComfyUI على جهازك أو استخدام Comfy Cloud.
محلي
الأنسب لـ: تشغيل مثيل ComfyUI خاص بك على جهازك أو شبكتك المحلية.
تشغيل ComfyUI محليًا
تأكد من تشغيل مثيل ComfyUI المحلي لديك (القيمة الافتراضية هي http://127.0.0.1:8188).
إعداد ملف JSON لتدفق العمل
صدّر أو أنشئ ملف JSON لتدفق عمل ComfyUI. دوّن معرّفات Nodes الخاصة بـ Node إدخال الموجّه وNode المخرجات التي تريد أن يقرأ منها OpenClaw.
إعداد المزوّد
اضبط mode: "local" وأشر إلى ملف تدفق العمل. مثال أدنى للصور:
{ plugins: { entries: { comfy: { config: { mode: "local", baseUrl: "http://127.0.0.1:8188", image: { workflowPath: "./workflows/flux-api.json", promptNodeId: "6", outputNodeId: "9", }, }, }, }, },}تعيين النموذج الافتراضي
وجّه OpenClaw إلى النموذج comfy/workflow للإمكانات التي أعددتها:
{ agents: { defaults: { imageGenerationModel: { primary: "comfy/workflow", }, }, },}التحقق
openclaw models list --provider comfyComfy Cloud
الأنسب لـ: تشغيل تدفقات العمل على Comfy Cloud دون إدارة موارد GPU محلية.
الحصول على مفتاح API
سجّل في comfy.org وأنشئ مفتاح API من لوحة معلومات حسابك.
تعيين مفتاح API
وفّر مفتاحك باستخدام أي من الطرق التالية:
# Onboarding flagopenclaw onboard --comfy-api-key "your-key" # Environment variable (preferred for daemons)export COMFY_API_KEY="your-key" # Alternative environment variableexport COMFY_CLOUD_API_KEY="your-key" # Or inline in configopenclaw config set plugins.entries.comfy.config.apiKey "your-key"إعداد ملف JSON لتدفق العمل
صدّر أو أنشئ ملف JSON لتدفق عمل ComfyUI. دوّن معرّفات Nodes الخاصة بـ Node إدخال الموجّه وNode المخرجات.
إعداد المزوّد
اضبط mode: "cloud" وأشر إلى ملف تدفق العمل:
{ plugins: { entries: { comfy: { config: { mode: "cloud", image: { workflowPath: "./workflows/flux-api.json", promptNodeId: "6", outputNodeId: "9", }, }, }, }, },}تعيين النموذج الافتراضي
{ agents: { defaults: { imageGenerationModel: { primary: "comfy/workflow", }, }, },}التحقق
openclaw models list --provider comfyالإعداد
يدعم Comfy إعدادات اتصال مشتركة من المستوى الأعلى، بالإضافة إلى أقسام تدفق عمل خاصة بكل إمكانية (image وvideo وmusic):
{ plugins: { entries: { comfy: { config: { mode: "local", baseUrl: "http://127.0.0.1:8188", image: { workflowPath: "./workflows/flux-api.json", promptNodeId: "6", outputNodeId: "9", }, video: { workflowPath: "./workflows/video-api.json", promptNodeId: "12", outputNodeId: "21", }, music: { workflowPath: "./workflows/music-api.json", promptNodeId: "3", outputNodeId: "18", }, }, }, }, },}المفاتيح المشتركة
| المفتاح | النوع | الوصف |
|---|---|---|
mode |
"local" أو "cloud" |
وضع الاتصال. القيمة الافتراضية هي "local". |
baseUrl |
سلسلة نصية | القيمة الافتراضية هي http://127.0.0.1:8188 للوضع المحلي أو https://cloud.comfy.org للوضع السحابي. |
apiKey |
سلسلة نصية | مفتاح مضمن اختياري، بديل لمتغيرَي البيئة COMFY_API_KEY وCOMFY_CLOUD_API_KEY. |
allowPrivateNetwork |
قيمة منطقية | السماح بعنوان baseUrl خاص/ضمن الشبكة المحلية في الوضع السحابي أو باسم نطاق مؤهل بالكامل عبر DNS خاص محلي. |
المفاتيح الخاصة بكل إمكانية
تُطبّق هذه المفاتيح داخل أقسام image أو video أو music:
| المفتاح | مطلوب | الافتراضي | الوصف |
|---|---|---|---|
workflow أو workflowPath |
نعم | -- | ملف JSON مضمن لتدفق العمل، أو مسار ملف JSON لتدفق عمل ComfyUI. |
promptNodeId |
نعم | -- | معرّف Node التي تستقبل الموجّه النصي. |
promptInputName |
لا | "text" |
اسم الإدخال في Node الموجّه. |
outputNodeId |
لا | -- | معرّف Node التي تُقرأ منها المخرجات. إذا حُذف، تُستخدم جميع Nodes المطابقة للمخرجات. |
pollIntervalMs |
لا | 1500 |
الفاصل الزمني للاستقصاء بالمللي ثانية حتى اكتمال المهمة. |
timeoutMs |
لا | 300000 |
المهلة بالمللي ثانية لتشغيل تدفق العمل. |
يدعم قسما image وvideo أيضًا Node إدخال لصورة مرجعية:
| المفتاح | مطلوب | الافتراضي | الوصف |
|---|---|---|---|
inputImageNodeId |
نعم (عند تمرير صورة مرجعية) | -- | معرّف Node التي تستقبل الصورة المرجعية المرفوعة. |
inputImageInputName |
لا | "image" |
اسم الإدخال في Node الصورة. |
يقبل apiKey إما سلسلة نصية حرفية أو كائن مرجع سرّي.
تفاصيل تدفق العمل
تدفقات عمل الصور
عيّن نموذج الصور الافتراضي إلى comfy/workflow:
{ agents: { defaults: { imageGenerationModel: { primary: "comfy/workflow", }, }, },}مثال على التحرير باستخدام صورة مرجعية:
لتمكين تحرير الصور باستخدام صورة مرجعية مرفوعة، أضف inputImageNodeId إلى إعدادات الصور:
{ plugins: { entries: { comfy: { config: { image: { workflowPath: "./workflows/edit-api.json", promptNodeId: "6", inputImageNodeId: "7", inputImageInputName: "image", outputNodeId: "9", }, }, }, }, },}تدفقات عمل الفيديو
عيّن نموذج الفيديو الافتراضي إلى comfy/workflow:
{ agents: { defaults: { videoGenerationModel: { primary: "comfy/workflow", }, }, },}تدعم تدفقات عمل الفيديو في Comfy التحويل من نص إلى فيديو ومن صورة إلى فيديو عبر المخطط المُعدّ.
تدفقات عمل الموسيقى
يسجّل الـ plugin المضمّن مزوّدًا لإنشاء الموسيقى للمخرجات الصوتية أو الموسيقية التي يحددها تدفق العمل، ويُتاح ذلك عبر الأداة المشتركة music_generate. يقبل صورة مرجعية اختيارية (بحد أقصى صورة واحدة):
/tool music_generate prompt="Warm ambient synth loop with soft tape texture"استخدم قسم الإعداد music للإشارة إلى ملف JSON لتدفق العمل الصوتي وNode المخرجات.
التوافق مع الإصدارات السابقة
تظل إعدادات الصور الحالية من المستوى الأعلى (من دون قسم image المتداخل) صالحة:
{ plugins: { entries: { comfy: { config: { workflowPath: "./workflows/flux-api.json", promptNodeId: "6", outputNodeId: "9", }, }, }, },}يتعامل OpenClaw مع هذا الشكل القديم بوصفه إعدادات تدفق عمل الصور. لا تحتاج إلى الترحيل فورًا، لكن يُوصى باستخدام أقسام image وvideo وmusic المتداخلة للإعدادات الجديدة. إذا كنت تستخدم إنشاء الصور فقط، فإن الإعداد المسطح القديم وقسم image المتداخل الجديد متكافئان وظيفيًا.
الاختبارات المباشرة
تتوفر تغطية مباشرة اختيارية للـ plugin المضمّن:
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.tsيتخطى الاختبار المباشر حالات الصور أو الفيديو أو الموسيقى الفردية ما لم يكن قسم سير عمل Comfy المطابق مهيأً.