Agent
Configure an agent to perform a specific part of the flow, based on the system prompt. The flow continues through one of the configured goals. If that goal contains one or more slots the agent collects these and adds them to the variable context for further use in the flow.

Parameters
Name
The meaningful name for the agent.
System prompt
Specific instructions that describe the job of this agent. E.g. Ask caller for zip code
Allows variable substitution by placing a variable name between curly brackets e.g. {{currentTime}}.
Memory identifier
The meaningful name to store the interaction between this agent and the user. The interaction is shared with subsequent agents that have a matching memory identifier.
Iteration limit
Number of times the user can interact with the agent. If the iteration limit is met before the agent reaches a goal the fallback exit is chosen.
Single turn
If checked, the agent is forced to reach a goal within a single turn.
Take initiative
If checked, the agent will start the conversation instead of waiting for user input.
Goal
The next step the agent takes when the instructions from the goal description are met.
Slot
Contains a meaningful name of the slot for this goal, e.g. zipcode and a description for instructions about the slot. E.g. format the input to 4 numbers and 2 capital letters joined
Configured slots are returned by the agent and added to the variable context
Fallback
It is the default safety exit of an Agent node. It is the path the agent takes when it cannot confidently or safely fulfill a request.
Error
Error path is triggered when the platform or a component fails unexpectedly, not by agent reasoning.
Learn how the agent node works in the simple flow tutorial.
Guidelines for effective system prompts
Using effective system prompts in the agent is crucial for creating user friendly and consistent flows. When writing these system prompts it's important to use the following structure
Describe the type of agent you're looking for, this gives the agent context and character. The behavior of the agent differs based on this information. There's a difference between talking to Captain Jack Sparrow or Professor Snape.
You are a receptionist assistant for Concentrix Airlines.
You are a weather agent for Concentrix Meteo who can interpret and answer question about a weather forecast.
Describe what the agent has to do. This gives the agent the information it needs to perform the task. Be concise and descriptive and keep the amount of tasks low. If the number of tasks becomes to high the agent will not perform at its best, it's best to split the agent at this point to improve the consistency of the flow.
You need to determine the intent of the user and direct them to the next step.
Start by providing tomorrow's maximum and minimum temperature and ask if the user wants more information.
Add boundaries to the agent. This ensures the agent sticks to the task that is described above. Not including this section results in unwanted behavior.
you can't answer any other questions.
you can only use the provided data.
you always respond in English.
You are a weather agent who can interpret and answer question about a weather forecast.
Start by providing tomorrow's maximum and minimum temperature and ask if the user wants more information.
You can't answer any other questions and can only use the provided data. You always respond in English.
Learn more about the agent node in the Simple flow tutorial.
Template Interpolation
Text fields (Say, Agent, Menu prompts) use {{expression}} interpolation:
Syntax
Purpose
Example
{{expression}}
Variable lookup or expression
Hello {{name}}, you have {{items.length}} items
{{expression}} — evaluated by the Expression Engine, matches the next }}
Simple variable names like {{name}} resolve to a variable lookup
Complex expressions like {{items.filter(x => x.active).length}} are fully evaluated
The double-brace delimiter avoids collision with JSON content in system prompts
Non-printable results (objects, arrays) are JSON-stringified; null/undefined produce empty string
Errors preserve the original text and log a warning
What Template Interpolation Means in an Agent Node and Say Node
Configure an Agent Node
Inside the System Prompt field, you typed:
Testing {{As soon as
{{is typed, a template helper dropdown appearsThe dropdown lists:
Variables (
var boolean,var number,var userEndpoint, etc.)Slots from Test (agent node) (example tooltip: Variable – boolean)
Built‑in functions (
fn $addDays,fn $format,fn $now, etc.)JS native objects/functions (
Date,Math,parseInt,String, etc.)
This confirms that the System Prompt supports template interpolation using {{ }} syntax, with access to typed variables and runtime helpers.

Using the memory identifier
The memory identifier allows the flow to maintain context between agents, to provide a more streamlined and personalized experience.
Configure the same memory identifier name in all agent nodes where the interaction between this agent node and the user needs to be shared with subsequent agent nodes to provide a more streamlined experience.

Last updated
Was this helpful?