Use when editing ComfyUI workflow JSON, adding nodes, wiring connections, modifying workflows, adding ControlNet/LoRA/upscaling to a workflow, or submitting workflows to ComfyUI.
Edit workflow JSON files using the VibeComfy CLI.
Repo: https://github.com/peteromallet/VibeComfy
When working in the repo, see CLAUDE.md for full command reference.
All edit commands require -o output.json. Use --dry-run to preview changes.
| Command | Purpose |
|---|---|
trace WF NODE | Show node inputs/outputs with slot names |
upstream WF NODE | Find nodes feeding into target |
downstream WF NODE | Find nodes fed by source |
wire WF SRC_ID SRC_SLOT DST_ID DST_SLOT -o OUT | Connect nodes |
copy WF NODE -o OUT | Duplicate a node |
set WF NODE key=val -o OUT | Set widget values |
delete WF NODE -o OUT | Remove nodes |
create WF TYPE -o OUT | Create new node |
batch WF SCRIPT -o OUT | Multi-step edits |
submit WF | Run workflow in ComfyUI |
Tip: Use trace first to find slot numbers, then wire to connect.
comfy_search("controlnet") (use comfy-registry skill)comfy_spec("ControlNetLoader") - see inputs/outputspython we_vibin.py trace workflow.json <ksampler_id>python we_vibin.py create workflow.json ControlNetLoader -o step1.json
python we_vibin.py trace step1.json <new_node_id> # Find the slot numbers
python we_vibin.py wire step1.json <src_id> <src_slot> <dst_id> <dst_slot> -o step2.json
Or use batch scripts for multi-step edits (slot names work in batch mode):
create ControlNetLoader as $cn
wire $cn:control_net -> 15:control_net
What nodes go together. See references/PATTERNS.md for details.
| Pattern | Flow |
|---|---|
| txt2img | Checkpoint → CLIP (x2) → EmptyLatent → KSampler → VAEDecode → Save |
| img2img | LoadImage → VAEEncode → KSampler (denoise<1) → VAEDecode → Save |
| inpaint | LoadImage + Mask → VAEEncodeFor... |