Problem
I often have several long-running tmux sessions and want a temporary dashboard where I can view them side by side without changing, moving, resizing, or otherwise disrupting their existing panes and layouts.
Using join-pane or reorganizing the original windows is not acceptable because the overview should be purely observational and disposable.
Proposed solution
Add a tmux-overview utility that:
-
Creates a temporary, separate tmux server for the dashboard.
-
Discovers all sessions on the main tmux server, or accepts specific session names as arguments.
-
Creates one tiled dashboard pane per selected session.
-
Attaches each dashboard pane to its target session using a read-only client:
tmux attach-session -r -t "$session"
-
Uses the read-only client's ignore-size behavior so the dashboard does not resize the actual sessions.
-
Gives the temporary dashboard a different prefix, such as Ctrl-a, to avoid nested tmux key conflicts.
-
Shows session names in pane borders.
-
Cleans up the temporary tmux server when the dashboard closes.
Suggested integration
-
Script location: ~/.local/bin/tmux-overview, managed through the dotfiles repository.
-
Add a tmux binding to open it as a full-screen popup, for example:
bind-key O display-popup -E -w 100% -h 100% -T "Session Overview" "$HOME/.local/bin/tmux-overview"
-
Support both usages:
tmux-overview
tmux-overview peasy samsu anjomazone
Acceptance criteria
Limitation
Tmux cannot scale terminal contents into thumbnails. Smaller dashboard panes may display cropped portions of the observed sessions. This is preferable to resizing the real sessions and should be documented.
Problem
I often have several long-running tmux sessions and want a temporary dashboard where I can view them side by side without changing, moving, resizing, or otherwise disrupting their existing panes and layouts.
Using
join-paneor reorganizing the original windows is not acceptable because the overview should be purely observational and disposable.Proposed solution
Add a
tmux-overviewutility that:Creates a temporary, separate tmux server for the dashboard.
Discovers all sessions on the main tmux server, or accepts specific session names as arguments.
Creates one tiled dashboard pane per selected session.
Attaches each dashboard pane to its target session using a read-only client:
tmux attach-session -r -t "$session"Uses the read-only client's
ignore-sizebehavior so the dashboard does not resize the actual sessions.Gives the temporary dashboard a different prefix, such as
Ctrl-a, to avoid nested tmux key conflicts.Shows session names in pane borders.
Cleans up the temporary tmux server when the dashboard closes.
Suggested integration
Script location:
~/.local/bin/tmux-overview, managed through the dotfiles repository.Add a tmux binding to open it as a full-screen popup, for example:
Support both usages:
Acceptance criteria
Limitation
Tmux cannot scale terminal contents into thumbnails. Smaller dashboard panes may display cropped portions of the observed sessions. This is preferable to resizing the real sessions and should be documented.