AGENT IN PRACTICE
Streaming UX: Don't Leave Users Waiting
When an Agent runs for 30 seconds in the background, what should the user see? The same 30-second wait feels completely different with or without a sense of progress.
Comparison: With vs Without a Sense of Progress
✗ No sense of progress
With a sense of progress
Three Principles of Progress-Sense Design
Let Users See the Process
Don't just show a spinner — show what's happening: searching, analyzing, organizing
Make Progress Perceivable
"Found 3 results," "Analyzed 2/5 files" — numbers, changes, and a sense of forward motion
Let Output Appear Progressively
Stream text word by word — streaming output itself is the best progress bar
Common Progress-Sense Techniques
| Status Copy | "Searching for relevant information..." → "Found 5 results, now analyzing..." |
| Tool Display | Show the user the name and parameters of the tool being called, so they know what the AI is doing |
| Streaming Output | Display the model's output token by token, turning the wait into reading |
| Phase Markers | "Step 1 of 3" — even if timing can't be accurately estimated, phases are better than nothing |
| Intermediate Results | Give a rough result first, then refine it: e.g., provide an outline first, then fill in the details |
Users can tolerate waiting, but not "not knowing what they're waiting for." Progress-sense ≠ progress bar. The essence of progress-sense is making users feel "the AI is genuinely working" — so they don't stare at a blank screen questioning everything.