Skip to content

Profiles

CodeComfy covers six capability profiles. One command reaches all of them:

Ctrl+Shift+PCodeComfy: Run… (all profiles)

The flow is always the same — profile → preset → inputs.

Inputs come from the preset, not the profile

Section titled “Inputs come from the preset, not the profile”

The questions you get asked are derived from the chosen preset’s own workflow graph, not from a form hardcoded per profile.

That means two presets in the same profile can ask for different things. An image-to-video preset asks you for a source image because its graph needs one; a text-to-video preset sitting right next to it does not. Nothing is special-cased — the graph is the source of truth.

The inputs you may be asked for:

InputWhen
PromptThe graph has a text-conditioning node
Negative promptThe graph has a reachable negative-conditioning path
Style tagsAudio presets — genre, instrumentation, mood
Edit instructionImage-edit presets
QueryInference detect / segment — what to look for
Source imageImage-to-video, image-to-mesh, edit, and every inference preset
Source audioStem separation

Files are uploaded to your ComfyUI server automatically. CodeComfy uses the filename the server reports back, not the one it sent — with overwrite off, ComfyUI renames on collision, so the returned name is the only reliable handle.

Nothing is submitted before it can succeed

Section titled “Nothing is submitted before it can succeed”

Before any graph is sent, CodeComfy checks it against your server:

  • Node types — via GET /object_info/{class}. A missing node names the pack that provides it.
  • Model files — via GET /models/{folder}. A missing model names the file and the folder it belongs in.

If anything is missing, nothing is submitted and no GPU time is spent. If your ComfyUI is too old to list models, the model check is skipped rather than reported as a failure — an old server should never look like a missing file.


Text-to-image, image editing, and ControlNet.

PresetNotes
Qwen txt2img (2512)UNETLoader path, 16-channel latent
Qwen edit (2511)Takes reference images into the edit encoder
ControlNet union — QwenUnion ControlNet, optional core Canny preprocess
ControlNet union — SDXLSame code path, SDXL stack

Text- and image-to-video on real temporal models. These take length in frames, not a batch of stills — the frame count is snapped to the legal 4n + 1 grid before submission, because ComfyUI accepts an off-grid value without complaint and the model then mishandles it.

PresetNotes
Hunyuan 1.5 i2vRequires a start image
Hunyuan 1.5 720pHigher resolution
Wan 14B
LTX standard
Mochi
Core outputEnds in CreateVideoSaveVideono FFmpeg needed

Most video presets terminate in VHS_VideoCombine, which needs the Video Helper Suite node pack. The core-output preset avoids that dependency entirely and is encoded by the server.

ACE-Step 1.5 text-to-music, plus stem separation.

PresetNotes
MusicStandard length
Music (long)
Music (MP3)MP3 rather than FLAC
JingleShort-form
DraftFast, low-step
Stem separationNeeds the audio-separation node pack and a source audio file

Music presets take style tags rather than a prose prompt — genre, instrumentation, timbre, mood.

Hunyuan3D-2 image-to-mesh, exported as GLB. All core nodes.

PresetNotes
DraftFastest
Standard
DetailHighest quality

Give it one source image; you get a .glb in .codecomfy/outputs/.

Florence-2 image understanding. Needs the comfyui-florence2 pack.

PresetOutput
CaptionShort description
Detailed caption
More detailed caption
TagTag list
DetectBounding boxes — takes a query
SegmentSegmentation mask image — takes a query
OCRText found in the image

Most inference presets write their result as text; CodeComfy saves it as a .txt alongside your other outputs so it is a real artifact, not just a log line.

Read the workflow ComfyUI embeds in its output PNGs. This profile never contacts the server — it is a local file read, so it works with ComfyUI closed.

CodeComfy: Read Workflow from PNG opens the extracted graph in a new editor tab. It prefers the prompt chunk (API format — the graph actually submitted, and the one that can be re-submitted) over the workflow chunk (editor format, which /prompt does not accept).

This is the fastest way to recover exactly what produced an image somebody sent you.


CodeComfy does not author workflow graphs. The 27 reference workflows are vendored from comfy-headless, where every node type is verified against the live ComfyUI catalog.

This matters more than it sounds. A wrong workflow graph does not raise an error — it runs to completion and returns nothing. Keeping a second, hand-maintained copy of that knowledge would be a silent-failure generator, so maintainers sync it instead:

Terminal window
npm run kb:sync

npm run kb:check fails if the vendored copy has drifted from upstream.

Live progress. CodeComfy opens ComfyUI’s WebSocket before submitting, so the status bar shows real sampler steps (Step 12 / 20 (60%)) rather than a single static message. If your VS Code build has no WebSocket, or the socket drops mid-run, CodeComfy falls back to polling automatically — outputs are unaffected either way, because the socket is only ever an optimisation.

Cancel (CodeComfy: Cancel Generation) clears the pending queue and interrupts the running job. The order matters: /interrupt on its own aborts only what is running, and the server immediately promotes the next pending item — which is why cancelling used to look like it started the next job.

Clear queue (CodeComfy: Clear ComfyUI Queue) drops pending work and leaves the running job alone. This is the honest version of “pause”: mainline ComfyUI has no pause primitive and no resume-at-step-N, so stopping more work from starting is the part that can genuinely be done.