Overview
How might we let people stop a wrong turn without throwing away what already happened?
When users need to redirect mid-answer
- Long chat replies where the model may head in the wrong direction before finishing.
- Voice assistants and speech UIs where barge-in is faster than waiting for the end.
- Agent runs that take seconds or minutes and may need a course correction.
- Any surface where stop should preserve context, not reset the whole thread.
When partial output would mislead
- Atomic transactions that cannot partially complete (prefer full cancel + undo).
- Tiny answers that finish before an interrupt control is usable.
- Batch jobs better served by pause/checkpoint than conversational interrupt.
States
Design the pause and resume path, not only the stop button.
Generating
Tokens stream in place. Stop is visible while the answer is still growing.
Interrupted
Stop cancels further tokens. Partial text stays on screen and in context.
Resuming
Continue appends from the interruption point. Prior turns and partial output stay linked.
Redirecting
The person edits or sends a new prompt from the paused state without losing the thread.
Complete
Generation finished. Live controls clear; the final answer is copyable and actionable.
Key UX elements
The parts that must be present for stop and continue to feel safe.
Offer a clear cancel while streaming.
Stop must be reachable before the answer finishes. Hiding it until the end defeats the pattern.
Keep what already arrived.
Do not wipe partial text on stop. People should be able to read, copy, or edit what is already there.
Resume from the cut point.
Continue should pick up where generation stopped, not restart the whole reply from scratch.
Show that the thread is intact.
A short paused cue or status line confirms prior turns and partial output are still in context.
Allow redirect without reset.
When paused, the input should accept a follow-up or edit so people can steer without a new session.
Clear live chrome at the end.
Remove Stop, Continue, and the caret once the answer is final so the result reads as settled.
Anti-patterns to avoid
Stop that discards the partial answer with no way to keep or edit it.
Resume that invents continuity the model no longer has in context.
No visible interrupted state. UI looks idle while a job still runs.
Voice interrupt that leaves the mic hot without a clear listening indicator.
How products use it
| Product | Implementation |
|---|---|
| ChatGPT | Stop generating; edit or regenerate; voice mode barge-in. |
| Claude | Interrupt streaming replies and retry or continue the thread. |
| Voice assistants (Siri / Google / Alexa) | Barge-in to halt speech and issue a new or continued request. |
| Coding agents | Cancel a run and resume from a checkpoint or revised instruction. |
Implementation
Copy this prompt to generate a production-ready implementation in Cursor, Claude Code, Lovable, or any AI coding agent.
Generate a production-ready implementation of the "Interrupt and Resume" AI interface design pattern.
Pattern Definition:Frequently asked questions
What is interrupt and resume in AI UX?
It is the ability to stop an AI response or action mid-stream and continue later with clear state, keeping partial output and context instead of forcing a brand-new session.
How is it different from regeneration?
Regeneration replaces an answer with a new one. Interrupt stops the current run; resume continues or redirects from that point with memory of what already happened.
Should partial text be kept on stop?
Usually yes, mark it incomplete and let users copy, edit, or ask to continue. Deleting on stop punishes users for correcting course early.
What does good resume need?
A preserved transcript, explicit “continued from interrupt” cue, and any tool side effects already applied called out so users do not double-run them.