Zip Ties : une extension ComfyUI qui regroupe les câbles en rubans

ComfyUI Wikinews

Extension frontend qui réunit les liens de la toile ComfyUI en un ruban de serre-câbles : Z pour attacher, clic droit pour la couleur ou la rotation. Sauvegardé avec le flux.

Zip Ties est une extension frontend qui regroupe les liens traversant une ligne en un seul ruban, maintenu par de petits serre-câbles que vous pouvez déplacer, pivoter et recolorer. Elle n'ajoute aucun nœud et n'a aucune dépendance Python ; toute l'extension tient dans un seul fichier JavaScript. La version 0.4.0 est sortie le 26 octobre 2026.

Les grands flux de travail ont partout le même problème visuel : un fouillis de câbles entre les chargeurs d'un côté et les échantillonneurs de l'autre, chacun dessiné comme une courbe de Bézier séparée qu'il faut suivre des yeux. Zip Ties ne les cache pas et ne les fait pas contourner un obstacle. Il rassemble les liens qui croisent une ligne que vous tracez et fixe chaque lien à cette ligne, comme un serre-câble maintient un faisceau.

L'extension a été construite à partir d'un prototype de @cmzw_, et elle a atteint la une de r/comfyui et de r/StableDiffusion en moins d'un jour après sa première publication.

Une image tirée de l'enregistrement de démonstration

Gestes

ActionGeste
Attacher des câbles ensembleMaintenez Z et tracez une ligne à travers les câbles
Attacher des câbles sans clavierFaites un clic droit sur la toile vide, choisissez Tie wires, puis tracez à travers les câbles
Déplacer une attacheFaites glisser l'attache
Sélectionner plusieurs attachesCtrl/Cmd-clic sur chaque attache, Maj-clic pour en ajouter une, ou sélectionnez-les avec un cadre en même temps que les nœuds
Pivoter une attacheMaj-glissez-la. Elle s'aligne par pas de 15 degrés ; maintenez aussi Alt pour pivoter librement
Changer la couleur, pivoter de 90 ou 45 degrés, supprimerClic droit sur l'attache
Supprimer une attacheMaintenez Z et tracez sur l'attache, ou double-cliquez dessus

Pendant que vous faites glisser, les câbles traversés par la ligne deviennent blancs. Si la ligne croise une attache existante, la ligne et l'attache deviennent rouges, et relâcher supprime cette attache. La touche se configure dans Zip Ties → Key to hold while dragging across wires, qui ne propose que des lettres que ComfyUI n'utilise pas déjà seules : X, C, G, T ou Y. Avec Alt, Ctrl, Cmd ou Maj enfoncée, un glissement garde son sens habituel : Alt-glisser clone donc toujours un nœud.

Comportement du ruban

Chaque nouvelle attache prend une couleur de serre-câble aléatoire. Zip Ties → Colour of new ties permet de passer à Match wires, qui reprend la couleur la plus fréquente parmi les câbles de l'attache, ou à un gris uni ; un clic droit modifie une seule attache. Les câbles conservent leurs propres couleurs et courent côte à côte entre les attaches ; survoler ou déplacer une attache met en évidence tous les câbles qu'elle contient.

Un câble peut traverser plusieurs attaches, et pivoter une attache change la direction que prennent les câbles à travers elle : des attaches à 0 et 90 degrés produisent donc un coude à angle droit. Les segments entre les réacheminements peuvent aussi être attachés : une attache retient le segment sur lequel elle a été tracée, et un segment qui se termine à un réacheminement est partagé par tous les câbles qui passent par ce réacheminement.

Les attaches suivent leurs câbles. Déplacer tous les nœuds et réacheminements qu'une attache relie l'emporte avec eux ; n'en déplacer qu'une partie la laisse sur place, la même règle que celle qui s'applique à un réacheminement. Une attache à l'intérieur d'un groupe se déplace avec le groupe, et un Ctrl/Cmd-glisser sur le cadre du groupe la laisse sur place avec les nœuds. Les attaches sélectionnées se déplacent avec les nœuds sélectionnés, et Suppr supprime les deux en une seule étape d'annulation.

Les attaches sont stockées dans extra.zipTies du flux de travail : elles s'enregistrent, se chargent et s'annulent avec le reste du graphique. Les flux de travail ouverts sans l'extension se chargent et dessinent toujours leurs câbles normalement, et une entrée malformée est ignorée au chargement. Copier et coller des nœuds emporte leurs attaches lorsque tous les câbles d'une attache font partie de la copie, là encore en une seule étape d'annulation.

Sous le capot, et ses limites

L'extension enveloppe une poignée de méthodes litegraph de la toile : renderLink enregistre le début et la fin de chaque segment de câble et redessine les segments attachés comme des brins décalés latéralement par rapport au centre de l'attache, _renderAllLinkSegments maintient le dessin d'un câble attaché lorsque son attache est à l'écran même si ses deux extrémités sont hors écran, et drawConnections élimine les attaches dont les câbles ont disparu et déplace celles qui doivent suivre. Le dessin des segments est rendu au moteur de rendu de liens propre à ComfyUI, ce qui conserve les couleurs, les bordures et le comportement de mise en évidence. Le geste de glissement s'exécute dans des écouteurs en phase de capture sur window, ce qui lui permet de voir les événements de pointeur avant litegraph, et la ligne tracée est testée contre la courbe de Bézier de chaque câble.

Le projet mentionne deux limites. Un segment de réacheminement créé depuis un badge de lien, le raccourci de lien caché, ne peut pas être attaché. Et la forme du ruban est réglée pour les liens spline : les modes de lien droit et linéaire passent toujours par les attaches, mais le test de coupe traite chaque segment comme une ligne droite. L'extension a été testée sur ComfyUI 0.42.0 avec le frontend 1.57.1, à la fois sur la toile classique et en mode nœuds Vue.

Disponibilité

Installez-la en recherchant « Zip Ties » dans ComfyUI-Manager, avec comfy node install comfyui-zip-ties, ou en clonant le référentiel dans ComfyUI/custom_nodes puis en redémarrant. Les versions et la liste complète des gestes se trouvent sur GitHub.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
Zip Ties : une extension ComfyUI qui regroupe les câbles en rubans | ComfyUI Wiki