Nodes/Mikey Nodes/Prompt With Style V1 (Mikey)
ComfyUI Node

Prompt With Style V1 (Mikey)

A1111-style prompting, LoRA syntax and all, inside ComfyUI

By bash-j·Created 3 years ago·Updated 11 months ago· 188
Prompt With Style V1 (Mikey)
    • samples
    • positive_prompt_text_g
    • negative_prompt_text_g
    • positive_style_text_l
    • negative_style_text_l
    • width
    • height
    • refiner_width
    • refiner_height
    positive_promptPositive Prompt
    negative_promptNegative Prompt
    style
    ratio_selected
    batch_size1
    seed0

    This is the flagship node of the pack, and it's doing a specific, opinionated thing: letting you prompt the way you probably did back in Automatic1111, inside ComfyUI's node graph. Type <lora:my_lora:0.8> right in your prompt text and it loads that LoRA at that weight - no separate LoraLoader node needed. Type <style:SAI-Cinematic> and it pulls in a pre-written style prompt. That's genuinely unusual for ComfyUI, where the normal pattern is one node per LoRA and prompts are just plain conditioning text; this node folds all of that back into the text box itself, A1111-style.

    It also handles wildcards using the familiar __word__ syntax - the same family Impact Pack uses for its own wildcard support, which is itself old A1111 wildcard-extension convention most people who started on ComfyUI directly never learned. Mikey's implementation adds a few extra tricks on top: 2$$__wildcard__ pulls two lines instead of one, __wildcard|word__ searches within the file for a specific word, and __!wildcard__/__+wildcard__/__-wildcard__/__*wildcard__ control whether the same line, the next line, the previous line, or a random different line gets picked. Wildcard files live in ComfyUI/wildcards.

    The inputs that matter: positive_prompt and negative_prompt are your standard multiline text fields, just with the extra syntax parsed out of them. style is a big dropdown - 86 choices, starting with none, then the full set of Stability AI's official style presets (SAI-Anime, SAI-Photographic, SAI-Cinematic, and so on), plus a long tail of community-contributed presets. ratio_selected picks from 15 built-in SDXL aspect ratios. batch_size and seed behave as you'd expect.

    The payoff is in the outputs: samples is an empty latent already sized correctly for your ratio pick - no separate Empty Latent Image node needed. positive_prompt_text_g/negative_prompt_text_g and positive_style_text_l/negative_style_text_l are the split text pairs SDXL's dual text encoder wants (the "g" global and "l" style-local halves). width/height and refiner_width/refiner_height come pre-computed too. Wire the whole set into a Clip Text Encode (SDXL) and one of the Mikey Sampler nodes, and you've replaced what would normally be four or five separate nodes worth of ratio math and text-splitting with one.

    You can add your own styles too, via a user_styles.json file you create yourself in ComfyUI's root directory, following the format shown in the README.

    Installing it

    Comes with the full Mikey Nodes pack - a genuinely common one to see bundled in community SDXL workflows alongside packs like Impact Pack, KJNodes, and rgthree-comfy. Through ComfyUI Manager, search "Mikey Nodes." Manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/bash-j/mikey_nodes
    

    Restart ComfyUI. No models needed for this node specifically; if you plan to use wildcards, you'll need to populate ComfyUI/wildcards with your own .txt files yourself - none ship by default.

    Common issues

    The most common miss is a <style:name> or <lora:name> tag that doesn't exactly match a real name - style names in particular are long and easy to mistype (SAI-Digital art has a space in it, for example), and a typo doesn't throw a loud error, it just silently fails to apply, leaving you wondering why the style didn't show up in the output. Double-check the exact name against the dropdown or the README's list before assuming the node is broken.

    Second: this node is built specifically for the SDXL base/refiner pipeline the rest of the pack assumes. If you're working with a non-SDXL model, the dual text-encoder outputs (_text_g/_text_l) and the refiner width/height fields won't have anywhere meaningful to go - this node is a convenience layer over a specific architecture, not a general-purpose prompt box.

    CategoryMikey

    Inputs (6)

    NameTypeDefaultDescription
    positive_promptSTRINGPositive Prompt
    negative_promptSTRINGNegative Prompt
    styleCOMBO86 options: none, SAI-Enhance, SAI-Anime, SAI-Photographic, SAI-Digital art, SAI-Comic book, +80
    ratio_selectedCOMBO15 options: 1:1 [1024x1024 square], 8:5 [1216x768 landscape], 4:3 [1152x896 landscape], 3:2 [1216x832 landscape], 7:5 [1176x840 landscape], 16:9 [1344x768 landscape], +9
    batch_sizeINT11–64
    seedINT00–18446744073709550000

    Outputs (9)

    NameTypeDescription
    samplesLATENT
    positive_prompt_text_gSTRING
    negative_prompt_text_gSTRING
    positive_style_text_lSTRING
    negative_style_text_lSTRING
    widthINT
    heightINT
    refiner_widthINT
    refiner_heightINT