ComfyUI Nodes and Workflows

ComfyUI workflows and apps for image models, plus LVNodes, the custom node pack they share. It covers Krea 2 (Turbo and Raw) and Z-Image (Turbo and Base); more models might be added to this same project, sharing some of the common nodes.

Highlights

  • πŸ–ΌοΈ Two apps, three editions each β€” Krea 2 and Z-Image, each for Comfy Cloud, local ComfyUI (PyTorch) and Apple MLX: one App view with about 20 inputs, the full graph behind it, and Notes inside that explain every input
  • πŸŒ€ Turbo and Raw / Base in one app β€” a Model switch at the top, and only the chosen model loads: Krea 2 Turbo (4 steps) or Krea 2 Raw, the undistilled base (28+ steps at CFG 4.5; Krea's own: 52 at 3.5); Z-Image Turbo (8 steps) or Z-Image (Base) (28–50 steps at CFG 3–5). Raw and Base get a Negative prompt, always used exactly as typed (never through prompt enhancement), and CFG; 1, the default, suits Turbo and every step-LoRA run
  • πŸŽ›οΈ Settings follow the model (local) β€” pick a model and Steps, Enable step LoRAs and CFG switch to its recommendations on the spot: Krea 2 Raw to 28 steps, step LoRAs off, CFG 4.5, and back to 4 steps, on, CFG 1 for Turbo (Z-Image Base: 28 steps, CFG 4; Turbo: 8 steps, CFG 1). What the fields show is what runs, and you can change any of them afterwards. It's a page add-on in LVNodes, and Comfy Cloud only runs the node packs it has installed itself, so it can't load it; on Cloud you set those fields by hand, and their hints give the same values
  • ⚑ Steps pick the step LoRA β€” switched inside the graph, with one Step LoRA strength. Krea 2, with the 2-step and 4-step distill LoRAs: 2–3 steps the 2-step, 4+ the 4-step, the native model from 7 on Turbo (from 28 on Raw). Z-Image, with alibaba-pai's Z-Image-Fun-Lora-Distill: 1–3 steps the 2-step, 4–7 the 4-step, 8–10 the 8-step, none from 11
  • 🎚️ Enable step LoRAs β€” off runs the native model at any step count. On by default for Krea 2, whose LoRAs are trained for Turbo (Raw is best with them off); off by default for Z-Image, whose LoRAs are made for Base (Turbo is best without)
  • 🎯 Each model's own sampling β€” Krea 2 Raw gets its own resolution-dependent shift (Turbo, and Raw with a step LoRA, Turbo's fixed 1.15); Z-Image gets Tongyi's shift (3 for Turbo, 6 for Base without a step LoRA) and res_multistep, on every edition, MLX included. Z-Image also offers a choice of VAE: FLUX.1's own, UltraFlux for sharper detail, or locally TAEF1 for speed
  • πŸ“Š Live progress and previews (local) β€” stage, step, s/it and time left right above Run, then "Done in m:ss", and the picture forming as it samples (on MLX through LVNodes, sharp with a tiny decoder in models/vae_approx); it comes from LVNodes, which Comfy Cloud can't load
  • 🍏 Both models on Apple MLX β€” they run on Apple's MLX inside ComfyUI, from ComfyUI's own bf16 files: Krea 2 Turbo in about a minute per 1 MP image (about 41 s for each later image of a batch), Z-Image Turbo in about 78 s at 8 steps; Raw and Base too, slower as undistilled models are (all in its own sub-environment, not touching ComfyUI's main Torch one)
  • πŸ”₯ Local PyTorch, on any GPU β€” runs on NVIDIA (CUDA) and other GPUs exactly as ComfyUI normally does; on Apple Silicon, through PyTorch's MPS backend, it runs the step LoRA alongside the model instead of keeping a second copy of its weights, which halves Krea 2's memory (48 β†’ 24 GB) for the same picture
  • ☁️ Comfy Cloud, nothing to install β€” download the Krea 2 or Z-Image Cloud workflow, drag it onto Comfy Cloud, import its step LoRAs once (everything else is already on Cloud), and run: 3.5 MP by default, with upscaling at any factor
  • 🎲 Random prompts with real variety β€” seeded scene lists and about 14,000 dictionary words, or real prompts from 3M+ Hugging Face dataset rows read live; the Prompt LLM turns them into photorealistic prompts, and refusals are retried
  • πŸ—£οΈ Prompt enhancement with any LLM β€” by default the same file as the model's text encoder (Qwen3-VL 4B for Krea 2, Qwen3 4B for Z-Image), so nothing extra to download; falls back to your own prompt if the LLM refuses or returns nothing
  • 🎨 Extra LoRAs and upscaling β€” style LoRAs on top, with their own strength and trigger words; SeedVR2 7B or classic upscalers at any factor (a 3.5 MP image at 4Γ— comes out at 8864Γ—6624)
  • 🧠 Memory on demand (local) β€” models load stage by stage, and Keep models loaded holds them between runs only when you want, whatever ComfyUI's startup flags
  • 🧩 LVNodes, one light pack β€” the MLX nodes for both models, loaders that need only the files a run uses, keep-loaded loaders, seeded random prompts, live dataset rows, Wait For gates, and in the app the status line, the keep checkbox, settings that follow the model and a fresh first seed. It needs nothing beyond Python's standard library, except the MLX nodes: on their first run they make a one-off install of mflux, MLX and transformers 5 (about 1.3 GB, a few minutes, automatic) into LVNodes' own environment, so ComfyUI's packages stay untouched. Besides LVNodes, the local workflows need only KJNodes (for the Set/Get pills); Comfy Cloud needs nothing
  • 🧹 No spaghetti β€” every workflow starts from a Fields β†’ Set column and wires its groups with Set/Get pills, aligned with even gaps
  • πŸ“₯ Models download themselves β€” every file carries its link for ComfyUI's missing-models dialog
  • πŸ†“ Apache-2.0 β€” workflows, nodes and docs
Model Folder Versions
Krea 2 (Turbo and Raw) Krea-2/ Comfy Cloud, local ComfyUI, and Apple MLX for Apple Silicon Macs
Z-Image (Turbo and Base) Z-Image/ Comfy Cloud, local ComfyUI, and Apple MLX for Apple Silicon Macs

Each model's folder holds its workflow files and a README with everything specific to that model: which models to download, how to install and use the workflows, and screenshots.

The screenshots below come from the Krea 2 app, on an Apple Silicon Mac and on Comfy Cloud, and the last one from the Z-Image app on Comfy Cloud.

The Krea 2 App view with a finished image
The Krea 2 App view on an Apple Silicon Mac (Apple MLX workflow): Krea 2 Turbo, a Fully Random prompt written by the Prompt LLM, rendered at 1 MP in 1:04. The app's inputs are on the right.

The Krea 2 workflow in the graph view
The graph view: the Notes explain the setup and every input, the Krea 2 (MLX) node holds all the fields, and the image preview and the prompt used sit on the right.

Inside the Krea 2 subgraph
Inside the Krea 2 subgraph: every field starts in the Fields β†’ Set column on the left, and each group reads what it needs through Get pills, so no wire crosses from one group to another.

The Krea 2 App view on Comfy Cloud with a finished image
Krea 2 on Comfy Cloud: Krea 2 Turbo at 3.5 MP (2216Γ—1656), upscaled 2x to 4432Γ—3312, with the Model list open.

The Z-Image App view on Comfy Cloud with a finished image
Z-Image on Comfy Cloud: Z-Image Turbo at 8 steps and 3.5 MP (2216Γ—1656), upscaled 2x to 4432Γ—3312, with the Model list open.

What's in this project

  • LVNodes/: the custom node pack the local workflows use. It's one pack for every model here: each group of nodes has its own subfolder and README, and the Apple MLX ones share one Python environment. See LVNodes/README.md.
  • One folder per model: Krea-2/ and Z-Image/.
  • meta.yaml: the project manifest, with the version and what each folder holds.

Getting the project: the simplest way is Hugging Face's hf command, which ComfyUI Desktop's Python includes ("$COMFY/.venv/bin/hf", with COMFY your ComfyUI folder; other installs: the hf of the Python that runs ComfyUI, or pip install huggingface_hub):

hf download lvladikov/ComfyUI-Nodes-and-Workflows --local-dir ComfyUI-Nodes-and-Workflows

Or download the files you need from the repository's file browser. To check which version you have, see version in meta.yaml.

Local ComfyUI setup

Every local workflow here needs the following. Comfy Cloud needs none of it; each model's README covers Cloud.

LVNodes

  1. Copy the whole LVNodes folder into ComfyUI/custom_nodes/. For ComfyUI Desktop, ComfyUI is the folder you chose during setup.
  2. Restart ComfyUI.

There's nothing to run by hand, and ComfyUI's own Python packages aren't changed. The Apple MLX nodes set up their own environment the first time they run.

Updating LVNodes

Update by copying what's inside the new LVNodes into your existing custom_nodes/LVNodes, replacing files when asked, then restart ComfyUI. Don't replace or delete the LVNodes folder itself. On a Mac it also holds two hidden folders that LVNodes created there: .venv, the MLX environment (about 1.3 GB), and .cache.

  • macOS Finder: open the new LVNodes, select everything in it (⌘A), drag the selection into your custom_nodes/LVNodes and click Replace, with Apply to all ticked. Don't drag the LVNodes folder itself onto custom_nodes: Finder would replace the whole folder, hidden folders included. Finder's Merge doesn't help here, because it isn't offered when files have changed.
  • Windows Explorer: copying the new LVNodes onto the old one and choosing Replace the files in the destination is fine, since Windows keeps everything else. On Windows and Linux there are no hidden folders anyway, because the MLX nodes only run on Macs.
  • Terminal (macOS, Linux): rsync -a --delete --exclude .venv --exclude .cache /path/to/new/LVNodes/ /path/to/ComfyUI/custom_nodes/LVNodes/ makes your copy match the new version and keeps both hidden folders.

If the hidden folders do get deleted, nothing breaks: the next MLX run sets them up again, which takes a few minutes.

KJNodes

KJNodes provides the Set/Get pills that wire the workflows' graphs. Install it from ComfyUI Manager (the Extensions button, or Manager β†’ Custom Nodes Manager): search for "KJNodes" and install ComfyUI-KJNodes by kijai. The Manager's missing-node check can't match it automatically, so search for it by name. Then restart ComfyUI.

No Extensions button? Newer ComfyUI versions only show the Manager when it's enabled. ComfyUI Desktop includes it. For a portable or manual install, run python -m pip install -r manager_requirements.txt with ComfyUI's Python in the ComfyUI folder, then start ComfyUI with --enable-manager. Or skip the Manager: run git clone https://github.com/kijai/ComfyUI-KJNodes inside custom_nodes, then install its requirements.txt with ComfyUI's Python.

One Button Prompt

One Button Prompt by AIrjen draws the random ingredients for Fully Random in the Cloud workflows only. Comfy Cloud has it built in, so there's nothing to install. The local workflows use LVNodes' Random Prompt instead and don't need it. It's GPL-3.0 licensed; the workflows only use it, and none of its code is part of this project.

Models

No models ship with ComfyUI. When you open a workflow, ComfyUI offers to download the ones it can't find, because the workflows store each file's download link. ComfyUI Desktop saves them straight into the right folders. Other installs open the links in your browser, so move each downloaded file into the folder the model's README names. The model READMEs list every file, with sizes and alternatives.

Optional: a Hugging Face token

LVNodes' Random Prompt (HF Dataset) node reads Hugging Face datasets without an account. If you set the HF_TOKEN environment variable before starting ComfyUI, its requests are sent as your account, so rate limiting is less likely, and gated datasets you can access also work. Any free read token from huggingface.co/settings/tokens will do.

  • macOS or Linux: export HF_TOKEN=hf_... in the shell that starts ComfyUI.
  • Windows: run setx HF_TOKEN hf_... once, then restart ComfyUI.
  • ComfyUI Desktop on macOS: run launchctl setenv HF_TOKEN hf_..., then restart the app. This lasts until the Mac restarts.

Tips for Apple Silicon Macs

Two startup arguments help on a Mac. In ComfyUI Desktop, add them under Manage β†’ Launch Settings β†’ Startup Arguments, then restart; for other installs, add them to the launch command. They apply to every workflow you run in that ComfyUI.

  • --gpu-only: on a Mac, ComfyUI runs text encoders on the CPU by default, so encoding prompts is slow, and so is an LLM step that uses the text encoder. --gpu-only moves them to the GPU. On Apple Silicon that costs no extra memory, because the CPU and GPU share it. --highvram has no effect on Macs.
  • --cache-none, unless you have plenty of memory: by default, ComfyUI keeps every model loaded for the next run, and on a Mac they all share the same memory. With --cache-none, ComfyUI frees each model as soon as its stage is done. Workflows that load each model only when its stage starts, with LVNodes' Wait For, then keep just one stage in memory at a time. Every run would then load its models again, but this project's workflows have a Keep models loaded switch that keeps the big models between runs when you want, even with --cache-none, so there's no need to change your startup arguments for it.

Each model's README adds its own Mac tips, such as which model files suit a Mac.

Licences

Everything in this project, the workflows, LVNodes and these READMEs, is under the Apache License 2.0. The models are not part of it: each workflow downloads them from their own repositories, under their own licences, which the model's folder names. For Krea 2 that is the Krea 2 Community License (Krea-2/LICENSE.pdf), which covers the Krea model files and the 2-step and 4-step LoRAs. Z-Image (Base), Z-Image Turbo, the step LoRAs and UltraFlux are Apache-2.0, and TAEF1 is MIT.

Downloads last month
34
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support