From 65d559d38603b3af5728097e3d29e1b15d366fc1 Mon Sep 17 00:00:00 2001 From: "Guilhem C." Date: Sat, 25 Apr 2026 20:39:28 +0200 Subject: [PATCH 1/2] feat(tmux): enable passthrough and extended keys for Claude Code Without these, Claude Code running inside tmux loses Shift+Enter (tmux can't distinguish it from plain Enter) and its desktop notifications + progress bar get swallowed before reaching Ghostty/iTerm2/Kitty. https://code.claude.com/docs/en/terminal-config#configure-tmux Co-Authored-By: Claude Opus 4.7 (1M context) --- dot_config/tmux/tmux.conf.tmpl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dot_config/tmux/tmux.conf.tmpl b/dot_config/tmux/tmux.conf.tmpl index 42f3b9c..8eb6199 100644 --- a/dot_config/tmux/tmux.conf.tmpl +++ b/dot_config/tmux/tmux.conf.tmpl @@ -50,6 +50,13 @@ set -sa terminal-overrides ",xterm*:Tc" #set -ag terminal-overrides ',*:Setulc=\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m' # colored underscores #set -ag terminal-overrides ",alacritty:RGB" +# Claude Code: pass through OSC sequences (notifications, progress bar) and +# distinguish Shift+Enter from plain Enter so newline insertion works. +# https://code.claude.com/docs/en/terminal-config#configure-tmux +set -g allow-passthrough on +set -s extended-keys on +set -as terminal-features 'xterm*:extkeys' + # index from 1 instead of 0 set -g base-index 1 setw -g pane-base-index 1 From cfaa1c3096b11910bd371ffaca391a1c540b7103 Mon Sep 17 00:00:00 2001 From: "Guilhem C." Date: Sat, 25 Apr 2026 20:39:34 +0200 Subject: [PATCH 2/2] feat(claude): play Glass sound on Notification events MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ghostty already forwards Claude Code's desktop notification, but a Notification hook adds an audible cue that fires alongside it — useful when the terminal is not in focus. https://code.claude.com/docs/en/terminal-config#play-a-sound-with-a-notification-hook Co-Authored-By: Claude Opus 4.7 (1M context) --- dot_claude/settings.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/dot_claude/settings.json b/dot_claude/settings.json index 7b4ad55..d9b4392 100644 --- a/dot_claude/settings.json +++ b/dot_claude/settings.json @@ -17,6 +17,15 @@ "command": "~/.claude/statusline.sh", "padding": 1 }, + "hooks": { + "Notification": [ + { + "hooks": [ + { "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" } + ] + } + ] + }, "permissions": { "allow": [ "Bash(awk:*)",