[FEATURE] Support tmux DCS Passthrough for Status Line Shimmer

Resolved 💬 3 comments Opened Feb 11, 2026 by bugkill3r Closed Feb 14, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Claude Code's status line shimmer (OSC 9;4 escape sequences) doesn't work inside tmux because tmux filters OSC sequences by default. The shimmer works perfectly in iTerm2 when running Claude Code directly, but disappears when running inside a tmux session.

Requirements

  1. Check for $TMUX environment variable
  2. When in tmux, wrap OSC sequences in DCS format: \x1bPtmux;\x1b<doubled-esc-sequence>\x1b\\
  3. Double all \x1b (ESC) characters within the wrapped sequence
  4. Use ST terminator (\x1b\\) after the passthrough

Configuration

Tmux must have allow-passthrough enabled (tmux 3.2+):

set -g allow-passthrough all

Related: https://github.com/anthropics/claude-code/issues/19976

Proposed Solution

Claude Code should detect when running inside tmux (via $TMUX environment variable) and wrap OSC sequences in tmux's DCS passthrough format:

Current behavior:

// Direct OSC - doesn't work in tmux
process.stdout.write('\x1b]9;4;3;0\x07');

Requested behavior:

if (process.env.TMUX) {
  // Wrap in DCS passthrough for tmux
  // Format: DCS + tmux; + doubled-ESC + OSC + ST
  process.stdout.write('\x1bPtmux;\x1b\x1b]9;4;3;0\x07\x1b\\');
} else {
  // Direct OSC for non-tmux terminals
  process.stdout.write('\x1b]9;4;3;0\x07');
}

Alternative Solutions

_No response_

Priority

Low - Nice to have

Feature Category

Interactive mode (TUI)

Use Case Example

I verified this works by creating a test script:

#!/bin/bash
if [ -n "$TMUX" ]; then
    printf '\x1bPtmux;\x1b\x1b]9;4;3;0\x07\x1b\\'
    sleep 2
    printf '\x1bPtmux;\x1b\x1b]9;4;0;0\x07\x1b\\'
else
    printf '\x1b]9;4;3;0\x07'
    sleep 2
    printf '\x1b]9;4;0;0\x07'
fi

This successfully shows the shimmer in iTerm2 when run inside tmux.

Additional Context

References

Impact

This would allow Claude Code users who work in tmux (a very common setup for developers) to see the status line shimmer, improving the user experience and matching the behavior outside tmux.

Environment

  • Claude Code version: 2.1.37+
  • tmux version: 3.2+ (with allow-passthrough support)
  • Terminal: iTerm2, Alacritty, or other terminals supporting OSC 9;4
  • Platform: macOS, Linux

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