Nodes/ComfyUI-JakeUpgrade/Random Prompter JK🐉
ComfyUI Node

Random Prompter JK🐉

A prompt generator with 13,000 style options — and the disable switch you'll actually need

By jakechai·Created 2 years ago·Updated 3 months ago· 147
Random Prompter JK🐉
    • prompt
    seed0
    auto_filltrue
    prompt_prioritysubject + scene
    custom_subject
    scenedisable
    custom_scene
    motiondisable
    custom_motion
    facial_actiondisable
    custom_facial_action
    exp_strquite
    expressiondisable
    custom_expression
    audiodisable
    custom_audio
    lightingdisable
    custom_lighting
    cameradisable
    custom_camera
    styledisable
    custom_style
    descriptiondisable
    custom_descriptiona masterpiece of work with insane detail and best quality, featuring a masterfully balanced composition and harmonious colors, presenting a groundbreaking concept
    remove_prompt_emphasistrue

    Random Prompter JK is a categorized random-prompt generator with a truly absurd amount of content behind it - thousands of scene options, over thirteen thousand style entries (artists, painters, forms, genres), hundreds of expressions, facial actions, lighting and camera descriptions. The point isn't to make you pick from 13,000 artists. The point is that when you want variety, it picks for you - from a database that doesn't repeat, because it's that big.

    How it works

    Every category (scene, motion, facial_action, expression, audio, lighting, camera, style, description) has a dropdown with the same five-ish states: disable (exclude it), enable (use your custom value), random (surprise me), or a specific entry. Under the hood it reads from the pack's prompt_data folder - plain text files per category - and randomly assembles a prompt from whatever you've enabled. auto_fill (default on) writes the result into the editable fields so you can see and tweak it, and remove_prompt_emphasis strips stray (word:1.5) weight syntax from your subject so it doesn't leak into the final prompt.

    The three inputs a beginner actually sets:

    • custom_subject - the anchor. Put your main subject here (or pipe in a Portrait Master output, which the pack's own workflows do). Everything else dresses it up.
    • prompt_priority - the ordering of the assembled prompt (subject + scene, description + style, etc.). This genuinely changes how a model reads the prompt, so it's worth playing with.
    • exp_str - an expression-intensity modifier ("slightly," "quite," "hardly") that pairs with the expression category.

    The seed input controls the randomness; 0 means "new random seed every run."

    The output

    One STRING, prompt, ready to feed a CLIP Text Encode. You'll notice the dropdowns also list use image 1/2/3 entries, but this node has no image input of its own - those options are plumbing for the pack's larger auto-prompt workflows where an image reference feeds the prompt generation. On this standalone node, the categories and your custom values are what do the work.

    Where it shines (and where it doesn't)

    It shines for character/portrait variation - same subject, endless scene/lighting/camera combos, which is exactly how Jake uses it in the Portrait Master + Random Prompter imgen workflow. It's less useful if you want a consistent style: random selection is random, so for reproducible batches you're better off locking the categories you care about and only randomizing the ones you don't. And 13,000 styles means you should curate - drop your own text files into prompt_data if you want to narrow the pool. The config (in config.ini, [RandomPrompterConfig]) controls which folders it reads and the probability knobs for how often it uses custom values versus empty.

    Install

    cd ComfyUI/custom_nodes
    git clone https://github.com/jakechai/ComfyUI-JakeUpgrade
    pip install -r requirements.txt
    

    Restart and it's under the pack's Prompt section. It shares its slot with a sibling: the pack's config.ini has a RANDOM_PROMPTER_ABC flag that swaps between this standard version and the ABC-strategy implementation - both named Random Prompter. If the node behaves differently than a tutorial describes, that flag is why.

    Category🐉 JK/🐝 Prompt

    Inputs (24)

    NameTypeDefaultDescription
    seedINT00–18446744073709550000Random seed for prompt generation. Use 0 for random seed each time.
    auto_fillBOOLEANtrueAutomatically fill custom fields when menu selections change.
    prompt_priorityCOMBOsubject + sceneDetermine the order of components in the generated prompt.
    custom_subjectSTRINGMain subject description. You can obtain the subject's auto-prompt from LLM/VLM or custom nodes, such as Portrait Master.
    sceneCOMBOdisableScene setting and background options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific scene options.
    custom_sceneSTRINGCustom scene description. Used when scene is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    motionCOMBOdisableCharacter motion and pose options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific motion options.
    custom_motionSTRINGCustom motion description. Used when motion is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    facial_actionCOMBOdisableFacial action details. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific facial action options.
    custom_facial_actionSTRINGCustom facial action description. Used when facial_action is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    exp_strCOMBOquiteExpression intensity modifier. Combined with expression selection to create nuanced emotional descriptions.
    expressionCOMBOdisableCharacter expression options (use with caution in video prompts). Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific expression options.
    custom_expressionSTRINGCustom expression description. Used when expression is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options. Combines with exp_str when applicable.
    audioCOMBOdisableAudio and sound effect options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific audio options.
    custom_audioSTRINGCustom audio description. Used when audio is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    lightingCOMBOdisableLighting options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific lighting options.
    custom_lightingSTRINGCustom lighting description. Used when lighting is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    cameraCOMBOdisableCamera angle and shot composition options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific camera options.
    custom_cameraSTRINGCustom camera description. Used when camera is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    styleCOMBOdisableArtistic style and visual treatment options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific style options.
    custom_styleSTRINGCustom style description. Used when style is set to 'enable' or specific options are selected, or is set to 'random' and is one of the possible options.
    descriptionCOMBOdisableOverall description template options. Choose 'disable' to exclude, 'enable' to use custom value, 'random' for random selection, or specific description templates.
    custom_descriptionSTRINGa masterpiece of work with insane detail and best quality, featuring a masterfully balanced composition and harmonious colors, presenting a groundbreaking conceptCustom description template. Used when description is set to 'enable' or specific templates are selected. Follows the format: 'a [sensory] of work with [detail] and [quality], featuring a [composition] and [color], presenting a [creativity]'
    remove_prompt_emphasisBOOLEANtrueRemove emphasis symbols and weight markers from custom_subject (e.g., (word:1.5) -> word, [A:B:0.5] -> A-B)

    Outputs (1)

    NameTypeDescription
    promptSTRING