Files

8.5 KiB

ComfyUI-Doctor

繁中 | 简中 | 日本語 | 한국어 | Deutsch | Français | Italiano | Español | English |

ComfyUI Doctor

ComfyUI-Doctor es un asistente de diagnóstico y depuración en tiempo real para ComfyUI. Captura errores en runtime, identifica el contexto de node más probable, muestra sugerencias locales accionables y puede usar opcionalmente un workflow de chat LLM para una solución de problemas más profunda.

Últimas actualizaciones

Las últimas actualizaciones se mantienen en el README en inglés. Consulta Latest Updates.

Funciones principales

  • Captura en tiempo real de la salida console/error de ComfyUI desde el inicio.
  • Sugerencias integradas desde 58 patrones de error basados en JSON, incluidos 22 core patterns y 36 community-extension patterns.
  • Extracción validada del contexto de node para errores recientes de ejecución de workflow cuando ComfyUI proporciona suficientes datos de eventos.
  • Los validation errors anidados elegibles pueden mostrarse en el subgraph externo usando datos graph públicos, conservando la información de origen.
  • Los model asset diagnostics usan preferentemente el live model registry de ComfyUI y analizan subgraphs anidados y extensiones personalizadas con límites definidos.
  • Las rutas de modelos se protegen con real-path containment; los valores Authorization y X-API-Key siempre se ocultan.
  • Los Doctor settings desactivan la host setting-change telemetry; Desktop runtime identity y private state storage source se determinan por separado.
  • Sidebar Doctor con pestañas Chat, Statistics y Settings.
  • Análisis LLM opcional mediante OpenAI-compatible services, Anthropic, Gemini, xAI, OpenRouter, Ollama y LMStudio, con manejo unificado de provider request/response.
  • Privacy controls para solicitudes LLM salientes, incluidos modos de sanitization para rutas, claves, correos e IP.
  • Credential store opcional del lado del servidor con admin guarding y soporte encryption-at-rest.
  • Diagnostics locales, statistics, plugin trust report, telemetry controls y herramientas community feedback preview/submit.
  • JSON error envelopes consistentes para fallos de la API Doctor.
  • Soporte completo de UI y sugerencias en inglés, chino tradicional, chino simplificado, japonés, coreano, alemán, francés, italiano y español.
  • Se conservan los ID numéricos y las cadenas opacas de los nodos, incluidos los dos puntos y caracteres especiales. Locate y las correcciones permitidas resuelven el destino exacto; se rechazan las correcciones de destinos ambiguos.
  • Se reconocen las entradas opcionales de los nodos Switch/Branch del núcleo y se mantienen los diagnósticos de entradas obligatorias ausentes y enlaces rotos.

Capturas de pantalla

Doctor chat interface
Doctor sidebar

Instalación

ComfyUI-Manager

  1. Abre ComfyUI y haz clic en Manager.
  2. Selecciona Install Custom Nodes.
  3. Busca ComfyUI-Doctor.
  4. Instala y reinicia ComfyUI.

Instalación manual

cd ComfyUI/custom_nodes/
git clone https://github.com/rookiestar28/ComfyUI-Doctor.git

Reinicia ComfyUI después de clonar. Doctor debería imprimir sus diagnostics de inicio y registrar la entrada de sidebar Doctor.

Uso básico

Diagnóstico automático

Después de la instalación, Doctor registra pasivamente la salida runtime de ComfyUI, detecta tracebacks, compara patrones de error conocidos y muestra el diagnóstico más reciente en la sidebar y en el panel de informe derecho opcional. Cuando se usa el análisis LLM opcional, Doctor construye el prompt context desde la misma pipeline estructurada que maneja sanitization, node context, execution logs, workflow pruning e información del sistema.

Sidebar Doctor

Abre Doctor en la sidebar izquierda de ComfyUI:

  • Chat: revisa el contexto del error más reciente y haz preguntas de depuración de seguimiento.
  • Statistics: inspecciona tendencias recientes de errores, diagnostics, trust/health information, telemetry controls y feedback tools.
  • Settings: elige idioma, LLM provider, base URL, model, privacy mode, comportamiento auto-open y credential storage opcional del lado del servidor. La base URL debe ser un destino LLM aprobado en el servidor de ComfyUI: los providers oficiales integrados, Ollama/LM Studio en local o las URL que el operador del servidor incluya en DOCTOR_LLM_ALLOWED_BASE_URLS (consulta Configuration and Security). Las claves guardadas en el servidor solo se envían a su destino correspondiente.

Smart Debug Node

Haz clic derecho en el canvas, agrega Smart Debug Node y colócalo inline para inspeccionar los datos que pasan sin cambiar la salida del workflow.

Configuración LLM opcional

Los cloud providers requieren un credential proporcionado mediante session-only UI field, variables de entorno o el server store opcional protegido por admin. Providers locales como Ollama y LMStudio pueden ejecutarse sin cloud credential. Doctor normaliza los formatos provider-specific request/response para OpenAI-compatible APIs, Anthropic y Ollama, de modo que chat, single-shot analysis, model listing y connectivity checks compartan el mismo comportamiento backend.

Valores recomendados:

  • Usa Privacy Mode: Basic o Strict para cloud providers.
  • Usa variables de entorno para entornos compartidos o similares a producción.
  • Configura DOCTOR_ADMIN_TOKEN y DOCTOR_REQUIRE_ADMIN_TOKEN=1 en servidores compartidos.
  • Mantén el local-only loopback convenience mode solo para uso desktop de un único usuario.

Documentación

  • User Guide: UI walkthrough, diagnostics, privacy modes, LLM setup y feedback flow.
  • Architecture: host startup, backend/frontend boundaries, data flows, security/storage boundaries y test lanes.
  • Configuration and Security: environment variables, admin guard behavior, credential storage, outbound safety, telemetry y CSP notes.
  • API Reference: endpoints públicos de Doctor y debugger.
  • OpenAPI Contract: machine-readable API contract.
  • Validation Guide: comandos full-gate locales y lanes opcionales de focused, integration, stress, compatibility, coverage y audit.
  • Security Audit: quarterly audit cadence, report template, manual checks, optional external scanners y evidence handling.
  • Plugin Guide: community plugin trust model y plugin authoring notes.
  • Plugin Migration: migration tooling para plugin manifests y allowlists.
  • Outbound Safety: static checker y outbound request safety rules.
  • Contributing: setup, development workflow, validation expectations y PR readiness.

Patrones de error soportados

Los patrones se almacenan como archivos JSON en patterns/ y pueden actualizarse sin cambios de código.

Pack Count
Core builtin patterns 22
Community extension patterns 36
Total 58

Los community packs cubren actualmente modos de fallo comunes de ControlNet, LoRA, VAE, AnimateDiff, IPAdapter, FaceRestore, checkpoint, sampler, scheduler y CLIP.

Validación

Para validación local CI-parity, usa el full-test script del proyecto:

powershell -File scripts/run_full_tests_windows.ps1
bash scripts/run_full_tests_linux.sh

El full gate cubre supply-chain checks, secrets detection, pre-commit hooks, host-like startup validation, backend unit tests y frontend Playwright E2E tests. Consulta la Validation Guide para comandos staged explícitos y lanes opcionales.

Requisitos

  • Entorno ComfyUI custom-node.
  • Python 3.10 o más reciente.
  • Node.js >=18 <26 solo para frontend E2E validation.
  • No se requiere runtime Python package dependency adicional más allá del bundled environment de ComfyUI y la Python standard library.

Licencia

MIT License

Contribuir

Las contribuciones de patrones y documentación son bienvenidas. Para cambios de código, ejecuta el full validation gate antes de abrir una pull request y evita commitear estado local generado, logs, credentials o archivos internos de planning.