Skip to main content
Every conversation with an agent has recurring moments the LLM doesn’t need to reason about — the greeting when a user first joins, the wrap-up before a call ends, the polite check-in when things go quiet. System messages let you script these moments explicitly so the agent handles them consistently. Each system message is a short list of lines. If more than one is provided, the agent picks one at session time so repeat visitors don’t hear the same phrase every call.

The four system messages

Welcome message

Fires as soon as the agent joins the session and the user’s media is ready. This is the first thing your agent says.
Best practices
  • Keep it short — one sentence at most. It’s the first impression.
  • Match the agent’s persona from the system prompt. A support agent’s greeting should sound different from a coach’s.
  • Provide 2–4 variants so the greeting doesn’t feel canned to returning users.

Idle callout

Fires when the user has been silent for timeout seconds. Useful to check whether the user is still there before ending the session.
Best practices
  • Don’t set the timeout too low — 20–30 s is natural. Lower feels twitchy.
  • Provide friendly, warm phrases. This moment often feels awkward if scripted robotically.
  • Have 3–5 variants so a user idling twice in one call doesn’t hear the same line.

Exit heads-up

Fires a configurable number of seconds before the session hits max_call_duration. Gives the user a gentle warning that time is almost up.

Exit message

Fires when the session ends — either the user leaves or max_call_duration is hit.
The equivalent field warning_exit_message also exists in the API for backward compatibility — use exit_heads_up_message for new agents.

Toggling messages on and off

Each of the four messages can be independently enabled or disabled via config.systemConfig:
Set any toggle to false to keep the message configured but suppress it at runtime.

Full example

Configuring all four messages in a single avatars[] block:

Next steps

Prompting

Write a system prompt whose voice matches your system messages.

Templates

Share your system messages across many agents via a template.