Dragos Object
The glue node that bundles your variables into one named object
- input_1
- PROMPT_VAR
If Dragos Variable is the atom of the Dragos Scene Builder pack, Dragos Object is the molecule. It's the node that takes several PROMPT_VAR inputs - the named text chunks produced by Dragos Variables, structured builders, or other objects - and bundles them into a single named object, so your scene JSON stays tidy instead of becoming a flat pile of top-level keys.
Think about what a character actually is in a scene: a name, an age, clothes, a pose, maybe a prop. Without this node, all of that lands in the compiled JSON as separate sibling keys. With it, you get one clean character object holding everything, which is exactly the shape an LLM likes to read when you ask it to convert the scene into a prompt. That structured-nesting habit is the whole point of the pack, and this node is how you do it.
How it works
Give it an obj_name and it becomes the key for the bundle. Every PROMPT_VAR connected to it gets pulled apart and its name/value pair is merged into one dictionary, then that dictionary is emitted as a new PROMPT_VAR under your chosen name. It's a grouping operation with zero magic - same deep-merge behavior the rest of the pack uses, so if two connected variables share a name, the later one wins.
The inputs that matter
obj_name(STRING, default"object") - the name the whole bundle gets in the scene JSON. Make it the object's identity:character,vehicle,background_element.input_1(PROMPT_VAR) - your first variable or builder to bundle. The node is built to accept more than one wired in, even though the base definition only lists the first.
The single output, PROMPT_VAR, is the named bundle, ready to feed the Dragos Scene Compiler or another object higher up the chain.
Where it sits in a workflow
The natural pattern: a few Dragos Variables for free-text details, maybe a Dragos Structured Builder for the dropdown-driven parts, all wired into one Dragos Object named character (or subject, or whatever the schema calls it). That object then joins the rest of your scene at the compiler. If you're building a scene entirely from scratch rather than from the pack's preset schema files, this is the node you'll use constantly.
Installing the pack
The nodes all ship together, so install once:
cd ComfyUI/custom_nodes
git clone https://github.com/drago87/Dragos-SceneBuilder
Restart ComfyUI after cloning - or use ComfyUI Manager and search "Dragos Scene Builder". No pip dependencies (pure Python stdlib) and no model downloads come with the pack, so there's nothing heavier to wrestle with.
Common gotchas
- Empty
obj_namereturns nothing. Same silent failure as the Variable node - the whole object vanishes from your scene without an error. - No valid inputs means no output. If every connected variable is empty or unnamed, the node produces
None. Connect real, named variables. - Name collisions get overwritten, not doubled. Two inputs carrying the same internal name collapse to one key during the merge. It's usually what you want; just don't count on it to hold duplicates.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| obj_name | STRING | object | — |
| input_1opt | PROMPT_VAR | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| PROMPT_VAR | PROMPT_VAR | — |