После долгих перемоток туда-сюда и нескольких десятков перезагрузок / перезапусков tmux я, наконец, нашел решение, которое работает именно так, как я хочу, во всех эмуляторах терминалов, которые я хочу (iTerm / Kitty / Terminal.app), с tmux или без него
Bashrc
case "$TERM" in tmux*) export PROMPT_COMMAND='echo -ne "\033]0;$@$:$\007"' ;; xterm*) if [ $ITERM_SESSION_ID ]; then export PROMPT_COMMAND='echo -ne "\033];$@$:$\007"; ' else export PROMPT_COMMAND='echo -ne "\033]$@$:$\007"; ' fi ;; esac
tmux
# use titles set-option -g set-titles on set-option -g set-titles-string "#T" set-option -g automatic-rename on