Level 2 — Lesson 4 of 8 — Master response controls to regulate agent output and enforce tone.
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 behavior
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.
Which tool to use for which problem
When to use response controls
Use response controls when you want to fix or prevent:- Redundant preambles
- Looping behavior
- Off-brand phrasing
- Unsafe output
Examples:
- “Let me check that for you…”
- “Please hold while I look into this…”
How response controls work
Controls are evaluated in real time and apply consistently across Chat and Call.
Check your understanding
Core fields
Each Response Control includes:ID
ID
A short, descriptive identifier used for tracking and debugging.
Description
Description
Optional, but strongly recommended. Explains why the rule exists.
Regular Expression
Regular Expression
The exact pattern that will be matched against agent output.
Say phrases (Boolean)
Say phrases (Boolean)
Despite the name, this field controls halting, not allowing:
- ON (Halt): matching output is blocked before it reaches the user
- OFF (Log): matching output is allowed through but recorded for analytics
Function (optional)
Function (optional)
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)\bTarget 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)\bPrefer 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
- Removing preambles
- Preventing greeting loops
- Blocking dead ends
- Brand tone enforcement
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
Logging-only controls
Not all controls need to halt output. You can use Response Controls purely for monitoring.Example: tracking hedging language
Example: tracking hedging language
- ID:
hedge_language_monitor - Regex:
\b(might|maybe|possibly)\b - Say phrases: FALSE
Testing and verification
After adding or updating a Response Control:Common mistakes
Check your understanding
Pronunciations (separate feature)
Response Controls
Affect what is said
Pronunciations
Affect how it is spoken
- Names are mispronounced
- Numbers need pacing
- Domain terms require IPA or SSML guidance
Do not use Response Controls to solve pronunciation issues.
Try it yourself
Challenge: Write a response control
You notice the agent frequently says “Let me look into that for you” before answering — which creates an awkward pause in voice calls.Write the full Response Control configuration:
- ID
- Description
- Regex
- Say phrases setting
Hint
Hint
Write the regex to match the specific phrase you observed, not a broad pattern. Start as narrow as possible — you can always widen it if needed.
Example solution
Example solution
- ID:
filler_preamble_cutoff - Description: Prevents the agent from saying “Let me look into that for you” before responding — this creates latency and sounds unnatural in voice.
- Regex:
\blet me (look into|check) that for you\b - Say phrases: TRUE
Check your understanding
← Previous: Return values
Lesson 3 of 8
Next: Audio management →
Lesson 5 of 8

