Skip to content
César Venzac

Busy signals

Ten ways software says it's working on something, side by side on one run of an agent, and what each one tells you: that it's alive, what it's doing, how long, how to stop it.

Motion, Agents, UX
  • Spinner and verb

    Claude Code, and other agents in a terminal

    Pondering…(1s · 15 tokens · esc to interrupt)

    A playful verb keeps it company; the seconds and tokens are what tell you it's moving.

    • Alive: yes
    • What: partly
    • How long: yes
    • Stop: yes
  • Pulsing dot

    Chat assistants, before the first word

    Calm and unmistakably alive, and silent about everything else.

    • Alive: yes
    • What: no
    • How long: no
    • Stop: no
  • Typing dots

    Messaging apps

    Borrowed from people typing: it promises words are coming, not when.

    • Alive: yes
    • What: no
    • How long: no
    • Stop: no
  • Shimmering label

    Most assistants now

    Thinking…

    A light sweeping through the words: alive, and the words can say which step it's on.

    • Alive: yes
    • What: yes
    • How long: no
    • Stop: no
  • Steps

    Agents that use tools

    • Thinking…
    • Searching the site
    • Reading 3 pages
    • Checking the forecast

    Each tool call as a line, ticked off: the most it can tell you, if the steps are known.

    • Alive: yes
    • What: yes
    • How long: partly
    • Stop: no
  • Progress bar

    Installers, uploads

    35%

    Honest when the work is measured. Here it's faked, crawling toward 90% until it isn't.

    • Alive: partly
    • What: no
    • How long: partly
    • Stop: no
  • Skeleton

    Feeds, dashboards

    The shape of the answer before the answer: good when the shape is known.

    • Alive: yes
    • What: partly
    • How long: no
    • Stop: no
  • Streaming

    Every chat assistant

    The answer is its own signal, once it starts; before that, it needs one of the others.

    • Alive: partly
    • What: yes
    • How long: no
    • Stop: no
  • A face

    This site's cloud

    Thinking…

    Thinks with its face, talks while the words come: charm first, information second.

    • Alive: yes
    • What: partly
    • How long: no
    • Stop: no
  • Orb

    Voice assistants

    Presence without text, for when there's no screen to read: a mood, not a status.

    • Alive: yes
    • What: partly
    • How long: no
    • Stop: no

Thinking, 1s in.

1.6s of 17s
Phase
It plays one run of an agent on a loop; pick a phase to hold it there.

Four questions

Anyone waiting on software wants four things answered: is it still alive, what is it doing, how long will it be, and how do I stop it. A busy signal can answer any of them, and most answer one. The marks under each signal say which: a tick where it answers, a dash where it hints, a cross where it's silent.

Being alive is the cheapest, and every signal manages it: anything that moves will do. What it's doing takes words, which is why a label that runs through Thinking, Searching and Writing says more than a dot that pulses the same way through all of them. How long is the hard one, because an agent rarely knows. The honest answer is how long it's been: the seconds and tokens a terminal agent counts up as it works, not a bar that pretends to know what's left.

The faked bar

The progress bar here is the usual fake for work of unknown length: it races to half, slows, and creeps toward 90% for as long as the work takes, then jumps to full. It feels like progress while it misreports it, and once someone has watched one stall at 90% they stop believing bars.

Words over spinners

The best combine: a small motion to show it's alive, words for what it's doing, a counter for how long, and the key that stops it. While an agent uses tools, the steps say the most, each call a line that ticks off; once there's an answer, streaming says the most, since the answer is its own signal. The cloud from this site says the least, and that's fine: it's a character, not a status bar, and the stage beside it says Thinking… in words.

Everything here plays from one clock, read ten times a second and only while it's on screen. Each signal's own motion is CSS, transform and opacity only, paused off screen; under reduced motion nothing moves, and the words still change as you pick a phase.