Docs
Flows

Workflow Builder

Use the visual workflow builder to define your Flow's AI logic.

Workflow Builder

The workflow builder is the heart of every FormWise Flow. It is a visual editor where you define what your Flow actually does - how it processes input, what AI models it uses, how it branches, and how it produces output.

You will find the workflow builder in the Design tab of any Flow.

[Screenshot: The workflow builder canvas with a Start node connected to an Agent node]


How it works

Think of a workflow as a flowchart. Data enters at the top, flows through a series of steps (called nodes), and produces a result at the end. Each node does something specific - send a prompt to an AI model, make a decision, transform data, or call an external service.

Nodes are connected by edges (the lines between them). Edges define the order in which steps run and how data moves from one step to the next.

Workflows in FormWise are fixed-layout - nodes snap into a clean top-to-bottom structure. You do not have to manually position anything; the editor keeps the graph tidy as you build.


The canvas

The canvas is the large open area where you build your workflow.

Moving around

  • Pan by switching to the Hand tool in the toolbar and dragging the canvas. With the Pointer tool, dragging on empty space selects several nodes at once.
  • Zoom with your scroll wheel, or use the zoom controls in the toolbar.
  • Fit to view by clicking the maximize icon in the toolbar - handy after building a long workflow.
  • Select a node by clicking it.
  • Move nodes by dragging (in fixed-layout mode the editor auto-positions them; you mostly do not need to).

The viewport toolbar

A floating toolbar in the corner of the canvas gives you quick controls:

  • Pointer / Hand - switch between selecting nodes and moving around the canvas.
  • Zoom in / Zoom out and a percentage readout of the current zoom level.
  • Fit to view - re-centers and scales the whole workflow into view.
  • Undo / Redo - step backward or forward through your recent changes.

Save state

Changes save automatically as you work. A small dot near the top-right of the editor shows whether your draft is Saved, Saving, or has Unsaved changes (hover it to see the label).


The Start node

Every workflow begins with a Start node. This is the entry point, and it has two slots:

  • Questions - your form questions. Each answer becomes a variable later nodes can use. A Flow with questions runs once with the answers (a Form Flow). See Form Builder.
  • Conversation Starters - suggested first messages for the chat. A Flow without questions runs as a chat (a Chatbot Flow), and every node can read the user's message as {{workflow.user_message}}.

The Start node cannot be deleted. There is exactly one per workflow.


Adding nodes

There are a few ways to add a new node:

From an edge (the most common)

  1. Hover over the line connecting two nodes.
  2. Click the + button that appears on the edge.
  3. Choose the node type from the dropdown.
  4. The new node is inserted between the two existing nodes automatically.

Each node type in the menu shows its icon, label, and a short tooltip explaining what it does. The menu lists AI Prompt (the Agent node), Classify, Evaluator, Multi Run (the Parallel node), and Webhook.

If / Else, Set State, and Transform are not in the menu. To add one, ask the Ask Assistant (for example, "add an If / Else after the Summary step"). See Node Types.

Inside groups and branches

For nodes that contain other nodes (like Parallel, If/Else, or Classify), use the + inside each branch slot to add nodes to that specific branch. The Questions and Conversation Starters slots under the Start node have their own Add Question and Add Starter buttons.

[Screenshot: The node picker dropdown showing the available node types with icons]


Connecting nodes

In the fixed-layout editor, edges are created automatically when you add a node from an existing edge - you do not draw connections by hand. The result is a graph that is always valid by construction.

A few rules worth knowing:

  • Branching nodes - If/Else and Classify produce multiple downstream branches. Each branch becomes its own column in the canvas, and you can add nodes inside any branch independently.
  • Parallel (Multi Run) - a Parallel node opens multiple lanes that run at the same time. The workflow waits for all lanes to finish before it continues.
  • Invalid graphs are blocked - you cannot create disconnected nodes, orphan branches, or cycles.

To remove a node, open the ··· menu on the node and choose Delete. The same menu has Edit, Duplicate, and Ask AI (which sends the node to the Ask Assistant). Edges into and out of the deleted node are reconnected automatically.


