A conversation node that may call its own set of flow functions whenever the LLM decides, for open-ended steps inside a structured flow.
The Subagent node (type: "subagent") behaves like a conversation node with one difference: the LLM may call the functions you tick, at any point while the flow is in this node. Use it for a step that needs judgement and tools together, such as "help the caller find a time", where the agent may check availability several times before booking.
The node's instruction and the global prompt make up the system prompt, as in a conversation node.
Each ticked function is offered to the LLM on every reply in this node, next to the prompt transitions and global nodes.
When the LLM calls a function, it runs with the function's own execution options (speak during execution, typing sound, speak after execution), and the result goes back to the LLM.
Transitions follow the same rules as a conversation node, including the always edge and the else edge.
{ "id": "node_find_time", "type": "subagent", "name": "Find a time", "instruction": { "type": "prompt", "text": "Help the caller find a free slot. Check availability for each day they suggest. Offer at most three times." }, "tool_ids": ["tool_check_availability"], "edges": [ { "id": "edge_booked", "destination_node_id": "node_confirm", "transition_condition": { "type": "prompt", "prompt": "The caller picked one of the offered times" } } ]}
Unticked flow functions are not available here, even if other nodes use them.
The node is not a separate agent: it shares the call's voice, transcript and variables. To hand the call to another agent, use the agent transfer node.
In flex mode, ticked tools become general functions available throughout the call.