Z-Image ONE STUDIO (TJ)
One node, eight modes, and a graph you never see
- pipe
- image
If you've ever wanted the ComfyUI without the graph experience, this is the node. Z-Image ONE STUDIO (TJ) is the flagship of the TJ NODE STUDIO ONE pack: one node on the canvas, and inside it a full photo-editing studio for Z-Image Turbo - text-to-image, img2img, inpainting, outpainting, background replacement, ControlNet, face redraw and AI upscaling. You switch modes from a panel, not by rewiring anything. The author's pitch, from the launch thread on r/comfyui, is exactly right: you shouldn't need to be a node-graph engineer just to iterate on an image.
Z-Image Turbo is a good model to wrap this around. It's Alibaba's 6B distilled flow-matching model - the one that landed the same week as Flux 2 Dev and ate its launch hype, because it runs on a 3060 in about 30 seconds at CFG 1. No negative prompt that matters, ~8–9 steps, done. It's the closest thing the community has to an SDXL successor on consumer hardware, so a UI that treats it like a finished product rather than a pile of checkpoints makes sense.
How it works
Here's the part that surprises people: the node does almost nothing on the Python side. It's a frontend-driven wrapper. The JavaScript loads a prebuilt ComfyUI workflow for whichever mode you picked (T2I, inpaint, controlnet, etc.), patches in your settings, and queues it - you just don't see any of that happening. When generation finishes, the JS posts the saved image to the server, and the node class reads it back out of a small dict and hands it to you as an IMAGE.
Two consequences. First, you generate with the node's own ▶ Generate button, not ComfyUI's RUN button. Hitting RUN doesn't re-run anything - it just re-emits the last image that node produced through the output slot. Second, because every mode is a hidden workflow, a broken mode usually means a required custom node or model is missing, and the error can be cryptic.
The inputs and outputs that matter
The node's only exposed input is prompt_override, a multiline STRING that gets prepended to whatever you type inside the panel. It's the one wiring hook in an otherwise unwired node - connect a Primitive (String) or something like TJ_NODE's Prompt Studio here to push prompts in from outside. The single output is image (IMAGE), and it's an output node, so you can chain the result into a preview or a save node if you want it outside the built-in gallery.
Everything else - resolution preset, steps, CFG, the up-to-three-LoRA stack, denoise for I2I, the mask editor for inpaint - lives in the panel and the ⚙ Settings gear.
Installing it
Install via ComfyUI Manager (search ComfyUI-TJ_NODE_STUDIO_ONE) or:
cd ComfyUI/custom_nodes
git clone https://github.com/designloves2/ComfyUI-TJ_NODE_STUDIO_ONE.git
Restart ComfyUI and you'll find it under ✨ TJ_Node/Generator. The pack leans on a lot of other custom nodes (Impact-Pack for Face Redraw, comfyui_controlnet_aux for ControlNet, ComfyUI-RMBG for RE-BG, SeedVR2 for upscale). Run the bundled install_requirements.sh (or double-click install_requirements.bat on Windows) inside the pack folder to grab them all, then restart.
Models go in the standard folders and are picked in Settings - the README has direct links:
z_image_turbo_bf16.safetensors→models/diffusion_models/qwen_3_4b.safetensors→models/text_encoders/ae.safetensors→models/vae/- Optional:
Z-Image-Turbo-Fun-Controlnet-Union.safetensors→models/controlnet/ - For Face Redraw,
face_yolov8m.pt→models/ultralytics/bbox/; for RE-BG, a BiRefNet model →models/background_removal/
Where people get stuck
The honest tradeoff is that the hidden graph cuts both ways. The launch thread's top reaction was "impressive, but you lose a lot of what makes ComfyUI useful when the whole graph is hidden behind one panel" - you can't easily borrow half of this pipeline for your own workflow, and when a mode fails you're debugging a black box. A few users also reported the panel UI compacting or clashing with other custom nodes; the author says the settings panel has a Korean/English toggle and tested across Windows/Mac/Linux, so if the layout is fighting you, check for a conflicting node first.
The other recurring gotcha: if RE-BG, Face Redraw or ControlNet modes error out, it's almost always a missing dependency (RMBG model, Impact-Pack, the aux preprocessor) rather than a settings problem. And remember the Generate button. Click RUN before generating and you get a blank 64×64 grey IMAGE back - that's the output slot returning the last saved image, and there isn't one yet.
Given the mode sprawl and the model downloads, this isn't a day-one ComfyUI install. But if you want Z-Image Turbo as a usable product instead of a workflow you maintain, it's the most complete version of that idea around.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt_overrideopt | STRING | External prompt override — prepended before the internal prompt. | |
| pipeopt | TJ_PROMPT_PIPE | PromptDB pipe (TJ_NODE). At generation, fields present in the pipe override this node's settings; missing fields keep the node's own values. The node's UI is never changed. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |