Human Machine Interface
14 patterns in this category
Chatbots and Kids: When the User Might Be a Child or Teen
Complex Conversations in Chatbots: When Chat Is the Wrong Channel
Chatbot Bias by Dialect or Name: The Quality Gap
Chatbot Empathy That Sounds Fake: Hollow Empathy
Chatbot Misses Signs of Crisis: Self-Harm, Abuse, and Despair in Ordinary Chats
Chatbot Gives Away the Discount: Negotiation Capitulation
Chatbot Handoff Loses Context: Customers Repeat Themselves After a Switch
How a Chatbot Should Handle Angry Customers: No De-Escalation Strategy
Chatbots for Diverse US Users: One-Size Communication Style
Chatbot Asking for Credit Card Numbers or SSNs in Chat: Wrong Channel for Sensitive Data
Chatbot Tone Too Casual for Serious Topics: Stakes-Blind Register
Does the Chatbot Say It's a Bot? Undisclosed Identity and Hidden Limits
Selling Fashion or Furniture by Chatbot or Voice: Visual Products in the Wrong Channel
Why chatbots, voice assistants, and AI copilots feel boring, tone-deaf, or unhelpful, and how to fix each failure. Each pattern shows what the failure looks like in a real transcript, why it happens, a fix you can copy, and the metric to track. This is the human-machine interface (HMI) section of the agent failure modes library.
Status: chat is written; voice and visual are planned. The patterns below are written for chat and note what changes in other modalities.
Key takeaways
- 14 patterns are written for chat today. 355 more are catalogued (GitHub) across chat, voice, and visual.
- Most failures here come from conversation design and business context, not model quality. In the roadmap, 59% are judged not fixable by a better model alone. Those splits are our own judgments, not measured.
- Every pattern states its goal and a primary metric with a starting target to tune.
Three questions every pattern answers
- Is this the right channel? Chat, voice, a visual interface, or a person?
- Is the interaction skillful? Does it lead, listen, adapt, and close?
- Is it safe and fair for this person? Stakes, vulnerability, age, culture, and identity.
What’s here
Core: applies to every channel
Channel selection (GitHub): choosing the wrong channel
| Pattern | One line |
|---|---|
| Visual product sold by text or voice (GitHub) | Selling fashion or furniture with words only |
| Complex or emotional discussion forced into chat (GitHub) | A hard conversation stuck in a chat window |
| No channel switch, or context lost on switch (GitHub) | Customers repeat themselves after a handoff |
| Sensitive data collected in chat (GitHub) | Card numbers and SSNs typed into a chat or spoken to a bot |
Solutions library: reusable frameworks
- Channel-fit matrix (GitHub): which channel for which job
- SPIN questioning (GitHub): discovery questions for chat
Modalities
- Chat: the patterns above. Chat-only mechanics (message length, formatting) are in the roadmap (GitHub).
- Voice: planned (GitHub), with the voice (GitHub) and listening and transcription (GitHub) catalogs
- Visual: planned (GitHub), with 32 patterns in the visual and oversight roadmap (GitHub)
Roadmap
A one-page index of every catalogued failure (GitHub) shows its library status, root cause, and whether a better model alone would fix it.
355 catalogued patterns (GitHub) with goals and metrics, checked against the existing library (0 written, 138 new, 156 that extend an existing pattern, 61 already covered). The execution plan (GitHub) orders the 294 to write.
Catalog files: agent types (GitHub), embedded copilots (GitHub), emerging surfaces (GitHub), chat and core (GitHub), response time (GitHub), response structure and closers (GitHub), language and locale (GitHub), conversation frameworks (GitHub) (sales, support, style matching), voice (GitHub), voice listening and transcription (GitHub), privacy, governance, and access (GitHub), effort, completeness, and memory (GitHub), and visual and oversight (GitHub).
Frequently asked questions
Why does my chatbot feel boring and generic?
Most bots answer and stop. See answer-and-go conversation (GitHub).
How do I stop a chatbot from sounding fake-empathetic?
Should this be chat, voice, a visual page, or a person?
See channel selection (GitHub) and the channel-fit matrix (GitHub).
Is a better model enough to fix these?
Usually not. Context, handoffs, and policy decide most outcomes. The roadmap (GitHub) breaks this down.
Goals and metrics
Each family has a README that states its goal and the shared metrics its patterns report against. Each pattern repeats its goal and primary metric in its header and lists measurable signals in section 7 (Metric | Target | How to measure | Alert at).
How a pattern reads
Every pattern opens with a one-line summary and a before-and-after transcript, then the cause, the evidence, and the fix. Testing and monitoring come next. Patterns whose fix needs engineering end with a technical section (architecture, guardrails, evals, alerts). See the pattern template (GitHub).
Evidence standard
- Cite only what you can verify, and say when a source is secondary, vendor-run, from a different setting (for example, human-to-human research), or when you couldn’t open the original.
- Every threshold is a starting point to tune, unless it has a source.
- No invented statistics. If there’s no good number, the pattern says so.
- Legal and clinical areas (crisis, children, privacy, disclosure) are design guidance, not advice. Get experts.
Contributing
- Copy the template (GitHub).
- A pattern must include a fix with a reference design someone can copy.
- Write the way people search: use their words for the problem, and answer in the first two sentences.
- Add it to the tables above.