Skip to main content
Level 2 — Lesson 2 of 6 — Master response controls to regulate agent output and enforce tone.
Response Controls regulate the agent’s own output. They run after the model generates text and before anything is spoken or sent to the user. They are one of the most powerful tools for improving tone, safety, and conversational flow — and one of the easiest to misuse if patterns are too broad.

What Response Controls are

Response Controls are string- or regex-based rules that inspect the agent’s generated response.

Halt responses

Prevent specific phrases from being spoken

Trigger routing

Activate corrective or fallback behaviour

Log patterns

Track unwanted patterns for analysis

Enforce tone

Maintain brand voice consistency
They are not about what the user says — they are about what the agent says.

When to use Response Controls

Use Response Controls when you want to fix or prevent:
Examples:
  • “Let me check that for you…”
  • “Please hold while I look into this…”
  • If the issue is about recognition, use ASR tools
  • If the issue is about retrieval, fix the Managed Topics
  • If the issue is about how the agent speaks, use Response Controls

How Response Controls work

1

LLM generates response

The model creates text based on context and prompts
2

Response Controls scan output

Regex patterns are evaluated against the generated text
3

Action taken if matched

  • The response may be halted
  • A function may be triggered
  • The event may be logged for analytics
Controls are evaluated in real time and apply consistently across Chat and Call.

Core fields

Each Response Control includes:
A short, descriptive identifier used for tracking and debugging.
Optional, but strongly recommended. Explains why the rule exists.
The exact pattern that will be matched against agent output.
  • ON: matching output is stopped
  • OFF: matching output is logged but allowed
A fallback action to run when the phrase is detected.

Best practices

Start narrow

Broad patterns are hard to debug and can suppress valid responses..*sorry.*\b(sorry for the inconvenience|apologies for the delay)\b

Target symptoms

Encode specific phrases you have observed, not abstract concepts.❌ “Prevent the agent from being verbose”\b(let me explain how|to give you some background)\b

Prefer halting

If a phrase should never appear, halt it rather than replacing it.

Test thoroughly

Verify in both Chat and Call to catch unnatural truncation.

Common use cases

LLMs often add filler before answering or executing actions.Example unwanted output: “Let me check that for you. Please hold…”Suggested control:
  • ID: flow_redundancy_cutoff
  • Regex: \b(let me check|please hold|one moment while I)\b
  • Say phrases: TRUE
Result: The agent proceeds directly to the answer or action.

Logging-only controls

Not all controls need to halt output. You can use Response Controls purely for monitoring.
  • ID: hedge_language_monitor
  • Regex: \b(might|maybe|possibly)\b
  • Say phrases: FALSE
This allows you to analyze uncertainty trends without disrupting users.

Testing and verification

After adding or updating a Response Control:
1

Test in Chat

  • Confirm the phrase no longer appears
  • Ensure the response still completes cleanly
2

Test in Call

  • Listen for unnatural truncation
  • Ensure turn-taking still feels natural
3

Review Conversation logs

  • Check whether the rule is triggering too often
  • Look for false positives

Common mistakes

Avoid these pitfalls:
  • Using overly broad regex patterns
  • Blocking phrases that appear in legitimate answers
  • Using Response Controls to fix retrieval problems
  • Forgetting to test in voice after chat validation

Response Controls

Affect what is said

Pronunciations

Affect how it is spoken
Use Pronunciations when:
  • Names are mispronounced
  • Numbers need pacing
  • Domain terms require IPA or SSML guidance
Do not use Response Controls to solve pronunciation issues.

Summary

Response Controls are a surgical tool.

Used well

  • Eliminate friction
  • Enforce tone
  • Prevent loops and dead ends

Used poorly

  • Suppress valid responses
  • Create silent failures
  • Obscure deeper configuration issues
Treat them as the final layer of polish — not the first fix.