Nodes/WorkflowX Configurator/Unified Autoprompter X
ComfyUI Node

Unified Autoprompter X

One node that writes the prompt your target model actually wants

By haroonaslam·Created 4 months ago·Updated 7 days ago· 10
Unified Autoprompter X
  • image
  • prompt
  • positive
  • negative
target_modelideogram4
prompt_formatjson
negative_enabledfalse
generation_typetext_to_image
nsfw_enabledfalse
enable_bbox_json_inputfalse
enable_text_inputfalse
refresh_vramfalse
disable_color_palettefalse
generated_positive
generated_negative
final_prompt
bbox_json
raw_prompt_text
ui_state{}

The hardest part of prompting in 2026 isn't coming up with ideas - it's that every model wants a different dialect. Flux wants natural prose. SDXL finetunes want tags. Ideogram, Qwen image, Wan, LTX and the rest each have their own conventions, and a prompt that sings on one will flop on another. Unified Autoprompter X is WorkflowX's shot at retiring that problem: you pick your target_model from a 13-way list (ideogram4, sdxl, qwen_image, flux1_dev, flux2_dev, flux_klein, z_image, wan2_2, ltx_2_3, krea2, minimax_h3 variants, and one more), and the node generates a prompt in the format that model's ecosystem expects.

The flow is: give it a rough idea or a reference image, hit generate, and it produces a prompt tailored to the target model's conventions, in your chosen prompt_format - natural, tags, or json. The backend is a menu, like the rest of this pack's prompting layer: Gemini, OpenAI-compatible, Ollama, or a local GGUF model. So it can run offline with a local LLM, or lean on an API. Everything you generate lands in UI-managed fields (generated_positive, generated_negative, final_prompt) that you can edit by hand before it runs.

Outputs and what to do with them

  • prompt (STRING) - the final selected-format prompt.
  • positive (STRING) - the positive channel, straight into a CLIP Text Encode.
  • negative (STRING) - the negative channel, when negative_enabled is on.

Optional inputs add range: image (IMAGE) gives the generator a visual reference to describe; bbox_json (STRING) feeds a bounding-box layout into the frontend's BBox Layout tool for targets that support layout-aware prompting; raw_prompt_text (STRING) lets you supply your own source text when enable_text_input is on.

The two toggles worth reading before you use it: refresh_vram unloads ComfyUI models and clears cache before generation (useful when you're juggling a local LLM and a diffusion model on one card), and disable_color_palette strips color_palette blocks from JSON output without touching the stored model response.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/haroonaslam/WorkflowX-Configurator

or search WorkflowX Configurator in ComfyUI Manager, restart, hard-refresh the browser. No hard pip deps, but the generation backend is on you - configure a Gemini key, an OpenAI-compatible endpoint, an Ollama server, or a local GGUF.

Where it bites

  • Prompt-format discipline is the point. The whole value is the target-specific rewrite. If you're on a tag-based SDXL finetune and the output comes back as natural prose, check prompt_format - the node picks a sensible default per target but won't stop you from overriding it badly.
  • "Generated" is not "curated." An LLM that adds detail will occasionally invent detail you didn't ask for. The UI-managed text fields exist so you can edit before it hits the encoder - use them.
  • Local backends need VRAM headroom. That's what refresh_vram is for, but if your card is already full, generating locally can thrash. The API backends sidestep it entirely.
  • Model names move. target_model tracks the current crop of image models, and the list will age. If your model isn't listed, pick the closest dialect and hand-edit.

The one-stop prompt lab for people who bounce between model families and want a starting prompt in the right dialect every time. It won't replace taste - it replaces the blank page.

CategoryWorkflowX/Prompting

Inputs (16)

NameTypeDefaultDescription
target_modelCOMBOideogram414 options: general, ideogram4, sdxl, qwen_image, flux1_dev, flux2_dev, +8
prompt_formatCOMBOjson3 options: natural, tags, json
negative_enabledBOOLEANfalse
generation_typeCOMBOtext_to_image8 options: text_to_image, image_to_image, text_to_video, first_frame_to_video, first_last_frame_to_video, last_frame_to_video, +2
nsfw_enabledBOOLEANfalseUI-managed toggle for generation-path-specific NSFW prompt rules.
enable_bbox_json_inputBOOLEANfalseUI-managed toggle for syncing a connected bbox_json STRING into BBox Layout.
enable_text_inputBOOLEANfalseUI-managed toggle for using raw_prompt_text as the prompt source during generation.
refresh_vramBOOLEANfalseUI-managed toggle to unload ComfyUI models and clear cache before prompt generation.
disable_color_paletteBOOLEANfalseUI-managed toggle to strip color_palette blocks from JSON outputs without changing the stored model response.
generated_positiveSTRINGManaged by the WorkflowX UI.
generated_negativeSTRINGManaged by the WorkflowX UI.
final_promptSTRINGManaged by the WorkflowX UI.
imageoptIMAGE
bbox_jsonoptSTRINGOptional connected raw bbox layout JSON for the frontend BBox Layout Sync action.
raw_prompt_textoptSTRINGOptional connected raw prompt text used during generation when enabled in the UI.
ui_stateoptSTRING{}Managed by the WorkflowX UI.

Outputs (3)

NameTypeDescription
promptSTRING
positiveSTRING
negativeSTRING