Nodes/comfyui-selector/Selector Advanced...
ComfyUI Node

Selector Advanced...

Shift, clip skip, and four strengths from one node

By exdysa·Created 2 years ago·Updated about a year ago· 6
Selector Advanced...
    • CLIP_SKIP
    • STR_1
    • STR_2
    • STR_3
    • STR_4
    • SHIFT_1
    • SHIFT_2
    • SHIFT_3
    • SHIFT_4
    • ALT_SCALE
    • INT_0
    • RECOURSE
    clip_skip-2
    str_11.000
    str_21.000
    str_31.000
    str_41.000
    shift_11.150
    shift_21.730
    shift_33.000
    shift_40.500
    alt_scale1.000
    int_00
    recourse1

    Selector Advanced (class name Selector Advanced, displayed "Selector Advanced...") is the sibling of the pack's main Selector, and it exists for the knobs that don't fit on a "preset" node: clip_skip, four generic strengths, four flow-matching shift values, an alternate scale, a spare integer, and a recourse number. Where the main Selector broadcasts the settings you see on every KSampler, this one broadcasts the settings you don't see on the basic sampler - the ones hiding in advanced sampler wrappers and model-sampling nodes.

    The most interesting of those is shift. If you've been on the flow-matching side of the ecosystem - Flux, AuraFlow, Hunyuan, Z-Image-style distilled models - you know shift is the knob that replaced "pick a scheduler": it controls how sampling effort distributes between composition and detail, and it's model-specific. ComfyUI's default is often 3, but some models want very different values. This node hands you four shift slots (shift_1 through shift_4) with defaults of 1.15, 1.73, 3.0 and 0.5 - a spectrum from "detail-heavy" to "composition-heavy" that you can feed to whichever ModelSampling node your current model wants.

    How it works

    It's a pure pass-through broadcaster, exactly like the main Selector but with advanced fields. Every input is optional, everything comes back out on a matching output unchanged: CLIP_SKIP, STR_1STR_4, SHIFT_1SHIFT_4, ALT_SCALE, INT_0, RECOURSE. The str_* slots are generic strength floats - perfect for the four Lora or ControlNet weights your workflow uses - and clip_skip defaults to -2, which is the classic SDXL recommendation. The recourse output is just an integer passthrough (default 1) for whatever you need to keep flowing.

    None of this does any computation. Like its sibling, it's a distribution point: wire SHIFT_1 into a ModelSamplingFlux or ModelSamplingAuraFlow node, CLIP_SKIP into a CLIP Set Last Layer, STR_1..4 into your LoRA stack, and you've got one control surface for all the fiddly per-model settings that usually live scattered across a graph.

    Where it earns its place

    • Multi-model workflows. Keep per-family shift and clip-skip values in one place, flip between them, and your whole advanced pipeline follows.
    • LoRA/ControlNet strength management. Four generic str_* slots is a tidy way to park the strengths you retune constantly.
    • The main Selector's sidekick. Use Selector for geometry + CFG + sampler; use Selector Advanced for the model-sampling deep cuts.

    Installing it

    Same as the rest of the pack. ComfyUI Manager → search comfyui-selector → install → restart, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/exdysa/comfyui-selector
    

    Restart and it's under Selector_Recourse. No requirements.txt, no model downloads, no network access.

    Gotchas

    • The defaults are opinions, not gospel. clip_skip = -2 is an SDXL-era default; on Flux and other LLM-encoded models clip skip doesn't even exist, so don't blindly wire it everywhere.
    • shift_1/shift_4 at 0.5 is low by flow-matching standards - if your model expects shift 7 (some distilled models do), these presets are just starting points, not the answer.
    • Nothing here is validated against your actual model. It's a knob box; the discipline has to come from you knowing which model wants which shift.
    • Small single-author pack (GPL-3.0) that's been quiet since early 2025. Worth installing if you're already running the rest of the Selector family; for a one-off shift value, a plain Float node does the same job.
    CategorySelector_Recourse

    Inputs (12)

    NameTypeDefaultDescription
    clip_skipoptINT-2-10000–-1
    str_1optFLOAT1.0000–1000
    str_2optFLOAT1.0000–1000
    str_3optFLOAT1.0000–1000
    str_4optFLOAT1.0000–1000
    shift_1optFLOAT1.1500–1000
    shift_2optFLOAT1.7300–1000
    shift_3optFLOAT3.0000–1000
    shift_4optFLOAT0.5000–1000
    alt_scaleoptFLOAT1.0000–1000
    int_0optINT0-4294967294–4294967294
    recourseoptINT11–8

    Outputs (12)

    NameTypeDescription
    CLIP_SKIPINT
    STR_1FLOAT
    STR_2FLOAT
    STR_3FLOAT
    STR_4FLOAT
    SHIFT_1FLOAT
    SHIFT_2FLOAT
    SHIFT_3FLOAT
    SHIFT_4FLOAT
    ALT_SCALEFLOAT
    INT_0INT
    RECOURSEINT