Free Intro Class
    Botspot Logo

    agenthub · transform.combine

    Combine

    Merge several structured outputs into one. Point several nodes at it and it fans them in.

    category Transformin dataout text · message · combinedexecution syncmodel cost none

    Why the node earns its place

    Its input accepts many edges, and the executor hands it a bag keyed by source node. That is the whole point: three LLM nodes each producing a structured verdict become one object, without an intermediate node per pair.

    Two strategies, and the difference matters. merge deep-merges every input into one flat object — right when the inputs describe different fields of one thing. sections nests each under its source key — right when they are separate assessments you need to tell apart.

    How it works at run time

    1. 1
      Parse each incoming value: JSON strings are parsed, and an assistant message object is unwrapped to its content and parsed too — so a raw LLM output needs no preparation.
    2. 2
      Apply the strategy: flat merge, or nest under source keys.
    3. 3
      Render the optional template against the result with simple placeholder substitution, otherwise emit formatted JSON.

    What comes out

    combined  the merged object
    text      the rendered template, or the JSON
    message   the same as an assistant message

    What you wire

    Inputs

    • data *
      object · accepts several edges

    Outputs

    • text
      string
    • message
      object
    • combined
      object

    Configuration

    KeyTypeDefault & optionsWhat it does
    strategy *stringdefault "merge" merge · sectionsmerge: deep-merge all inputs into one JSON object. sections: nest each input under its source key.
    templatestringOptional Jinja-style summary template rendered against the merged data. When set, the output 'text' port carries the rendered string.

    What usually goes wrong

    Watch for this

    merge lets a later input overwrite an earlier one's field silently — two nodes both emitting summary leave one of them. If the inputs are peers rather than parts, use sections.

    The template is plain {{key}} substitution against top-level keys only. It is not Jinja; loops and dotted paths do not work.

    Behaviour & provenance

    buildersChat & voice agents, Image workflows, Video workflows, Automations
    routesno
    side effectsnone — computes only
    replay safetynot applicable
    talks tonothing outside the run
    holdsno credentials