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

SettingDescription
skipResponseIf enabled, the node does not generate a response — it only evaluates transitions. Useful for routing nodes that should silently pass through.
blockInterruptionsPrevents the user from interrupting while the AI is speaking. Useful for important disclosures or legal statements in voice flows.
LLM OverrideOverride the flow's default LLM model for this specific node. Useful when certain nodes need a more capable (or cheaper) model.

Edge Handles

HandlePositionColorPurpose
InputTopBlueReceives connections from other nodes
TransitionRight (one per condition)GreenConnects to the destination node for each transition
AsyncBottomYellowConnects to nodes that run in parallel (non-blocking)

Was this article helpful?