Nodes/ComfyUI-UtilsCollection/VLM System Instruction Advanced Presets (Legacy)
ComfyUI Node

VLM System Instruction Advanced Presets (Legacy)

Preset plus your own queries, wrapped in one string

By silveroxides·Created 2 months ago·Updated about 7 hours ago· 24
VLM System Instruction Advanced Presets (Legacy)
    • system_instruction
    presetaction_system_instruction
    jailbreakfalse
    system_query
    user_query

    This is the "Advanced" take on the VLM system-instruction preset family, and the legacy ID for UC_VLMSysInstrAdvPresets - same behavior, old name, kept so saved workflows keep loading. Where the plain preset node just hands you a string, this one is an assembly line: it takes a base system instruction, optionally embeds your own system and user queries into it, and optionally wraps the whole thing in a jailbreak envelope. One string in the end, ready for the VLM.

    The assembly order matters, so here's the formula: preset content + optional system-query wrapper + optional nested user query + optional jailbreak wrapper. If you type a system_query, the node wraps it in the pack's {system_query} = { ... } framing and appends it. If you also provide a user_query, that gets nested inside the system query in its own {user_query} = { ... } block. Give a user query without a system query and it's wrapped on its own. The preset content - the long captioning persona from UC_VLMSysInstrPresets - is always the base.

    The jailbreak boolean is the standout. Flip it on and the whole assembled string gets wrapped in a second, outer prompt - the pack's "time capsule" style wrapper that tells the model to answer without refusal boilerplate. That's the explicit-captioning crowd's tool: when your VLM starts refusing to describe content, this is the hammer. It's also exactly the kind of feature to be deliberate about, because it's unconditional once enabled - there's no per-request filter here, just a wrapper on the system prompt.

    Inputs and output

    • preset (combo) - the base system instruction.
    • jailbreak (boolean) - off by default; wraps the result in the refusal-suppressing envelope.
    • system_query (multiline STRING) - your extra instruction, embedded with the pack's wrapper syntax.
    • user_query (multiline STRING) - nested inside the system query block.
    • system_instruction (STRING) - the assembled result, wired into the VLM's system-prompt slot.

    Installing it

    Part of ComfyUI-UtilsCollection - Manager search or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/silveroxides/ComfyUI-UtilsCollection
    

    Restart, done. Deps are opencv-python and typing-extensions, no model downloads. If ComfyUI offers the UC_VLMSysInstrAdvPresets replacement, take it.

    One trap: because the wrappers are literal text, watch what you put in the query fields - stray { or } braces can collide with the wrapper syntax and produce a mangled system prompt that's hard to spot on screen. Keep your queries plain, and if output starts looking scrambled, check the query fields before the preset.

    Categoryadvanced/text

    Inputs (4)

    NameTypeDefaultDescription
    presetCOMBOaction_system_instruction29 options: action_system_instruction, action_system_instruction_crude, action_system_instruction_qwen, cinematic_dumb_intelligent, ideogram_4_json_instruction, ideogram_4_json_instruction_color, +23
    jailbreakBOOLEANfalse
    system_querySTRING
    user_querySTRING

    Outputs (1)

    NameTypeDescription
    system_instructionSTRING