Customizable ASCII "working" animation

Status Open
Maintainer reply ✓ Yes — bcherny
Activity 3 comments · opened Jun 8, 2026
💡 Likely answer: A maintainer (bcherny, collaborator) responded on this thread — see the highlighted reply below.

Summary

Allow users to configure the spinner/working indicator shown while Claude is processing a turn. Today the statusline is customizable but the active-work indicator is not.

Motivation

  • Personalization / fun (themed spinners, project mascots, seasonal frames).
  • Accessibility — some users want a calmer or higher-contrast indicator.
  • Branding for teams that share Claude Code recordings or screenshots.

Proposed shape

A workingAnimation field in settings.json, e.g.:

{
  "workingAnimation": {
    "frames": ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"],
    "intervalMs": 80
  }
}

Or a script-based variant mirroring statusLine:

{
  "workingAnimation": { "command": "~/.claude/spinner.sh", "intervalMs": 100 }
}

Alternatives considered

  • Statusline customization — doesn't cover the active-work indicator (re-renders per turn, not per frame).
  • Wrapping the CLI in a TTY multiplexer — fragile and breaks input handling.

Additional context

Came up while looking for a way to swap the default spinner for an ASCII animation without modifying Claude Code itself.

View original on GitHub ↗

3 Comments

FichteFoll · 1 month ago

I'd like to see this as well (and prevent the issue from becoming stale).

bcherny collaborator · 14 days ago

Thanks for the suggestion! Part of this is already configurable today: the spinnerVerbs setting lets you replace or add to the action words shown while Claude works, spinnerTipsOverride/spinnerTipsEnabled control the tips, and prefersReducedMotion gives a calmer indicator. See https://code.claude.com/docs/en/settings#available-settings.

Custom animation frames/interval (or a script-driven spinner) aren't supported yet, so leaving this open for that part.

🤖 Generated with Claude Code

smhunter1983 · 10 days ago

<img width="718" height="391" alt="Image" src="https://github.com/user-attachments/assets/6f479ec0-66aa-413b-b914-0e35475eec35" />
yes, this needs to happen!