Skip to main content
وكيل اللوحة الجانبية محايد تجاه المزوّد. اختر Claude أو ChatGPT أو Gemini أو Ollama (محلي) فيعمل الوكيل المطابق في الخلفية — الاشتراكات بلا حاجة إلى مفتاح API، والنماذج المحلية بلا حاجة إلى حساب أصلًا. وتتحدث خلفية Ollama أيضًا أي نقطة نهاية متوافقة مع OpenAI (OpenRouter أو DeepSeek أو GLM أو MiMo أو vLLM أو LM Studio)، فيغطّي «أحضر نموذجك» كل شيء من نموذج 4B مجاني على وحدة GPU لديك إلى الطليعة. ويشارك كل المزوّدين أدوات لوحة الرسم الحيّة نفسها، ومعرفة النماذج نفسها، وتحميلات سير العمل دفعة واحدة نفسها، وحاجز التكلفة نفسه. وتقيّم حلبة النماذج اللغوية أيًا منها على مهام ComfyUI حقيقية.

اختر مزوّدًا، لا منفذًا

تعرض اللوحة أداة اختيار خلفية — شرائح Claude / ChatGPT / Gemini / Antigravity / Grok / Kimi / GLM / Ollama / LM Studio / llama.cpp / OpenRouter / نقطة نهاية مخصّصة (تظهر المزوّدون التجريبيون مثل Copilot خلف مفتاح التجريبي). والنقر على واحدة يتصل بذلك المزوّد على المنسّق المشترك الواحد (منفذ جسر واحد يخدم كل المزوّدين؛ ويختار كل تبويب لوحة مزوّده أثناء المصافحة). ويعيش عنوان الجسر تحت خيارات متقدّمة للمنسّقين الذين يديرهم المستخدم. تبديل المزوّدين يبدأ محادثة جديدة — لا تُشارَك المحادثات عبر المزوّدين — وتنشر اللوحة ملاحظة نظام تقول ذلك. ويتبع العنصر النائب في مربع الكتابة الخلفية النشطة («اسأل Claude…» / «اسأل Ollama…»).

