Skip to main content

Troubleshooting AI Procedures

Most problems show up in the editor, on the line that causes them. This article lists the most common messages, what they mean, and how to fix them.

Messages on a line

A red line locks every line after it until you fix it. The header then shows "Fix the line marked in red to test or publish". If a line has no step, it shows "Every line needs a step: check the lines marked in grey". Edit the line, then press Enter to check it again.

Message

Fix

There's no action called “…”. Pick one with / or reword the line.

Type / to see the actions your business has

There's no team called “…”.

Use a team's exact name

There's no published sub-procedure called “…”.

Publish the sub-procedure first, or fix its name

There's no ticket type called “…”. / There's no task type called “…”.

Use the exact type name, or create it in settings

There's no topic called “…”.

Use an existing topic, or create it in settings

@… doesn't exist at this point.

Collect the value on an earlier line, or pick it again with @

This code doesn't pass the check: …

Open the code editor and fix it, or use Generate with AI there

Procedures can't do this. …

The step isn't possible, such as sending an email or waiting two days. Remove it or hand off instead

This line asks several things that each need their own question. Put each one on its own line.

Split the questions onto separate lines

This step doesn't do “…”. Reword it, or split it into steps the builder can do. (amber)

Part of the line was left out. Put it on its own line

Nothing in the sentence gives …, so the agent will ask the customer for it. (amber)

Fine if you want the customer asked. Otherwise collect it on an earlier line

This line has no step yet. (grey)

Click Check again

Messages when you test or publish

These show in a red banner under the header, starting with where the problem is, such as "step 3 › branch 2 › instruction 1", or "workflow:" for a problem with the whole procedure.

Message

Fix

the workflow can run out of steps here — every route through a main workflow must reach an «End» or «Handoff»

Make every route, including the one where no branch matches, end with End or Hand off

a condition cannot sit inside a branch (2-level rule)

Combine the checks into one condition, or put them one after another

only one ask, end or handoff chip is allowed per instruction

Split the line in two

content after the «…» chip — an ask, end or handoff must be the last thing in the instruction

Move what comes after it to a new line

sub-procedure '…' is not published

Publish it, or pick the right one in the Run sub-procedure step

sub-procedure '…' needs input '…'

Fill that input in the Run sub-procedure step

declared output '…' is never produced by any step

Add a step that saves a result under that name

'…' is a list, so it has no field '…' — pick one item first

Let the customer pick one item first, or use Set variable with "The first item of a list"

this store action is not available — the ecommerce integration is disconnected or does not support it

Reconnect your store, or remove the step (your store may not support it)

Common questions

My procedure doesn't start in real chats. Check that it's published, on the right channel, and that When to use matches how customers really ask. Test chats skip this check, so try a real chat too.

The agent asks for something the customer already said. Name the answer the same way throughout, and give the question a clear subject, such as "Ask for their order number".

The conversation is handed off unexpectedly. Look for a failed Read or Write with no condition handling it, a question that got no usable answer, or a condition the AI couldn't decide.

A condition picks the wrong branch. Give it a clear subject, such as "If @bookings is empty" rather than "If there are none", or switch it to Code.

Best practices

  • One instruction per line, in the order it should happen.

  • Use your account's exact names for teams, ticket types, topics and sub-procedures.

  • Be specific: "Offer the 3 earliest times with the same doctor", not "do the usual thing".

  • Give each set of conditions an ELSE.

  • Use Run code or a Code condition for exact maths and dates.

  • Keep instructions to yourself, such as "keep only the confirmed bookings", out of what the customer hears.

  • Start with the main path, test it, then add branches one at a time.

Did this answer your question?