COMFYCLAW en ComfyUI: Probamos el Agente que Construye y Repara Workflows Solo
El 2 de julio de 2026 se publicó en arXiv un paper con un nombre difícil de ignorar: COMFYCLAW (2607.01709, Zongxia Li, Dawei Liu, Fuxiao Liu y equipo, laboratorio de Lichao Sun). La idea: un agente que trata la construcción de un workflow de ComfyUI como edición de grafo tipado, usa un verificador de visión (VLM) para traducir fallos visuales en reparaciones concretas, y va acumulando una librería de “skills” reutilizables a partir de sus propios aciertos y errores.
No nos quedamos en el resumen del paper. Clonamos el código oficial, lo instalamos contra nuestro ComfyUI real en una RTX 3090, encontramos un bug genuino en el camino, lo diagnosticamos hasta la línea de código exacta, y dejamos que el agente construyera y generara una imagen de verdad — con Claude Code como cerebro, sin API de pago.
🏗️ Workflow generado por COMFYCLAW (el que superó el verificador)
Qué es COMFYCLAW (y qué NO es)
COMFYCLAW no es un modelo de generación de imagen. Es un arnés agéntico que dirige una instalación de ComfyUI sin modificar desde un panel dentro de la propia interfaz (o desde CLI, que es como lo probamos aquí). Tú escribes un prompt, y el agente:
- Construye el grafo del workflow como edición tipada (añade nodos, los conecta, valida que el grafo sea ejecutable).
- Manda la generación a tu ComfyUI real.
- Un verificador VLM mira la imagen resultante y traduce los fallos visuales en críticas por región, con estrategias de reparación concretas.
- Si el resultado no pasa el umbral, repite con las correcciones. Si pasa, destila la trayectoria en una “skill” reutilizable para la próxima vez.
Aviso importante antes de buscarlo tú mismo: el nombre “ComfyClaw” está muy sobrecargado en GitHub. Encontramos al menos 3-4 proyectos sin ninguna relación con el paper usando el mismo nombre — una CLI para inspeccionar workflows, un conjunto de nodos para prototipar estructuras de agentes, un skill de OpenClaw. El repositorio real y verificado de este paper es Moms-Organic-Agent-Lab/comfyclaw — lo confirmamos comprobando que el README cita exactamente a los mismos nueve autores del paper, con enlaces a sus páginas académicas personales.
Instalación real: lo que de verdad hicimos
Requisitos: Python 3.10+, uv, una instalación de ComfyUI con al menos un checkpoint ya cargado, y un backend de agente. Nosotros usamos claude-code (nuestra sesión de Claude Code ya autenticada), sin tocar ANTHROPIC_API_KEY.
git clone https://github.com/Moms-Organic-Agent-Lab/comfyclaw.git
cd comfyclaw
uv sync --extra sync
cp .env.example .env
# En .env:
# COMFYUI_DIR=/ruta/a/tu/ComfyUI
# COMFYCLAW_AGENT_BACKEND=claude-code
uv run comfyclaw install-node --comfyui-dir /ruta/a/tu/ComfyUI
# reiniciar ComfyUI
uv run comfyclaw doctor # comprobación previa
doctor nos confirmó todo en verde: Python, .env, ComfyUI accesible, el plugin ComfyClaw-Sync correctamente enlazado en custom_nodes/, y las 23 skills incluidas cargadas sin error. El único aviso (sin API key configurada) es irrelevante con el backend claude-code.
El bug real: un falso “0.0 GB libres” con GPU libre de verdad
En el primer intento de generación real, con la RTX 3090 mostrando 22.7GB libres según nvidia-smi, COMFYCLAW se negó a generar:
Compute risk: Image generation likely needs about 4 GB free VRAM, but cuda:0 NVIDIA GeForce RTX 3090 : cudaMallocAsync reports 0.0 GB free.
No fue un problema de timing — se repitió exactamente igual en un segundo intento minutos después. Diagnosticamos la causa exacta en harness.py (línea ~878):
free = self._vram_gb(
dev.get("torch_vram_free") # <- prioridad equivocada
or dev.get("vram_free")
or dev.get("vram_total")
or dev.get("torch_vram_total")
)
El chequeo lee primero torch_vram_free, el campo que expone /system_stats de ComfyUI con la memoria libre dentro del pool cacheado de PyTorch. El problema: cuando ComfyUI corre con el backend cudaMallocAsync (cada vez más habitual porque reduce la fragmentación de VRAM — y es justo lo que usa nuestra instalación), ese pool nunca pasa por el allocator normal de PyTorch, así que torch_vram_free se queda permanentemente cerca de cero — en nuestra prueba, 25MB sobre 32MB totales, redondeado a “0.0 GB” — sin importar cuánta VRAM esté realmente libre a nivel de dispositivo (el campo correcto, vram_free, sí mostraba los 22.7GB reales). El operador or de Python nunca llega a mirar el campo correcto porque el primero, aunque inútil, no es cero exacto.
No existe un flag --force para saltarse este aviso en modo CLI. Para completar la prueba, invertimos la prioridad de los dos campos en nuestra copia local (vram_free primero) — un cambio de una línea. Con ese arreglo, la generación pasó sin problema.
Si usas el panel dentro de ComfyUI en lugar de la CLI, este aviso aparece como una pregunta interactiva (“¿seguro que quieres generar?”) que puedes aceptar manualmente — la CLI, en cambio, simplemente se salta la generación en silencio, algo a tener muy en cuenta si lo automatizas sin supervisión.
La prueba real: el agente construye, genera, y su propio verificador encuentra un fallo
Con el bug sorteado, lanzamos:
uv run comfyclaw run --prompt "a red fox sitting in a snowy forest at dawn, photorealistic" --iterations 2
El agente (Claude Sonnet 4.5 vía claude-code) construyó desde cero un pipeline SDXL completo — CheckpointLoaderSimple → CLIPTextEncode (positivo/negativo) → EmptyLatentImage → KSampler → VAEDecode → SaveImage — con un prompt positivo detallado y un negativo sólido, sampler ajustado a 30 pasos, cfg 6.5, dpmpp_2m/karras. Validó el grafo (7 nodos, sin errores) y lo mandó a nuestra ComfyUI real.
Tiempos reales medidos: la primera generación tardó 83.98s (la mayor parte, ~54s, cargando el checkpoint Juggernaut XL desde disco por primera vez); con el modelo ya en memoria, el muestreo puro de 30 pasos a 1024×1024 tardó 8.32 segundos (~4.1 it/s en la RTX 3090).

