This is difficult to do simply.
It is easy to make it appear when you press the prefix, just unset the prefix option and bind a key instead:
set -g prefix None
bind -n C-b set status on \; switchc -Tprefix
The problem is persuading it to turn off when a key is pressed, because there is no hook for "any command happened". You could change other key bindings to turn it off, so c
becomes:
bind c set status off \; new-window
But that would be a pain to do for every key.
Alternatively, you could just make it turn off after a second or so regardless, with something like:
set -g prefix None
bind -n C-b set status on \; run -b "sleep 1; tmux set -t'#{session_id}' status off" \; switchc -Tprefix
But that may be annoying if you want to do multiple commands one after another. Although you could probably script something more sophisticated than this - perhaps update the time C-b is pressed in a user option and only turn the status off again if it has been long enough.
If you must have it turn off as soon as the next key is pressed, you are left with either changing every other key binding, or modifying tmux to fire a hook you can use.