DESIGNER GUIDE

Build deterministic flows

Design controlled business processes with explicit steps, decisions, user interfaces, human approvals and approved system actions. Use AI to accelerate the design, then inspect and test every important path.

Solution designer20–30 minutes

Scope: individual Flow project

AI can design the process. The flow controls execution.

Designer can generate and update a flow from plain-language instructions. The resulting canvas remains an explicit process that designers can inspect, connect, configure, test and version.
Interpretation and control are different jobsAgentic workers interpret open-ended requests. Flows control the sequence, branches, validations, approvals and approved outcomes.

What is a flow?

A flow is a visual graph of connected steps. Each step performs a defined function, and each connection controls what happens next.

  • Structured user interfaces
  • Conditional branches
  • Agentic workers
  • Other flows
  • Human approval
  • Model interactions
  • HTTP requests
  • MCP capabilities
  • Installed extension steps
Canvas
The visual workspace containing the process steps and their connections.
Step
One defined unit of work, such as displaying a card, evaluating a condition or calling a worker.
Connection
The path from one step or outcome to the next.
Variables
Values passed into, between and out of process steps.
Run Demo
The interactive preview used to test the current draft.
Issue indicator
A count showing that part of the project may require attention before deployment.
Validation
The readiness check performed before continuing toward deployment.

A flow uses only the capabilities its process actually requires. Many useful flows contain no AI step at all.

A continuous example

This guide uses one fictional ACME demonstration architecture: a customer-facing flow, an agentic worker that classifies requests and a deterministic resolution process.

  • Customer-facing flow: ACME Customer Service Main Menu
  • Agentic worker: ACME Support Process Router
  • Controlled process: ACME Late Delivery Resolution
Customer opens the support menu
              ↓
Chooses an option or enters an open question
              ↓
Agentic Worker classifies the request
              ↓
Conditional Branch evaluates the result
              ↓
Go to Flow starts the approved process
              ↓
Deterministic resolution steps
The worker interprets; the flow decides what happens nextThe process router may return that a request appears to concern a late delivery. The flow decides which branch to follow and which deterministic resolution process to start. Not every flow needs an agentic worker.

On this page

Before you begin

A short amount of preparation removes most of the rework that follows an unclear process design.

  • Confirm that the correct workspace is active.
  • Define one clear business outcome for the flow.
  • Identify the information the process receives.
  • Identify the information it must return or display.
  • List the important decisions and branches.
  • Decide which actions must remain deterministic.
  • Identify any human approvals that are required.
  • Confirm which workers, tools or other flows are available.
  • Prepare fictional test data for each important route.
Sketch the process before promptingWrite down the start, main decisions, approved outcomes and end states. A clear process outline produces a flow that is easier to inspect and test.

1. Create a Flow project

A Flow project produces an explicit visual process you can inspect and control.

Create a new project and select Flow for an explicit visual business process.
  1. 1Open Designer Home.
  2. 2Select New project.
  3. 3Enter a clear project name.
  4. 4Select Flow.
  5. 5Review the project-type description.
  6. 6Select Create.
  7. 7Describe the process when the Flow Editor opens.
Use the business outcome as the project nameGood examples include Late Delivery Resolution, Commercial Insurance Quote, Employee Onboarding, Quality Claim Review and Customer Offer Creation. Avoid names such as “New Flow”, “Test” or “Version 2”.

The other project types in this dialog are covered in the Getting started guide.

2. Describe the process

Designer generates the first version of the process from your description, then you inspect and refine it.

Describe the required process on the left, inspect the generated canvas and test it in Run Demo.
AI design conversation
Describe what the process should achieve, what it should collect, which decisions it makes, which workers or flows it calls, what it must not do and which outcomes it presents.
Visual canvas
Inspect the complete process, select steps, add or remove steps, review connections, reorganise the layout and fit a large process into view.
Run Demo
The interactive experience produced by the current draft, shown beside the canvas.
Create a deterministic flow called [name].

Purpose:
[One clear business outcome]

Inputs:
- [Input 1]
- [Input 2]

Process:
1. [First step]
2. [Validation or decision]
3. [Approved action]
4. [Completion]

Branches:
- If [condition], go to [outcome]
- If [condition], go to [outcome]

The flow may:
- [Approved actions]

The flow must not:
- [Prohibited actions]

Demo requirements:
- Use fictional embedded data
- Do not call external systems
- Show realistic forms, choices and outcomes
Example requirementCreate a deterministic Late Delivery Resolution flow. Collect the order number, retrieve fictional delivery information, explain the current status and present only approved resolution options. Do not invent compensation or call external systems.
  1. 1Describe the business outcome.
  2. 2Name the required inputs.
  3. 3List the main process steps.
  4. 4Define the important branches.
  5. 5State any approval or escalation requirements.
  6. 6State what the flow must not do.
  7. 7Ask Designer to generate the first version.
  8. 8Inspect the complete canvas before making another request.
  9. 9Make focused follow-up changes one at a time.
Make one purposeful change at a timeA focused instruction such as “add an order-number validation before the lookup” is easier to verify than asking Designer to restructure several unrelated areas at once.
Generated does not mean approvedReview every important step and connection before using the flow with real users or systems.

