On this Mac
The plain case: the pane, its workspace and its tab, whichever one herdr was showing.
herdr
herdr keeps your agents in panes across workspaces and tabs, under a server no terminal owns. When one of them needs you, Go to session asks that server which pane holds it, selects the pane, then brings forward the terminal you see herdr in. One click, the right pane.
One click
herdr’s server outlives the terminal it was started from, so the trail from the agent stops there. Evlat takes the clients attached to it and picks the newest that still has a terminal: the tab you opened last. A closed tab’s leftover client doesn’t count.
Over herdr’s own socket it lists the panes and matches the session’s process to one pane’s shell. It reads processes, not the agent’s environment, so a pane running ssh or sbx run is found too.
pane.focus moves herdr to the pane’s workspace, tab and pane in every attached client. Then the terminal comes forward on its tab. If herdr doesn’t answer in time, the terminal still comes forward.
Wherever the pane is
The plain case: the pane, its workspace and its tab, whichever one herdr was showing.
A herdr pane on your Mac that runs ssh to a server, or sbx run into a Docker sandbox: that pane is selected, even though herdr itself sees only ssh or sbx there.
For a server in Settings → Servers, the pane is found again on the server at the click and selected there, over the ssh connection Evlat already holds. One fixed command that only selects; the window waits for it at most a second.
A tab running herdr --remote: Evlat follows herdr’s own ssh bridge back to that tab on your Mac, and the pane on the server is selected.
The card’s button
The button names where the click goes. It promises the session only when the pane will be selected.
pane.process_info, which came in herdr 0.7.0.herdr machine add haven’t been measured yet, and a socket moved under another name with HERDR_SOCKET_PATH isn’t found.