ComfyUI Node

AIO Core Settings

One panel that runs your whole workflow (and saves you from editing settings in five places)

By max-dingsda·Created 7 months ago·Updated 5 months ago· 0
AIO Core Settings
    • checkpoint
    • lora
    • positive_prompt
    • negative_prompt
    • sampler
    • scheduler
    • steps
    • cfg
    • filename
    checkpoint
    lora
    positive_prompt
    negative_prompt
    sampler
    scheduler
    steps20
    cfg7.0
    filename

    If you've ever rebuilt the same workflow twice, you know the ritual: change the checkpoint, scroll over and change the sampler, scroll back and fix the prompt, check the filename prefix… It's fine when it's one workflow. It's miserable when you're A/B-testing across five saved versions of it.

    AIO Core Settings is the "unfuck my settings" node for exactly that situation. It collects the handful of values every generation shares - checkpoint, LoRA, prompts, sampler, scheduler, steps, CFG, and the output filename - into one node, and exposes each of them as its own output. You wire those outputs into your real nodes, and suddenly there's exactly one place you edit anything. The name is slightly aspirational - there's no API, no model loading, no magic. It's a control panel, and it's honest about that.

    How it works (the "lazy" part is real)

    Here's the clever bit, and it's why the pack calls itself "LazyNode." The Python side does almost nothing: the node's collect() just returns whatever you typed. The actual work happens in the bundled frontend extension (web/js/aio_core_preview.js), which does two things.

    First, it live-propagates values to whatever the outputs are wired into. Change the sampler dropdown on this node and the connected KSampler's widget updates on screen in real time, no clicking through. Second, it hooks graphToPrompt so that when you save the workflow, the downstream nodes serialize their values (the ones this node pushed into them) instead of "this wire came from node X." The result: you can't open the saved JSON and end up with an empty widget because the value was only ever riding on a wire.

    It also auto-generates the filename. Leave that field empty and it builds <checkpoint>_<lora>_<sampler>_ - folders stripped, extensions removed - and refills it live as you change those three. Edit it by hand and your text sticks. Clear it and auto-naming comes back. The Create Filename from Input button just resets you to auto mode after a manual edit.

    One genuinely nice detail: the checkpoint, LoRA, sampler, and scheduler dropdowns aren't hardcoded. They're populated from what's actually in your checkpoints and loras folders plus ComfyUI's own sampler/scheduler lists (KSampler.SAMPLERS / KSampler.SCHEDULERS), so they always match reality - including the 45 sampler and 10 scheduler options current ComfyUI ships.

    Inputs and outputs that matter

    Every input maps 1:1 to an output of the same name, so this is quick:

    • checkpoint and lora - dropdowns (each includes (none)) that feed the dropdowns of Load Checkpoint and Lora Loader. They output as a flexible * type for COMBO compatibility.
    • positive_prompt and negative_prompt - multiline text, straight into your CLIP Text Encode.
    • sampler and scheduler - dropdowns that wire into KSampler. Same * trick.
    • steps (default 20) and cfg (default 7.0) - plain numbers into KSampler. Remember the concepts-doc caveat: CFG 7 is an SD 1.5/SDXL default; flow-matching checkpoints like Z-Image want CFG 1, and Karras isn't a safe default there.
    • filename - string you'd usually feed into a Save Image node's filename prefix.

    Note the (none) behavior: picking it emits an empty string. That's deliberate - leave checkpoint on (none) and the Load Checkpoint it feeds gets an empty value, which will not do what you want.

    Install

    This one's easy - it has no Python dependencies (its requirements.txt is literally empty) and downloads no models. Either route works:

    cd ComfyUI/custom_nodes
    git clone https://github.com/max-dingsda/ComfyUI-AllinOne-LazyNode
    

    then restart ComfyUI. Or, easier: ComfyUI Manager → Install Custom Nodes → search "ComfyUI-AllinOne-LazyNode" → install → restart. The README's "place this folder inside ComfyUI/custom_nodes/ComfyUI_AIOcore" is just its way of saying "it must live as a folder under custom_nodes" - the clone lands under the repo name and works fine.

    Where people get burned

    It's a young, single-maintainer pack with essentially zero community footprint yet, so there's no lore - just these practical notes. The live-propagation and filename logic live in the frontend extension, so they only run when you're in the browser UI. If you fire workflows at the API headlessly, trust the Python side (plain pass-through) and don't count on the display tricks. And remember this node feeds other nodes - it doesn't replace them. If you expected it to sample on its own, that's not the point; it's a glorified, very convenient set of shared settings. For that job, it's genuinely the one I'd reach for over rebuilding the same five widgets every time.

    CategoryAIO Core

    Inputs (9)

    NameTypeDefaultDescription
    checkpointCOMBO1 options: (none)
    loraCOMBO1 options: (none)
    positive_promptSTRING
    negative_promptSTRING
    samplerCOMBO45 options: (none), euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, +39
    schedulerCOMBO10 options: (none), simple, sgm_uniform, karras, exponential, ddim_uniform, +4
    stepsINT201–10000
    cfgFLOAT7.00–100
    filenameSTRING

    Outputs (9)

    NameTypeDescription
    checkpoint*
    lora*
    positive_promptSTRING
    negative_promptSTRING
    sampler*
    scheduler*
    stepsINT
    cfgFLOAT
    filenameSTRING