3. Understand the Editor controls

The Editor toolbar and canvas controls shown in the screenshot above cover saving, data, preview and deployment.

Save
Save the current draft.
Variables
Open the project’s data and variable controls.
Run Demo
Preview the current experience.
Deploy
Begin the readiness and deployment journey.
Additional project actions
Open version, layout, import and export controls.
  • Fit view
  • Zoom in
  • Zoom out
  • Minimap
  • Canvas movement
Large processes extend beyond the viewportA flow may contain many steps outside the visible area. Use Fit view and the minimap rather than assuming that only the visible steps exist.

4. Add process steps

Steps are the units of work in the process. Add them deliberately and connect them to explicit routes.

The Add Step dialog provides built-in steps and installed extension steps.
Steps
Built-in process capabilities provided by the Designer.
Extension steps
Additional steps exposed by installed extensions.
Built-in step types visible in the Add Step dialog
StepTypical purpose
Human ApprovalPause or route work for a human decision according to an approval policy
Card RenderPresent structured information or collect input using a card
Conditional BranchSelect an explicit route according to a condition
Agentic WorkerInvoke a configured agentic worker
Go to FlowContinue through another reusable flow
HTTP CallCall an approved HTTP endpoint
LLM ChatUse a model for a bounded language task inside the process
MCPInvoke an approved MCP capability
The step inventory variesThe available steps depend on the current Designer version and the extensions installed in the workspace. Treat the screenshot as an example of the current interface rather than a permanent exhaustive list.
  1. 1Open the Add Step control.
  2. 2Search for the required step.
  3. 3Choose between built-in and extension steps.
  4. 4Select the step type.
  5. 5Give the new step a meaningful name.
  6. 6Complete its required settings.
  7. 7Connect it to the appropriate previous and next steps.
  8. 8Run the affected path before continuing.
Name the action, not the technologyPrefer Validate order number, Classify customer request, Check delivery status and Present approved options. Avoid Agentic Worker 1, Branch 3, HTTP Call and New Card.

5. Configure an Agentic Worker step

Selecting a step opens its settings panel, where the step name, required resources and interaction behaviour are configured.

Select a step to configure its name, required resource and interaction behaviour.
Step name
The name used to identify the step on the canvas and during design.
Agent
The Agentic Worker the step invokes. This field is required in the shown interface.
Conversational
Off returns one response and the flow continues. On keeps the conversation with that worker open until it ends, then the flow proceeds.
ACME example configurationStep name: Classify customer request. Agent: ACME Support Process Router. Conversational: Off. The process router performs a single classification and returns a structured result. It is not intended to hold an open customer conversation.
  1. 1Add an Agentic Worker step.
  2. 2Select the step on the canvas.
  3. 3Enter a meaningful step name.
  4. 4Select the required worker.
  5. 5Decide whether the interaction should be single-response or conversational.
  6. 6Connect the step to the incoming path.
  7. 7Connect its output to the next decision or action.
  8. 8Test the worker directly.
  9. 9Test it again from inside the flow.
Do not make a router conversational by accidentA classification worker should normally return one controlled result. A conversational session can delay or confuse the deterministic process that follows it.

6. Combine workers and deterministic flows

Use the worker for interpretation and the flow for the decision, the data and the approved outcome.

Open customer message
        ↓
Agentic Worker step
        ↓
Structured classification
        ↓
Conditional Branch
        ↓
Go to Flow
        ↓
Controlled resolution
  1. 1The customer-facing flow receives an open-text message.
  2. 2The Agentic Worker step sends it to the process router.
  3. 3The worker returns a stable classification result.
  4. 4A Conditional Branch evaluates the result.
  5. 5A Go to Flow step starts the relevant deterministic process.
  6. 6The called flow collects information and performs the approved resolution steps.
detected_intent
confidence
clarification_question
called_process
suggest_human_support

These field names are an example from the ACME demonstration. They are not mandatory Greentic fields, and not every worker returns JSON. The designer defines the contract required by the receiving flow.

Branch on stable fieldsDo not make the flow interpret a long paragraph returned by the worker. Ask the worker for a predictable result that a branch can evaluate reliably.
The worker must not own the business outcomeThe worker may identify that a request concerns late delivery. The deterministic process should decide which data is required and which resolution options are permitted.

Worker configuration is covered in the Agentic workers guide.

7. Use specialised steps appropriately

Match each requirement to the step designed for it, and keep AI where interpretation is genuinely needed.

Choosing the right step for a requirement
RequirementRecommended step
Ask a person to approve a sensitive actionHuman Approval
Display structured information or collect user inputCard Render
Route according to explicit data or stateConditional Branch
Interpret an open-language requestAgentic Worker
Reuse another deterministic processGo to Flow
Call a permitted web endpointHTTP Call
Perform a bounded language operationLLM Chat
Invoke an approved MCP capabilityMCP
Use AI only where interpretation is neededDo not replace explicit business rules with an LLM step when a deterministic condition can express the decision clearly.

8. Plan variables, inputs and outputs

