Text Encode with Z-Image System Prompt (Legacy)
The Z-Image encoder with a proper system prompt slot
- clip
- CONDITIONING
Z-Image is the 6B Alibaba model that gave 12GB GPUs near-Flux results, and like every serious 2026 checkpoint it encodes through a language model. That means it wants a chat template - and, more usefully, it has a system slot that most people never touch because Core's plain Z-Image encode doesn't expose one. This node exists to fix exactly that: TextEncodeZITSystemPrompt ("Text Encode with Z-Image System Prompt (Legacy)") gives you a system_prompt field wired into the Z-Image template, plus your prompt, and returns one CONDITIONING.
The schema is refreshingly small. clip, prompt, system_prompt, out comes CONDITIONING. No image sockets, no resolution dials, no VAE stack - this is the "text-only, correctly formatted" member of the Z-Image family. (The (Legacy) tag means it's a compatibility alias for the canonical UC_TextEncodeZITSystemPrompt; behavior is identical, and accepting ComfyUI's replacement prompt is fine.)
Why the system slot matters
On an LLM-format encoder, text in the system slot gets treated as standing instructions, and text in the user slot gets treated as the current job. Z-Image renders better when that split is respected. A typical split:
system_prompt- framing that should hold for the whole session: "You are an expert concept artist. Prioritize lighting, texture, and spatial relationships. Output a detailed scene description."prompt- the actual subject: "a red fox crossing a snowy ridge at dusk."
The model reads the system text as context for how to handle the user text, and the results are noticeably more obedient than a single undifferentiated string. This mirrors what the pack's general TextEncodeSystemPrompt does across five model families - this node just pre-selects the Z-Image template so there's one less thing to get wrong.
If you want Z-Image's thinking block too, the sibling TextEncodeZImageThinkPrompt node covers that, and TextEncodeSystemPrompt with model_type: z-image-thinking gives you both slots in one place. This node is the minimal version for when all you need is a system prompt and a prompt.
Install
Via ComfyUI Manager (search ComfyUI-UtilsCollection) or:
cd ComfyUI/custom_nodes
git clone https://github.com/silveroxides/ComfyUI-UtilsCollection
Restart ComfyUI. Deps are opencv-python and typing-extensions; no model downloads for the node.
When you'd reach for it
When you're on Z-Image, want a persistent style/framing instruction that doesn't get diluted by per-image subject text, and don't want to hand-roll the chat template. Keep the system prompt stable across a whole batch of generations and vary only the prompt - that's the workflow this node was made for.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| prompt | STRING | — | |
| system_prompt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |