Skip to main content

Especificaciones

El archivo pyproject.toml contiene dos secciones principales para los nodos personalizados de ComfyUI: [project] y [tool.comfy]. A continuación encontrarás las especificaciones de cada sección.

Sección [project]

name (requerido)

El id del nodo identifica de forma única el nodo personalizado y se usará en las URL del registro. Los usuarios pueden instalar el nodo haciendo referencia a este nombre:
Requisitos:
  • Debe tener menos de 100 caracteres
  • Solo puede contener caracteres alfanuméricos, guiones, guiones bajos y puntos
  • No puede tener caracteres especiales consecutivos
  • No puede empezar por un número ni por un carácter especial
  • La comparación no distingue entre mayúsculas y minúsculas
Prácticas recomendadas:
  • Usa un nombre corto y descriptivo
  • No incluyas “ComfyUI” en el nombre
  • Haz que sea fácil de recordar y de escribir
Ejemplos:
Consulta la documentación oficial de Python para obtener más detalles.

version (requerido)

Usa el versionado semántico con un número de versión de tres dígitos X.Y.Z:
  • X (MAJOR): cambios que rompen la compatibilidad
  • Y (MINOR): nuevas funcionalidades (compatibles hacia atrás)
  • Z (PATCH): correcciones de errores
Ejemplos:

license (opcional)

Especifica la licencia de tu nodo personalizado. Se puede indicar de dos formas:
  1. Referencia a un archivo:
  1. Nombre de la licencia:
Licencias comunes: MIT, GPL, Apache

description (recomendado)

Una descripción breve de lo que hace tu nodo personalizado.

repository (requerido)

Enlaces a recursos relacionados:

urls (recomendado)

Enlaces a recursos relacionados:

requires-python (recomendado)

Especifica las versiones de Python que admite tu nodo:

Compatibilidad de versión del frontend (opcional)

Si tu nodo tiene requisitos específicos sobre qué versiones del frontend de ComfyUI admite, puedes indicarlo con la dependencia comfyui-frontend-package. Este paquete se publica en PyPI. Por ejemplo, usa este campo cuando:
  • Tu nodo personalizado usa API del frontend introducidas en una versión concreta
  • Has identificado incompatibilidades entre tu nodo y determinadas versiones del frontend
  • Tu nodo requiere funciones de interfaz específicas que solo están disponibles en versiones más recientes del frontend

classifiers (recomendado)

Usa los classifiers para especificar la compatibilidad con el sistema operativo y con los aceleradores de GPU. Esta información ayuda a los usuarios a encontrar el nodo adecuado para su sistema.

Sección [tool.comfy]

PublisherId (requerido)

Tu identificador único de editor, que normalmente coincide con tu nombre de usuario de GitHub. Ejemplos:

DisplayName (opcional)

Un nombre fácil de reconocer para tu nodo personalizado.

Icon (opcional)

URL del icono de tu nodo personalizado que se mostrará en ComfyUI Registry y ComfyUI-Manager. Requisitos:
  • Tipos de archivo: SVG, PNG, JPG o GIF
  • Resolución máxima: 400px × 400px
  • La relación de aspecto debe ser cuadrada
URL de una imagen de banner más grande que se mostrará en ComfyUI Registry y ComfyUI-Manager. Requisitos:
  • Tipos de archivo: SVG, PNG, JPG o GIF
  • Relación de aspecto: 21:9

requires-comfyui (opcional)

Especifica con qué versión de ComfyUI es compatible tu nodo. Esto ayuda a los usuarios a asegurarse de que tengan instalada la versión correcta de ComfyUI. Operadores admitidos: <, >, <=, >=, ~=, <>, != y rangos

includes (opcional)

Especifica si deseas forzar la inclusión de ciertas carpetas específicas. En algunas situaciones, como los nodos personalizados en proyectos de frontend, la carpeta de salida final empaquetada puede estar incluida en .gitignore. En esos casos, debemos forzar su inclusión para poder usarla en el registro.
Para excluir archivos del paquete publicado (lo inverso de includes), consulta .comfyignore en la página de publicación.

Ejemplo completo