سجّل الدخول (مرة لكل مزوّد — أو لا تسجّل أصلًا)

  • Claudeclaude (أو claude setup-token) — OAuth على claude.ai (اشتراك).
  • ChatGPT (Codex)codex login — تسجيل دخول ChatGPT (اشتراك)؛ يعمل عبر app-server الخاص بـ Codex.
  • ChatGPT (OAuth مباشر) — لا خطوة إضافية إن كنت قد شغّلت codex login يومًا: تعيد خلفية chatgpt استخدام ~/.codex/auth.json وتتحدّث إلى ChatGPT مباشرة (بلا عملية Codex). إن قال الإقرار إن ملف المصادقة ناقص، شغّل codex login مرة واحدة.
  • Geminigemini — تسجيل دخول Google. لاحظ أن تسجيل الدخول الفردي المجاني إلى Google أُحيل إلى التقاعد في 2026-06-18: تحتاج خلفية Gemini CLI الآن إلى GEMINI_API_KEY أو حساب مؤسسي/Code Assist. والمشتركون الأفراد: استخدم Antigravity أدناه.
  • Antigravity (اشتراك Google) — ثبّت واجهة Antigravity الرسمية من antigravity.google، وشغّل agy مرة واحدة وأكمل تسجيل الدخول بحساب Google (مستويات AI Pro/Ultra والمجانية). تقود الخلفية agy -p لكل دور مع استمرارية محادثة --continue، وتقرأ كتالوج النماذج الحيّ من agy models، وتوصل أدوات ComfyUI + MCP اللوحة عبر ملف .agents/mcp_config.json في مساحة العمل آمن الدمج. قدرات مخفَّضة بالتصميم (لا تدفّق أحداث مقروء آليًا موثَّق): يتدفّق نص الإجابة النهائية، لكن لا تقدّم لكل أداة ولا إدخال صور. وتستخدم استمرارية المحادثة agy --continue (آخر محادثة للحساب)، فاشغّل تبويب antigravity واحدًا في كل مرة — فتبويب ثانٍ، أو جلسة agy تفاعلية في طرفية، يستطيع سرقة الخيط. يثبّت COMFYUI_MCP_ANTIGRAVITY_MODEL نموذجًا، ويشير COMFYUI_MCP_ANTIGRAVITY_PATH إلى تثبيت غير قياسي.
  • Grok — ثبّت واجهة Grok (xAI / Grok Build) وشغّل grok مرة واحدة لتسجيل الدخول؛ تقوده الخلفية في وضع ACP. وتعرض اللوحة أيضًا صف تسجيل دخول OAuth داخل اللوحة حين لا يكون Grok جاهزًا.
  • Kimi (موصى به) — ثبّت واجهة Kimi Code وشغّل kimi login (تدفّق رمز جهاز)؛ وتعيد الخلفية استخدام ذلك الدخول من ~/.kimi-code/credentials/kimi-code.json (ما يزال المسار القديم ~/.kimi يُقرأ احتياطيًا). يستخدم هذا اشتراك Kimi Code لديك وهو الطريقة المفضّلة لتشغيل Kimi — أرخص وأعلى حدًا من مفتاح Moonshot بالرمز أدناه. اضبط KIMI_API_KEY بدلًا من ذلك فقط للاستخدام في CI / بلا واجهة، أو KIMI_CODE_HOME للإشارة إلى دليل اعتمادات غير افتراضي (ما يزال KIMI_SHARE_DIR محترمًا لمن ضبط الاسم الأقدم). ويُعرَض تسجيل دخول OAuth داخل اللوحة أيضًا.
  • GLM — اضبط ZAI_API_KEY (Z.AI Coding Plan؛ يُقبل أيضًا GLM_API_KEY / ZHIPUAI_API_KEY). بلا واجهة سطر أوامر.
  • Kimi K3 (Moonshot)البديل بالدفع لكل رمز حين لا يكون لديك اشتراك Kimi Code (فضّل مسار Kimi أعلاه إن كان لديك). اضبط MOONSHOT_API_KEY من platform.kimi.ai. بلا واجهة سطر أوامر. هذا مفتاح منصة Moonshot (النموذج الافتراضي kimi-k3، والأساس https://api.moonshot.ai/v1) — متميّز عن مزوّد Kimi أعلاه، الذي هو اشتراك برمجة Kimi Code. تجاوز النموذج بـ COMFYUI_MCP_MOONSHOT_MODEL والأساس بـ COMFYUI_MCP_MOONSHOT_BASE_URL.
  • MiniMax — اضبط MINIMAX_API_KEY من platform.minimax.io. بلا واجهة سطر أوامر. النموذج الافتراضي MiniMax-M3 والأساس الافتراضي نقطة النهاية العالمية https://api.minimax.io/v1 (متوافق مع OpenAI، مصادقة Bearer عادية). لمنطقة الصين، اضبط COMFYUI_MCP_MINIMAX_BASE_URL=https://api.minimaxi.com/v1. تجاوز النموذج بـ COMFYUI_MCP_MINIMAX_MODEL.
  • Copilot (تجريبي) — سجّل الدخول من صف المزوّد التجريبي في اللوحة. متوقّف افتراضيًا؛ فعّل الخلفيات التجريبية في الإعدادات أولًا.
  • Ollama (محلي) — بلا تسجيل دخول. ثبّت Ollama واسحب نموذجًا يدعم استدعاء الأدوات (ollama pull gemma4:e4b). ولنموذج مستضاف بدلًا من ذلك، اضبط COMFYUI_MCP_OLLAMA_API=openai، وCOMFYUI_MCP_OLLAMA_BASE_URL (مثل https://openrouter.ai/api/v1)، ومفتاح API (COMFYUI_MCP_OLLAMA_API_KEY / OPENROUTER_API_KEY).
  • نقطة النهاية المخصّصة — بلا تدفّق تسجيل دخول. وجّهها إلى أي /v1 متوافق مع OpenAI (vLLM أو DeepSeek أو Together أو Azure أو llama-server بعيد) في الإعدادات ← نقطة النهاية المخصّصة؛ وأضف مفتاح API هناك إن كان الخادم يطلبه (إدخال مخفي، يُخزَّن 0600 لدى المنسّق). راجع النماذج المحلية ← نقطة النهاية المخصّصة.

الجاهزية والتهيئة عند الاتصال

تتراجع كل شريحة مزوّد بصدق حين لا تكون جاهزة: يخبرك إقرار الاتصال بالخطوة الناقصة بالضبط («اضبط ZAI_API_KEY…»، «شغّل codex login…»، «سجّل الدخول من الصف التجريبي…») بدل الفشل عند أول رسالة منك — ومزوّد تظهر اعتماداته لاحقًا ينقلب إلى جاهز عند الاتصال التالي بلا إعادة تشغيل. تكتشف اللوحة جاهزية كل مزوّد عند الاتصال — واجهة سطر أوامر في PATH إضافةً إلى تسجيل دخول على القرص لمزوّدي الاشتراك، وملف تنفيذي حاضر لـ Ollama (تتراجع خدمة متوقّفة بلطف عند الاتصال). ولا تحتاج إلى تخمين أي مزوّد معدّ:
  • تظهر بطاقة تهيئة فقط حين لا يكون أي مزوّد جاهزًا، بخطوة الإعداد لمرة واحدة لكل مزوّد (ولـ Ollama ذلك تثبيت + سحب نموذج، لا تسجيل دخول).
  • إن لم يكن اختيارك المحفوظ صالحًا للاستخدام، فإن اللوحة تنتقل تلقائيًا إلى مزوّد جاهز (ويُستعاد تفضيلك المحفوظ متى أعددته).
  • يصير صف مزوّد غير جاهز إجراء «إعداد» يبذر موجّه إعداد للوكيل العامل.

كيف يُقاد كل مزوّد

يعتمد المنسّق على منفذ AgentBackend محايد تجاه المزوّد (حقن اعتماديات). وكل مزوّد محوّل: تعيش تعريفات أدوات panel_* في قائمة مشتركة واحدة، مسجَّلة على كل مسار، فيكون سطح لوحة الرسم الحيّة (بما فيه بوابة تأكيد العمليات المدمِّرة لـ panel_clear / panel_restart_comfyui) متطابقًا عبر المزوّدين. والتكافؤ تلقائي — لا يعيد أي مسار تنفيذ أداة. وتلفّ خلفية Ollama/أي-نموذج-لغوي إضافةً سطحي الأدوات خلف ست أدوات موجّه حتى لا تغرق النماذج الصغيرة في المخططات — راجع النماذج المحلية والوكلاء الآخرون.

مصفوفة القدرات

يسمح واصف قدرة لكل خلفية للوحة بـ التراجع بلطف عن الميزات التي لا يستطيع مزوّد فعلها:

إدخال الصوت — أي الخلفيات، بصراحة

يستطيع الوكيل قيادة أدوات الصوت في ComfyUI على كل خلفية. أمّا سماع ملف صوتي فأضيق، والجدول أعلاه محافظ عمدًا لأن مرفقًا يُسقَط بصمت أسوأ من مرفوض:
  • Ollama (خلفية ollama، /api/chat الأصلي) — مدعوم، مفحوص القدرة، ومتحقَّق من طرف إلى طرف. يركب الصوت مصفوفة images[]، وهي حامل Ollama نفسه للصوت لا حيلة. تأكَّد حيًّا ضد Ollama محلي مع gemma4:e2b، الذي فرّغ WAV حقيقيًا.
    • لكل نموذج، لا لكل مزوّد. قبل إرسال أي شيء، تسأل الخلفية POST /api/show عمّا إذا كان هذا النموذج يبلّغ عن قدرة audio. إن لم يفعل، يُرفَض المرفق بالاسم، وتُقتبَس قائمة القدرات المبلَّغ عنها لك، وتُخبَر أي النماذج تستطيع السماع (ollama pull gemma4:e2b / gemma4:e4b / nemotron3:33b). لاحظ أن GET /api/tags يُرجع أيضًا مصفوفة capabilities وليست الإجابة نفسها — بلّغ النموذج نفسه عن لا صوت هناك وصوت من /api/show — لذا يُستشار /api/show فقط.
    • تُعاد فحص القدرة في كل دور يحمل صوتًا، لأن وسم Ollama قابل للتغيير: يستطيع ollama pull استبدال الأوزان تحت الاسم نفسه، وقد يعيش حكم مخزَّن أطول من النموذج الذي وصفه.
  • LM Studio / llama.cpp / OpenRouter / GLM / Kimi / Moonshot / MiniMax / Copilot / نقاط النهاية المخصّصة المتوافقة مع OpenAI — محاوَل، غير مفحوص القدرة. تتحدّث كلها /v1/chat/completions، الذي لا نقطة نهاية قدرة ليسألها، فيُرسل الصوت كجزء محتوى input_audio وتُخبَر، في ذلك الدور، أن التسليم غير مؤكَّد: «لا أستطيع تأكيد أن النموذج يستقبلها فعلًا — إن لم يعكس الرد ما في الملف، فإنه لم يسمعه.» والرفض بدل ذلك سيحرم الصوت عن كل نقطة نهاية ليس لديها واجهة قدرة فحسب؛ وحارس لا يستطيع العمل ليس حكمًا. وشُكِل input_audio نفسه مقابل نقطة نهاية Ollama المتوافقة مع OpenAI؛ وما إذا كان مضيف طرف ثالث معيّن يحترمه ليس شيئًا نستطيع فحصه، ولا ندّعي ذلك.
  • Claude، وChatGPT (Codex)، وواجهة Codex، وGemini، وGrok، وAntigravity، وpi — لا إدخال صوت في هذا البناء. يُرفَض إرفاق الصوت قبل بناء الدور، وتُخبَر أنت والنموذج، بتسمية المزوّد وما سيعمل بدلًا من ذلك. على Gemini/Grok هذا حذف متعمَّد لا فجوة بروتوكول: يعرّف ACP كتلة محتوى audio، لكنه يتطلّب أن يعلن الوكيل قدرة موجّه audio أولًا، ولم يُرَ أي من الواجهتين يفعل ذلك. ومسار إرسال لا يمكن ممارسته أبدًا، نمط فشله مرفق لا يُخبَر المستخدم أنه لم يصل، أسوأ من رفض صادق — لذا لا يُشحن.
مفتاح محجوب عن البكسلات: يحجب الصور ولا يحجب الصوت. يصل إنفاذ محجوب إلى أدوات الوكيل الأصلية أيضًا، لا سطح comfyui MCP فحسب: تعمل خلفية Claude المدمجة ببوابة PreToolUse ترفض Read/WebFetch الخاصتين بها على محتوى الصور (ملفات نقطية بالامتداد وببايتات السحر، وملفات PDF، ومخرجات الدفاتر، وروابط ComfyUI /view) متى كان محجوب مفعَّلًا — تُقرأ حيًّا لكل استدعاء، فيربط تبديل أثناء الجلسة استدعاء الأداة التالي مباشرة. ومسارات API/المحلي (عائلة Ollama، وGLM، وKimi، ونقاط النهاية المخصّصة) تحمل سطح أدواتنا فقط، فيغطّي تنظيف MCP إياها بالكامل. أمّا مسارات واجهات سطر الأوامر (Codex وGemini وGrok وAntigravity وpi وCopilot) فتشغّل ثنائيات وكيلها الخاصة التي لا نستطيع ربط أدوات ملفاتها المدمجة — وتفعيل محجوب هناك ينشر تحذيرًا ظاهرًا يقول ذلك بالضبط، بدل الإيحاء بضمان لا نستطيع حفظه.

كيف يصل ملف صوتي إلى دور

يقبل المنسّق الصوت على إطار message في اللوحة بطريقتين:
يوجد الشكل الثاني لأن بناء لوحة لا يعرف إلا عن images كان سيسلّم ملفًا صوتيًا وإلا إلى جزء محتوى رؤية. وأي شيء بامتداد صوتي يُنقَل إلى مسار الصوت تلقائيًا — بما فيها الصيغ التي لا نستطيع ترميزها (.wma، .mid، .aiff)، فتحصل على «حوّله إلى واحد من…» بدل خطأ صورة. وإرسال الملف نفسه في كلي المصفوفتين (كما يفعل المثال أعلاه) آمن: يُعرَّف مرجع باسم الملف + المجلد الفرعي + النوع، فيُسلَّم مرة ويُعدّ مرة مقابل حد مرفقين لكل دور. ولا يُخطَأ على أنه ملف ثانٍ ثم يُرفَض لأنه لا يتّسع.
يعيش تحكّم مربع الكتابة لاختيار ملف صوتي في اللوحة (comfyui-mcp-panel)، وهي مستودع منفصل — وذلك الجزء ليس في هذا الإصدار. حتى يهبط، العقد أعلاه هو ما يرسله عميل، ويُمارَس المسار من طرف إلى طرف من جانب المنسّق.
مسار Ollama الأصلي أعلاه وحده متحقَّق من طرف إلى طرف، وهو الوحيد حيث يُثبَت «يستطيع هذا النموذج السماع» لا يُفترَض. ومسار المتوافق مع OpenAI محاولة صادقة بتحفّظ صادق؛ وكل شيء آخر في هذا القسم يصف رفضًا، لا قدرة. استرجاع المحادثة (تفرع الدردشة رجوعًا إلى دور سابق) لـ Claude فقط؛ أمّا استرجاع الشيفرة/المخطط (/revert، وضغط Esc مرتين، ولقطات لكل دور) فيعمل على كل خلفية لأنه يعيش في المنسّق، لا المزوّد.

مستوى الجهد عبر تبديل المزوّد

أداة اختيار الجهد/النموذج لكل مزوّد. ينجو جهد مختار من تبديل مزوّد بالتعيين إلى أقرب مستوى صالح للخلفية الهدف (تفعل اللوحة وخلفيات المنسّق التعيين نفسه):
  • Claude: low · medium · high · xhigh · max
  • ChatGPT (Codex): none · minimal · low · medium · high · xhigh · max · ultra (max / ultra على نماذج فئة GPT-5.6)
  • Gemini / Ollama: لا مقياس جهد يواجه المستخدم — تُخفى أداة الاختيار.

تكافؤ المعرفة والتكلفة

لأن Claude وحده يستطيع تحميل مهارات أصلية، تُنشَر الخبرة المرفقة كأداة MCP واحدة يستطيع أي خلفية استدعاءها — list_packs، التي تغطّي إجراءاتها المهارات (skill_list، skill_read)، وحزم التثبيت (list، read_workflow) وقوالب الخادم (list_templates) — إضافةً إلى حاجز GPU المحلي مقابل API المدفوع (action: "check_runtime") وpanel_load_workflow دفعة واحدة. راجع المهارات والحزم وتكلفة التشغيل.

اطّلع أيضًا