El verificador VLM (Claude 3.5 Sonnet, con visión) puntuó el resultado con 0.90 sobre 1.0 y pasó las 7 comprobaciones binarias (¿hay un zorro?, ¿es rojo/naranja?, ¿está sentado?, ¿es un bosque?, ¿hay nieve?, ¿la luz sugiere amanecer?, ¿el estilo es fotorrealista?). Como 0.90 superaba el umbral de 0.85, se detuvo en la primera iteración sin gastar la segunda.
Lo interesante no es la puntuación alta — es lo que el verificador encontró a pesar de aprobar. Marcó como [HIGH] anatomía una forma oscura ambigua junto a los cuartos traseros del zorro (“no se lee como una cola tupida coherente, rompe la continuidad anatómica”), con estrategias de reparación concretas (add_inpaint_pass, inject_lora_anatomy, add_controlnet_pose). Mirando la imagen con atención, el crítico tiene razón: hay una masa marrón difusa detrás de las patas traseras que no se integra bien con el resto del cuerpo. También señaló, en severidad más baja, un fondo de troncos demasiado uniforme y patas delanteras algo fusionadas.
Esto es exactamente lo que promete el paper: un verificador que no se limita a un “sí/no” global, sino que apunta dónde está el problema y qué técnica probar para arreglarlo — aunque en nuestra prueba, con solo 1 de 2 iteraciones permitidas gastada, el sistema decidió que 0.90 ya era suficiente y no llegó a aplicar ninguna de esas correcciones.
Las skills: 23 de fábrica, incluida una para Qwen-Image
COMFYCLAW trae 23 skills incluidas siguiendo la especificación Agent Skills (formato SKILL.md con YAML) — entre ellas workflow-builder (la que usó nuestro agente), photorealistic, inpainting, controlnet-control, hires-fix, y una específica para qwen-image-2512, justo el modelo de imagen chino que hemos cubierto en el radar de tendencias recientes de ComfyLab. Con “revelado progresivo” (progressive disclosure), el agente solo ve el nombre y una descripción de cada skill hasta que decide cargarla entera — así el contexto se mantiene manejable incluso con decenas de skills disponibles.
Conclusión: ¿merece la pena probarlo ya?
🏆 Nuestra recomendación
Si ya usas Claude Code y ComfyUI juntos (como en nuestro artículo sobre automatizar ComfyUI con Claude Code), COMFYCLAW es un paso lógico más: en vez de pedirle a Claude que edite un JSON de workflow a mano, le das una herramienta pensada específicamente para eso, con verificación visual automática incluida. Funciona de verdad — lo hemos comprobado con nuestra propia GPU, no con las cifras del paper — pero llega con una instalación que todavía tiene aristas (el bug de VRAM que documentamos aquí bloqueará a cualquiera que use cudaMallocAsync, que no es un caso raro).
Si buscas algo ya pulido para producción, esto no lo es — es código de investigación de hace días. Pero como pieza para experimentar con automatización de workflows, con el respaldo de un paper real y sin coste de API si ya pagas Claude Code, es de lo más interesante que hemos probado en semanas.
Fuentes
- COMFYCLAW: Self-Evolving Skill Harnesses for Image Generation Workflows (arXiv 2607.01709)
- Repositorio oficial: Moms-Organic-Agent-Lab/comfyclaw
Siguientes pasos en ComfyUI
Primeros pasos
Preguntas frecuentes
- ¿COMFYCLAW tiene pesos o modelo propio que descargar?
- No. COMFYCLAW no es un modelo de difusión, es un agente que construye y repara workflows de ComfyUI usando un LLM (o tu suscripción de Claude Code) como cerebro. Necesitas tus propios checkpoints ya instalados en ComfyUI (Juggernaut XL, FLUX, SDXL, lo que sea) — COMFYCLAW los orquesta, no los sustituye.
- ¿Por qué mi generación se salta con un aviso de 'VRAM insuficiente' aunque mi GPU esté libre?
- Es un bug real que encontramos y reproducimos: el chequeo de riesgo de cómputo de COMFYCLAW prioriza el campo torch_vram_free sobre vram_free al leer /system_stats de ComfyUI. Si tu ComfyUI usa el backend cudaMallocAsync (cada vez más común), torch_vram_free se queda permanentemente cerca de cero aunque tengas 20GB libres de verdad, y el aviso salta siempre en la primera generación. Se soluciona invirtiendo la prioridad de esos dos campos en harness.py (línea ~878), o generando una vez manualmente contra la API de ComfyUI antes de lanzar COMFYCLAW.
- ¿Busco 'ComfyClaw' en GitHub y encuentro el proyecto correcto?
- No necesariamente. El nombre está muy sobrecargado: existen al menos 3-4 proyectos sin relación con el mismo nombre (una CLI de terceros, nodos para prototipar agentes, un skill de OpenClaw). El repositorio oficial y verificado de este paper es Moms-Organic-Agent-Lab/comfyclaw en GitHub — confirmamos que el README cita exactamente a los mismos autores del paper de arXiv con enlaces a sus páginas académicas.
- ¿Necesito una API key de Anthropic para probarlo?
- No si ya tienes Claude Code instalado y con sesión iniciada (claude /login). COMFYCLAW soporta un backend agente 'claude-code' que usa tu suscripción de Claude Code directamente, sin pasar por la API de pago. Es justamente el backend que usamos en esta prueba.