claude-code - 💡(How to fix) Fix `/terminal-setup` claims "Switched to visual bell" but leaves Terminal.app with no bell at all

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

On macOS, /terminal-setup prints "Switched to visual bell", but it only sets Bell = 0 (audible bell off) and never writes VisualBell = 1. If the user also has VisualBellOnlyWhenMuted = 1 (a common default), the end state is: no sound AND no flash.

The user is told visual bell is enabled, but in practice the BEL character produces nothing.

Error Message

Also write VisualBell = 1 (and optionally set VisualBellOnlyWhenMuted = 0, or warn the user when it's on) so the announced state matches reality.

Root Cause

On macOS, /terminal-setup prints "Switched to visual bell", but it only sets Bell = 0 (audible bell off) and never writes VisualBell = 1. If the user also has VisualBellOnlyWhenMuted = 1 (a common default), the end state is: no sound AND no flash.

The user is told visual bell is enabled, but in practice the BEL character produces nothing.

RAW_BUFFERClick to expand / collapse

Description

On macOS, /terminal-setup prints "Switched to visual bell", but it only sets Bell = 0 (audible bell off) and never writes VisualBell = 1. If the user also has VisualBellOnlyWhenMuted = 1 (a common default), the end state is: no sound AND no flash.

The user is told visual bell is enabled, but in practice the BEL character produces nothing.

Repro

  1. Fresh-ish Terminal.app profile on macOS.
  2. Run /terminal-setup in Claude Code.
  3. Observe output: "Switched to visual bell".
  4. In a new Terminal window, run printf '\a'.
  5. Expected: window flashes. Actual: nothing happens.

Confirmed state after running

``` $ defaults read com.apple.Terminal "Window Settings" | grep -iE "bell|visual" Bell = 0; VisualBellOnlyWhenMuted = 1; ```

Note the absence of any VisualBell key.

Suggested fix

Also write VisualBell = 1 (and optionally set VisualBellOnlyWhenMuted = 0, or warn the user when it's on) so the announced state matches reality.

Environment

  • Claude Code: 2.1.142
  • macOS: 26.4.1 (build 25E253)

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING