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.