(AV) Assembler
(AV) Assembler is the plain-text glue
- prompt
The (AV) Assembler is the simplest node in the ArchViz pack, and the one people reach for when presets aren't quite what they need. It's a plain-text concatenator: up to six string inputs in, one joined prompt out, with empty slots silently skipped. If the (AV) Matrix is the all-in-one preset machine, this is the node for hand-rolling a prompt from whatever fragments you already have - including the outputs of the Matrix and Preset nodes.
How it works
Nothing clever, and that's the point. Each of fragment_1 through fragment_6 is an optional string. Non-empty fragments get joined with the separator (default ". "), a trailing period is appended, and the result comes out as prompt. Empty inputs are dropped, so you can leave slots 4–6 wired to nothing and it just works.
Inputs and outputs
- fragment_1 … fragment_6 (optional) - string inputs. Type straight into them, or wire in text from other nodes. They're declared
forceInput, so they present as sockets first - the natural pattern is feeding them from (AV) Preset nodes or a Matrix output. - separator (required, default
". ") - what goes between fragments. - Output:
prompt(STRING) - the joined result, wired into your image node's text prompt.
A practical pattern: take the Matrix's compiled prompt into fragment_1, add your own hand-written line in fragment_2, and the Assembler merges them without you hand-editing a giant text box. Or use a couple of Preset nodes to grab curated fragments and assemble your own stack, separator and all.
Install
Part of the ArchViz Preset System pack - install once, get all four nodes under the "ArchViz" category:
cd ComfyUI/custom_nodes/
git clone https://github.com/ArrowsVisuals/archviz-preset-system.git
Restart ComfyUI. No Python dependencies (pure stdlib), no model files. ComfyUI Manager users search "ArchViz Preset System".
The one thing to know
This node is deliberately dumb - it won't reorder, de-duplicate, or apply a target-model dialect to your fragments. Feed it a Nano Banana edit-instruction fragment and run it into a Flux 2 node, and you're on your own for the translation; that's what the Matrix's target_model is for. Think of the Assembler as the escape hatch: full control, zero intelligence, and it does exactly as literally as it reads.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| separator | STRING | . | — |
| fragment_1opt | STRING | — | |
| fragment_2opt | STRING | — | |
| fragment_3opt | STRING | — | |
| fragment_4opt | STRING | — | |
| fragment_5opt | STRING | — | |
| fragment_6opt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |