Conversation Node
Overview
The Conversation node is the heart of every flow. It's the only node type that directly communicates with the user — generating responses, handling dialogue, and deciding when to transition to the next step. Every flow must have at least one Conversation node (the start node), and most flows have several.
Instruction Modes
Prompt Mode (Default)
The node's instruction becomes the system prompt for the LLM. The AI generates conversational responses based on this prompt and the conversation history. This is the mode you'll use 95% of the time.
Example prompt:
You are a scheduling assistant for Acme Dental. Ask the caller for their preferred date and time. Only offer weekday slots between 9 AM and 5 PM. Confirm the details before proceeding.
The prompt supports {{variable}} substitution, so you can personalize responses dynamically:
You are speaking with {{caller_name}}.
Their account number is {{account_id}}.
Greet them by name and ask how you can help.Static Mode
The instruction text is sent directly to the user verbatim — no LLM call is made. Use this for fixed messages like greetings or disclaimers.
Important: If the conversation revisits a static node (e.g., via a loop), it automatically switches to prompt mode on subsequent visits. Static mode only applies on the first visit.
Transitions
Transitions are the most powerful feature of the Conversation node. Each transition is a condition that, when met, moves the conversation to a connected node.
How Transitions Work
Under the hood, each transition condition is registered as a tool/function call with the LLM. When the AI determines a condition is met, it fires the corresponding tool call instead of generating a regular response. The engine then follows the edge to the destination node, which generates the actual response.
This means transitions and responses happen in a single LLM call — the source node decides to transition, and the destination node speaks. This is what keeps Flow Builder fast for voice.
Adding Transitions
Click the + Add Transition button on a Conversation node. Each transition has:
- Condition — A natural language description (e.g., "The user confirms their appointment", "The caller wants to speak to a manager")
- Edge handle — A green dot appears on the right side of the node. Drag from it to the destination node.
Must Respond First
By default, a Conversation node skips transition evaluation on its first visit. The AI responds first, then evaluates transitions on subsequent messages. This prevents the AI from immediately transitioning away before the user hears the node's response.
This behavior is automatic and ensures every node gets to "speak" at least once before transitions fire.
AI-Powered Features
AI Suggest
Click the sparkle icon to have AI analyze your prompt and automatically suggest likely transition conditions. For example, if your prompt asks about appointment booking, AI Suggest might generate transitions like "User provides a date and time" and "User wants to cancel instead."
Improve Prompt
Click the magic wand icon to have AI rewrite your prompt into an optimized, task-based framework designed for voice and chat interactions. It restructures your instructions for clarity and consistency.
Global Nodes
A Conversation node marked as Global becomes a transition target available from every other Conversation node in the flow — without explicit edges. This is ideal for universal actions like:
- "Transfer to a human agent"
- "User says goodbye"
- "Emergency / escalation"
Global nodes reduce visual clutter on the canvas and ensure consistent handling regardless of where the user is in the flow.
Few-Shot Examples
Add example exchanges to guide the LLM's behavior. Each example is an input/output pair that demonstrates how the AI should respond in specific situations. These are injected into the prompt as few-shot examples, improving response quality and consistency.
Advanced Settings
| Setting | Description |
|---|---|
skipResponse | If enabled, the node does not generate a response — it only evaluates transitions. Useful for routing nodes that should silently pass through. |
blockInterruptions | Prevents the user from interrupting while the AI is speaking. Useful for important disclosures or legal statements in voice flows. |
| LLM Override | Override the flow's default LLM model for this specific node. Useful when certain nodes need a more capable (or cheaper) model. |
Edge Handles
| Handle | Position | Color | Purpose |
|---|---|---|---|
| Input | Top | Blue | Receives connections from other nodes |
| Transition | Right (one per condition) | Green | Connects to the destination node for each transition |
| Async | Bottom | Yellow | Connects to nodes that run in parallel (non-blocking) |