Configuring a node

  1. Click any node on the canvas.
  2. The settings panel slides in from the right.
  3. Fill in the node's settings - the available fields depend on the node type. An Agent node asks for a model, prompt, and output settings; an If/Else node asks for conditions; a Webhook node asks for a destination URL and what data to send (or, in Advanced mode, a method, custom headers, and body).
  4. Changes save automatically as you make them.

For a detailed walkthrough of the most common node type, see Configuring Agent Nodes. For every node type and what it does, see Node Types.

[Screenshot: The settings panel open for an Agent node, showing model picker and prompt editor]

Node warnings

If a node references a variable that no longer exists, or uses an integration that is not connected, it shows a warning on the canvas (Missing variable or Missing integration). Hover the warning to see which reference or integration is missing.


Variables flow between nodes

Every node can read data from the nodes that came before it. That is how a workflow does meaningful work - one node's output becomes another node's input.

Inside any text field that accepts variables (system instructions, prompts, conditions, webhook bodies), you can reference:

  • Workflow variables from the Start node (form answers, or the chat message as {{workflow.user_message}}).
  • Predecessor outputs from upstream nodes, such as an Agent node's {{Summary.message}} or an Evaluator's answers.
  • State variables stored by Set State nodes, as {{state.<name>}}.
  • Branch outputs from steps inside Multi Run, Classify, and If/Else branches.

Type @ in any compatible field to open the variable picker, which shows you exactly what is available at that point in the workflow. For the full story, see Variables and Data.


Testing from the canvas

You can test your workflow at any time without publishing it:

  1. Use the live preview panel on the right side of the Design tab. It shows your Flow the way users see it, and you can drag its edge to resize it.
  2. Fill in the form (or send a chat message, depending on the Flow style) and submit.
  3. Watch each node light up on the canvas as it runs.
  4. After the run, hover any node on the canvas to see what input it received and what output it produced, including steps hidden from the chat.

The preview always runs your current draft - you do not need to publish a version to test changes.

For structured, repeatable testing across many inputs, use the Quality tab instead.


Ask Assistant

Not sure where to start? FormWise includes an Ask Assistant that can chat with you, build or edit your workflow from a plain-language description, or generate code for you.

The Ask Assistant is included with the Pro and Agency plans, and with AppSumo tier 2 and above.

  1. Click the Ask Assistant button in the workflow builder.
  2. Describe what you want your Flow to do - "Take a blog topic and generate an outline, then write the full post."
  3. The assistant generates a workflow with the right nodes, connections, and starter prompts.
  4. Review the generated workflow, tweak settings to taste, and you are good to go.

The assistant is great for first drafts. You can always modify the generated workflow afterward. To ask about one specific node, open that node's ··· menu and choose Ask AI.


Saving, versioning, and publishing

Drafts save continuously, but a published version is a frozen snapshot of your workflow that real users actually run.

  1. When your workflow is working the way you want, run a Quality Check to catch any regressions.
  2. Open the Publish & Share tab and click Publish. Give the version a name.
  3. Leave Make this version live on to make it the version your users run.
  4. Older versions stay available so you can roll back if needed.

See Versioning for the full story on snapshots, rollback, and side-by-side comparison.


Troubleshooting

Common issues and how to fix them:

  • "Missing variable" - a prompt or condition references a variable that does not exist anymore (often because the upstream node was renamed or deleted). Type @ to open the variable picker and re-insert the correct reference.
  • "Missing integration" - the node uses a connected service that is not connected for your organization. Connect it, or remove it from the node.
  • Preview runs but produces wrong output - hover each node on the canvas after the run to see exactly where things diverged. Often a prompt is missing context, or a Classify node is routing to the wrong branch.
  • Webhook node fails - check the URL, method, and headers, then hover the Webhook node after a test run to see what it sent and got back.
  • Workflow seems stuck - if a node uses an external service (Webhook, an integration, a slow model), it may be waiting on a response. The canvas highlights the node that is running.

If you are still stuck, see Troubleshooting or open Execution History to inspect recent runs in detail.


Next steps

To learn about every node type you can add, see Node Types. To dive deeper into the Agent node specifically, check out Configuring Agent Nodes. To understand how data moves through your workflow, see Variables and Data.

On this page