Predictable data names make branches, called flows and tests far easier to reason about.

  1. 1Identify the data the flow receives.
  2. 2Give each value a clear stable name.
  3. 3Pass only the information required by each step.
  4. 4Map step outputs deliberately.
  5. 5Avoid storing credentials or secrets in ordinary flow variables.
  6. 6Define what the flow returns when it completes.
  7. 7Include fallback values or paths for missing information.
Example variables from the ACME demonstration
VariablePurpose
customer_messageOriginal open-text request
detected_intentClassification returned by the process router
order_numberOrder reference supplied by the customer
delivery_statusFictional or retrieved delivery state
resolution_choiceApproved option selected by the customer
Use the controls the Editor providesDefine and map data using the current Variables control and the individual step settings. These names are an example only.
Use one name for one conceptDo not alternate between names such as order_id, order_ref and order_number unless they represent genuinely different values.

9. Run the flow in Demo

Run Demo tests the current draft through the same structured interaction the user will experience, without leaving the Editor.

  1. 1Save the current draft.
  2. 2Open Run Demo.
  3. 3Start from the beginning of the interaction.
  4. 4Select an available menu option or enter an open question.
  5. 5Complete every required input.
  6. 6Confirm that the expected branch starts.
  7. 7Confirm that cards and messages contain the correct information.
  8. 8Repeat the test using alternative wording.
  9. 9Test missing and invalid information.
  10. 10Reset the interaction before testing an independent scenario.
  11. 11Correct the canvas and run the scenario again.
Test every route, not only the first screenA polished main menu does not prove that each branch, called flow or completion path works correctly.

A complete test approach is described in the Testing and troubleshooting guide.

10. Save, version, import and export

Record meaningful project states so significant design changes remain reversible and reviewable.

The project menu provides versioning, layout, import and export actions.
Version history
Review versions recorded for the project.
Save as version
Create a named or recorded project version before significant changes or release.
Auto-layout
Rearrange the canvas automatically.
Import flow
Import supported flow content.
Export flow
Export the flow using the supported Designer format.
Export to GitHub
Export supported project content to a connected GitHub destination.
  1. 1Save the draft.
  2. 2Complete a representative Run Demo test.
  3. 3Open the project actions menu.
  4. 4Select Save as version.
  5. 5Record a meaningful version description where requested.
  6. 6Continue editing in the draft.
  7. 7Use Version history when reviewing previously saved states.
Version before restructuringSave a version before replacing an important branch, changing a worker contract or reorganising a large process.

11. Validate before deployment

Designer performs a readiness check as the project moves toward deployment.

A successful readiness check confirms that Designer found no blocking configuration issues.
  • A successful result states that no issues were detected.
  • The summary may include the number of cards and process steps.
  • Let’s go continues the publishing or deployment journey.
  • The counts shown belong only to the ACME demonstration.
Validation is not business acceptanceA clean technical check does not prove that every business rule is correct, that every user route has been tested, that every external system will respond, that every approval policy is suitable or that the customer has accepted the experience.
  1. 1Save the current draft.
  2. 2Run representative tests.
  3. 3Resolve the visible issue count.
  4. 4Continue to the deployment readiness check.
  5. 5Review the validation result.
  6. 6Return to the Editor when an issue remains.
  7. 7Continue only when the project is technically ready and the business test has passed.

The next stage is covered in the Publishing and deployment guide.

Flow review checklist

Work through this list before the flow is shared, tested with customers or moved toward deployment.

  • The flow has one clear business outcome.
  • The start and completion states are clear.
  • Inputs and outputs have stable names.
  • Important decisions use explicit branches.
  • Agentic workers are used only where interpretation is required.
  • Worker outputs follow a stable contract.
  • Every called flow exists and is available.
  • Sensitive actions use human approval where required.
  • Only approved external capabilities are used.
  • Every important branch has been tested.
  • Missing and invalid inputs follow a controlled path.
  • Customer-facing text and cards are understandable.
  • The draft has been saved.
  • A meaningful version has been recorded.
  • The project passes the readiness check.

Flow troubleshooting

Common design-time problems and the practical action that resolves them.

Flow troubleshooting
ProblemLikely causeAction
Most of the process is off-screenThe generated flow is larger than the current viewportUse Fit view, zoom controls and the minimap
A new step cannot be configuredA required resource or field is missingSelect the step and complete every required setting
An Agentic Worker step cannot runNo available worker is selectedConfigure or publish the worker and select it in the step
The wrong process startsThe worker output or branch condition is ambiguousTighten the output contract and review the branch logic
A branch is never reachedIts condition does not match the actual variable valueInspect the expected output and test the boundary case
A called flow does not startThe destination flow is unavailable or the route is incompleteConfirm the target and inspect the connection
The demo stops waiting for inputA card or step expects a user actionComplete the displayed input or button action
A change is lost during later editingIt was not saved or recorded as a versionSave regularly and use Save as version
The project shows an issue countOne or more required settings or connections need attentionInspect the affected steps and complete the missing configuration
Validation succeeds but the process is wrongTechnical validation does not check every business ruleComplete business testing and customer acceptance
Back to Designer Guides