Nodes/Comflowy's Custom Nodes/Comflowy Omost Load Canvas Conditioning
ComfyUI Node

Comflowy Omost Load Canvas Conditioning

Hand-edit a layout and load it back in

By 6174·Created 2 years ago·Updated 2 years ago· 17
Comflowy Omost Load Canvas Conditioning
    • OMOST_CANVAS_CONDITIONING
    omost_canvas_json

    The Omost workflow has a problem: the LLM decides the layout, and sometimes the LLM's idea of composition isn't yours. The Comflowy Omost Load Canvas Conditioning node is the escape hatch. It takes the structured canvas JSON - the same format Comflowy Omost LLM produces in its generated_text output - as a plain multiline string, and hands it back as an OMOST_CANVAS_CONDITIONING object ready for Comflowy Omost To Conditioning. Which means you can copy the JSON an LLM generated, edit it by hand, paste it back in, and rerun the sampler with your layout instead of the model's.

    This is the node for the control-freak end of the Omost workflow. It's also how you'd get a canvas out of some other source - an Omost demo app, a shared workflow, a JSON you built yourself - and into this pack's pipeline without running an LLM at all. Where Omost Load Canvas Python Code accepts Python, this one accepts the plain JSON data format.

    How it works and the input

    The mechanism is refreshingly honest: the node parses the JSON string and returns it as the OMOST_CANVAS_CONDITIONING type. There's no validation magic, no normalization - the string is the object, structure included. The format is the Omost canvas: a global_description plus a list of local_descriptions, each with location, offset, area, distance_to_viewer, description, detailed_descriptions, tags, atmosphere, style, quality_meta, and HTML_web_color_name.

    • omost_canvas_json (required, multiline) - the canvas JSON.

    Output: OMOST_CANVAS_CONDITIONING. From here it flows into Comflowy Omost To Conditioning (to become real conditioning) or Comflowy Omost Preview (to see the layout render).

    Installing and the gotchas

    Install Comflowy's Custom Nodes via ComfyUI Manager (search "Comflowy") or git clone https://github.com/6174/comflowy-nodes into custom_nodes, restart. No API key, no dependencies beyond the pack itself - this is a pure local data node.

    The gotchas:

    • Garbage in, garbage out. Malformed canvas JSON will error when it hits the downstream To Conditioning node, which expects the full schema. The simplest reliable source is Comflowy Omost LLM's generated_text output: let it generate, edit that, paste it here. Hand-writing the whole schema from scratch is a recipe for a missing field.
    • The area field matters. Values like "a medium-sized square area" aren't decorative - they determine the region rectangle the conditioning gets. Change location or area and you've changed the composition; change just the description and you've changed what's drawn there.
    • This node is the edit path, not the generate path. If you want the LLM to build the canvas for you, use Comflowy Omost LLM instead. Reach for this one when you have a canvas you want to reuse or modify.

    If Omost-style area conditioning is your composition tool of choice, this node is what turns it from "whatever the model decided" into "exactly what I sketched."

    CategoryComflowy/Omost

    Inputs (1)

    NameTypeDefaultDescription
    omost_canvas_jsonSTRING

    Outputs (1)

    NameTypeDescription
    OMOST_CANVAS_CONDITIONINGOMOST_CANVAS_CONDITIONING