لا يخدم الـ Pod إلا ComfyUI + Manager + واجهة لوحة الوكيل. أمّا دماغ الوكيل
(منسّق اللوحة) فيعمل محليًا على جهازك على اشتراكك —
فلا يحرق Pod سحابي ساعات GPU على النموذج اللغوي، ولا يلمس أي مفتاح API أو تسجيل
دخول وكيل الصندوق. راجع الطوبولوجيا.
قالب بنقرة واحدة (أسرع مسار)
تقلع الصورة المبنية مسبقًا جاهزة لتقودها لوحة الوكيل — ComfyUI + لوحة الوكيل + ComfyUI-Manager v2 مخبوزة فيها، بلا إعداد:- انقر Deploy on RunPod واختر وحدة GPU (تعمل RTX 5090 / أي بطاقة Blackwell أو Ada — تشحن الصورة torch cu128).
- أبقِ افتراضيات القالب: منفذ HTTP 3000 مكشوف ووحدة تخزين شبكية مركَّبة عند
/workspace. - انتظر حتى يقلع الـ Pod. تخدم صفحة «ComfyUI is starting…» تتحدّث تلقائيًا حتى يصير جاهزًا (تهيئة ComfyUI نحو 30–60 ثانية).
انشره وتحكّم فيه من لوحة الوكيل (v0.44+)
منذ comfyui-mcp 0.44، لا تحتاج إلى لمس وحدة تحكّم RunPod ولا تشغيل أمر سطر أوامر أصلًا — لدى لوحة الوكيل لوحة تحكّم RunPod تنشر وتتصل وتراقب وتوقف Podًا نيابة عنك، وتُشحن ورقة التحكّم نفسها في تطبيق الجوّال.- اضبط مفتاحك مرة واحدة. في بطاقة مفاتيح API في اللوحة، الصق
RUNPOD_API_KEY. يُخزَّن من جانب الخادم في~/.comfyui-mcp/.env— لا في المتصفح أبدًا. - افتح لوحة تحكّم RunPod من شريحة المضيف في شريط أدوات اللوحة (تقرأ 🟢 محلي · جهازك في البداية).
- انشر أو اتصل. اضغط نشر لـ Pod بنقرة واحدة (يمر عبر رابط نشر القالب ويتراجع عبر أنواع GPU / COMMUNITY→SECURE حين تضيق السعة)، أو اختر Podًا موجودًا بالاسم من القائمة المنسدلة واتصال.
- راقبه حيًّا. تعرض بطاقة الحالة GPU / VRAM / مدة التشغيل / /hr — فلا يبقى مكان تشغيل معالجة غامضًا. يثبّت الوكيل عقدك المخصّصة وملفات LoRA وينزّل نماذجك على الـ Pod، فتحصل على تكافؤ لوحة رسم تام مع جهازك المحلي.
- ارجع وأوقف. يعيد استخدام المحلي توجيه المعالجة إلى جهازك فورًا؛
وإيقاف يغلق الـ Pod. والإيقاف التلقائي عند الخمول
(
RUNPOD_IDLE_STOP_MINUTES، الافتراضي 15؛ لا يُعدّ إلا وأنت تعالج فعلًا على الـ Pod) هو حاجز التكلفة إن نسيت.
/workspace)
بعد فترة سماح (45 دقيقة بعد الإقلاع بلا نبض، ثم 20 دقيقة بين النبضات؛
RUNPOD_DEADMAN_BOOT_GRACE_S / RUNPOD_DEADMAN_BEAT_GRACE_S). و«الرعاية»
تنجو من استخدام المحلي وإلغاء المراقبة — فهذان يغيّران فقط ما تعرضه
الواجهة؛ ولا يطلق المراقب إلا حين يغيب comfyui-mcp نفسه (أو يخرج الـ Pod).
ويوقف المراقب الـ Pod بـ مفتاح API مقيَّد بالـ Pod تحقنه RunPod تلقائيًا في
كل Pod — فلا يغادر مفتاح حسابك الواسع جهازك أبدًا، ولا يوجد شيء من جهة
الاعتمادات للانسحاب منه. اتركه غير مسلَّح بـ deadman:false على
runpod / action: "create" (أو RUNPOD_DEADMAN=0)، أو DEADMAN_DISABLE=1
كمتغيّر بيئة للـ Pod. ووحدات الـ Pod المنشورة من الوحدة لا تحمل رمز النبض،
وتنشر القوالب المخصّصة (RUNPOD_TEMPLATE_ID) تعطّله افتراضيًا — مرّر
deadman:true فقط إن كانت تلك الصورة تشحن مراقبنا.
جديد على استئجار وحدات GPU لـ ComfyUI؟ تمشي المدوّنة التدفّق كله من طرف إلى طرف:
شغّل ComfyUI على وحدة GPU سحابية مستأجرة.
الاتصال من جهازك
متى أقلع الـ Pod، خذ رابط وكيله العام (RunPod ← الـ Pod لديك ← نقطة نهاية HTTP :3000، مثلhttps://<pod-id>-3000.proxy.runpod.net) وشغّل أمرًا واحدًا
على حاسوبك المحمول:
connect تلقائيًا نفق wss:// مشفَّرًا
آمنًا (عبر Cloudflare) إلى جسر الوكيل على جهازك ويسلّم لوحة الـ Pod ذلك
الرابط نيابة عنك — فتصل صفحة HTTPS الخاصة بالـ Pod إلى الوكيل بلا موجه متصفح،
ولا شيء لنسخه، في أي متصفح. ولـ ComfyUI محلي يستخدم جسر ws://127.0.0.1:9180
العادي على العنوان المحلي. وفي الحالين يعمل الوكيل — وتسجيل دخول Claude/ChatGPT
لديك — على جهازك فقط؛ ولا يُثبَّت شيء على الـ Pod.
للإنهاء، وconnect ما يزال يعمل على جهازك، افتح ComfyUI الخاص بالـ Pod في
متصفحك، وافتح الشريط الجانبي لوحة الوكيل، وانقر اتصال.
ثم قُد المخطط باللغة الطبيعية.
لماذا نفق؟ تُخدم صفحة الـ Pod عبر
https://، وتحظر المتصفحات صفحة آمنة من
فتح مقبس ws:// غير آمن إلى جهازك (محتوى مختلط / وصول الشبكة الخاصة). يمنح
النفق الجسر رابط wss:// صالحًا لـ TLS — مقيَّدًا برمز عشوائي لكل جلسة — فيعمل
في كل مكان بلا موجه.إن جلس الـ Pod خلف مصادقة، اضبط
COMFYUI_AUTH_TOKEN (إضافةً إلى
COMFYUI_AUTH_HEADER / COMFYUI_AUTH_SCHEME الاختياريين) على أمر connect
المحلي. ولـ Pod أمامه Cloudflare Access، أنشئ رمز خدمة Access واضبط
CF_ACCESS_CLIENT_ID + CF_ACCESS_CLIENT_SECRET — يركب كلاهما كل طلب ComfyUI
(HTTP + WebSocket مراقب قائمة الانتظار)، فيمرّ الموصّل البوابة بينما تبقى صفحة
تسجيل الدخول البشرية للمتصفحات.أبقِ كل شيء على جهازك (بلا Cloudflare)
تفضّل ألا توجّه الجسر عبر Cloudflare؟ صل إلى الـ Pod عبر تمرير منفذ SSH خاص بك حتى تكون الصفحة أصل عنوان محلي (ws:// العادي يعمل، بلا نفق):
--insecure-bridge (ترتّب أنت عندها مسارك
الخاص حتى تصل صفحة الـ Pod إلى ws://127.0.0.1:9180).
تريد بديلًا ثابتًا ذاتي الاستضافة لنفق Cloudflare السريع الافتراضي — نطاقك،
بلا اسم مضيف عابر، وملكية كاملة لتلك القفزة — بدل أي مما سبق؟ راجع
المُرحِّل ذاتي الاستضافة.
الطوبولوجيا: أين يعمل الوكيل
ما الذي يبقى (وما الذي لا يبقى)
الصورة محسَّنة لـ إيقاف/بدء سريع. البرمجيات الثقيلة — ComfyUI، وبيئة venv، وManager v2 — مخبوزة في الصورة غير القابلة للتغيير وتُشغَّل من/opt/ComfyUI،
بينما يعيش custom_nodes على وحدة تخزين /workspace (برابط رمزي) فتنجو
تثبيتاتك. وإعادة تشغيل دافئة لا تفعل تثبيتًا/مزامنة/بذرًا كاملًا وتعيد إطلاق
ComfyUI فقط.
تنجو العقد المخصّصة المثبَّتة وقت التشغيل من إعادة التشغيل.
custom_nodes
مربوط رمزيًا بـ /workspace/custom_nodes؛ وفي كل إقلاع تُبذَر/تُحدَّث عقد الصورة
المخبوزة (لوحة الوكيل + المدمجة) فيه (فترسل ترقية صورة لوحة حديثة بينما تُحفَظ
عقدك)، وتُعاد تثبيت اعتماديات Python لكل عقدة في بيئة venv من ذاكرة pip مؤقّتة
دائمة على وحدة التخزين — سريعة بعد المرة الأولى. وتنجو النماذج أيضًا. لخبز عقدة
حتى لا تحتاج عملًا عند الإقلاع، أضِفها إلى Dockerfile وأعد بناء الصورة (أدناه).ابنِ صورتك وانشرها
قالب النقرة الواحدة هو الصورة المبنية مسبقًا. وصورة نحيفة مبنية مسبقًا — ComfyUI + لوحة الوكيل + Manager نفسها، لكن بلا إضافات المتبرّع الاختيارية (runpod-uploader/croc/app-manager) ولا ملف Checkpoint فحص SDXL المخبوز،
تُبنى باستمرار في CI — عامة أيضًا على
ghcr.io/artokun/comfyui-mcp-runpod:cu128-lean
إن أردت فقط توجيه قالب RunPod إلى شيء دون بناء أي شيء بنفسك.
لتخصيصها — تثبيت إصدارات، وخبز عقد مخصّصة إضافية، وتغيير تخطيط النماذج — ابنِ
وادفع صورتك من
docker/runpod/:
/workspace.
وdocker/runpod/README.md
هو مرجع البناء الكامل — Dockerfile متعدّد المراحل، ورايات إطلاق ComfyUI الدقيقة،
وتعيين وحدة التخزين في extra_model_paths.yaml، وبوابة التثبيت البعيد في
Manager، ومتغيّرات البيئة، ومفاضلات الحجم/التثبيت.
أهداف سحابية أخرى
تدفّقconnect ليس خاصًا بـ RunPod — يعمل ضد أي ComfyUI قابل للوصول يخدم
لوحة الوكيل (مضيف سحابي آخر، أو VPS، أو جهاز على شبكتك المحلية). وجّه connect
إلى رابطه وقلّب مفتاح المنسّق الخارجي: