Introducing the Flow Engine: Visual Automation Builder
Build complex conversation flows without writing a single line of code. Discover conditions, variables, and tool integrations.
What Is a Flow?
A flow is a directed sequence of steps that runs when an incoming message matches a trigger keyword or phrase. Flows execute before the LLM, so you can intercept common queries — order status, opening hours, appointment booking — and handle them deterministically without spending API tokens.
Each flow consists of an ordered list of steps. The platform currently supports seven step types: Send Message, Ask Question, Branch, Set Variable, Call Tool, Human Handoff, and End.
Step Types Explained
Send Message delivers a static text message to the user. Ask Question sends a prompt and waits for the user's reply, storing the answer in a named variable. Branch evaluates a condition (e.g. {answer} == 'yes') and routes the conversation down different paths.
Set Variable writes an arbitrary value into a named slot for later steps to reference. Call Tool invokes a connected MCP server function — for example, looking up an order number entered by the user. Human Handoff pauses the bot and alerts your agent queue. End terminates the flow and returns control to the LLM.
Building a Flow in the Dashboard
Open an instance, click the Flows tab, and hit 'New Flow'. Enter a trigger keyword (e.g. 'track order') and start adding steps with the '+' button. Drag handles let you reorder steps; the branch step shows a mini-preview of its two paths.
Save the flow and test it by texting the trigger keyword to your linked number. The dashboard's debug log shows each step executed, the variable values captured, and any tool call results — making it easy to spot mistakes without reading raw logs.
Tips for Production Flows
Keep individual flows focused on a single task. A flow that handles order tracking should not also handle returns — create a separate flow for each intent. This makes maintenance straightforward and avoids branch-explosion complexity.
Use the Set Variable step to normalise user input before passing it to a tool. Strip whitespace and convert to uppercase so that ' ORD-123 ' and 'ord-123' both resolve correctly against your CRM's order lookup function.