Skip to content

feat: tmux window-tab activity/bell flags + osc94 state-dir fix#324

Merged
djensenius merged 4 commits into
mainfrom
tmux-bell-flags
Jun 22, 2026
Merged

feat: tmux window-tab activity/bell flags + osc94 state-dir fix#324
djensenius merged 4 commits into
mainfrom
tmux-bell-flags

Conversation

@djensenius

Copy link
Copy Markdown
Owner

Summary

Surfaces Copilot CLI activity in the tmux status bar and fixes an osc-9-4
state-dir bug, plus two small config tweaks.

tmux window-tab indicators (feat)

  • Animated OSC 9;4 progress flag (#{@osc94_flag}) in the catppuccin
    window text, driven by a background daemon (scripts/tmux-osc94-animate.sh)
    that aggregates per-pane progress per window and spins a "thinking"
    indicator via refresh-client -S — without re-running the status #()
    helpers.
  • Bell flag: enable monitor-bell (bell-action any) so tmux's built-in
    per-window bell flag fires for background windows too. Catppuccin already
    renders it as an icon in the window tab, and it clears automatically when you
    switch to the window. Copilot rings the bell when it needs feedback or when a
    turn finishes, so the window that needs attention is flagged in its tab.

Fixes / chores

  • fix: expand $HOME in @osc94_state_dir. tmux doesn't expand ~ in
    option values, so the plugin's Path.mkdir created a literal ~ directory
    in the cwd on every window switch.
  • chore: enable the gh Slack extension for the github team.
  • chore: trust bare repositories via git safe.bareRepository.

Testing

  • Verified live: a background-window bell flags the tab (single, built-in
    icon) and clears on visit; no flag on the active window.
  • Verified no stray ~ directory is created across repeated window switches.
  • shellcheck clean on tmux-osc94-animate.sh; config sources without error.

- Add an animated OSC 9;4 progress flag (#{@osc94_flag}) to the catppuccin
  window text, driven by a background daemon (tmux-osc94-animate.sh) that
  aggregates per-pane progress per window and spins a "thinking" indicator
  via refresh-client -S, without re-running the status #() helpers.
- Enable monitor-bell (bell-action any) so tmux's built-in per-window bell
  flag fires for background windows too; catppuccin already renders it as an
  icon in the window tab. The Copilot CLI rings the bell when it needs
  feedback or when a turn finishes, so this surfaces that in the tab.
tmux does not expand ~ in option values, so the osc-9-4 plugin's plugin.py
created a literal "~" directory (via Path.mkdir) in the current working
directory on every window switch. Use $HOME, which tmux does expand.
@djensenius
djensenius merged commit be6c96a into main Jun 22, 2026
5 checks passed
@djensenius
djensenius deleted the tmux-bell-flags branch June 22, 2026 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant