Chapter 7 of 12
Session Management
Once you're actually connected, MangoSSH's terminal session bar (top-right of any open SSH session) has its own toolbar: Files, Monitor, History, SSH Tunneling, Broadcast, Shared Terminal, Record, Macros, Auto-reconnect, Debug, Export log, Split view, scrollback Search, Copy selection, Clear, and Disconnect. This chapter covers the ones that manage multiple sessions or capture/replay activity; single-purpose ones (Debug, Auto-reconnect) are covered in the SSH chapter alongside the settings they control.
The Sessions Dashboard
Purpose
See every saved connection across all protocols in one place, with live connect-status, rather than switching between separate SSH/RDP/VNC sidebars.
How to do it
- Click Dashboard in the toolbar (the leftmost button).
- Connections render as cards, grouped, with a filter box and a per-group connect-all/disconnect-all shortcut.
- Click any card to jump straight into that session (connecting first if it isn't already open).
How to verify
- Connect to one SSH host and one RDP or VNC host from their own toolbar buttons.
- Click Dashboard .
- Expect both hosts' cards to show a live connected status indicator (not a stale snapshot) — no manual refresh needed.
- Disconnect one of them from its own session toolbar's Disconnect button, then return to Dashboard without reloading the app.
- Expect that card's status to flip to disconnected within the same view.
- Click the still-connected host's card.
- Expect MangoSSH to jump straight into that live session rather than reopening a new connection.
Troubleshooting
- A connected host still shows as disconnected on the Dashboard — this would be a genuine state-sync bug; restarting the app resyncs from the actual live session list.
Organizing Connections with Groups
Purpose
Keep a large connection list navigable — filter the sidebar down to one group at a time, and (as covered in the SSH chapter) optionally inherit a shared bastion/credential per group.
How to do it
- Open Settings → Groups (sub-label "Bastion defaults + inherited credentials") — or the shortcut next to the Group dropdown on any host's Add/Edit form — to create/rename/delete groups.
- Groups are scoped independently per protocol: an SSH group and an RDP group can share the exact same name with no credential cross-contamination.
- Open Settings → Host visibility (sub-label "Group filters for SSH and RDP") to control which groups show in the sidebar at once (e.g. hide "Archive" by default).
- Assign hosts to groups from their own Add/Edit form's Group dropdown.
How to verify
- In Settings → Groups, create a new group (e.g. "TEST-GROUP") and save.
- Open an existing host's Edit form, set its Group dropdown to "TEST-GROUP", and save.
- Back in the sidebar, use the group filter control and select "TEST-GROUP".
- Expect only that one host to remain visible — every other host hides.
- Switch the filter back to show all groups (or "All") and confirm the rest of your hosts reappear.
- In Settings → Host visibility, hide the test group, then check the sidebar directly — confirm the group's hosts no longer appear there either, even with the sidebar filter set to show everything.
Troubleshooting
- A host "disappears" from the sidebar — almost always a Host visibility filter hiding its group, not a deleted host; check Settings → Host visibility before assuming data loss.
Split View (Two Sessions Side by Side)
Purpose
Watch two SSH sessions at once in the same window — e.g. tailing a log on one host while running commands on another.
How to do it
- With an SSH session open, click the session toolbar icon titled "Toggle split view — show two SSH sessions side by side" (a rectangle split by a red line).
- If 3 or more sessions are open, a picker lets you choose which two to show side by side.
- Click the same icon again to return to single-session view; its tooltip changes to "Split view enabled (max 2 panes) — click to disable" while it's on, and the icon itself fills solid green.
How to verify
- With only one SSH session open, click the split-view icon.
- Expect an alert reading exactly "Split view needs at least 2 open SSH sessions." — not a silent no-op.
- Connect a second SSH host, click split view again.
- Expect both sessions to render side by side and the icon to turn solid green.
- Click into the left pane and type a harmless command.
- Expect only the left pane to receive it — the right pane's content stays unchanged until you click into it too.
- Click the same toolbar icon again.
- Expect both panes to collapse back to whichever single session was last focused, and the icon to return to its normal (unarmed) look.
Troubleshooting
- Only one pane updates — click directly into the pane that seems frozen; each pane needs its own focus click before it'll accept input, this is expected split-view behavior, not a hang.
Broadcasting Typed Input to Multiple Sessions
Purpose
Run the same command across several already-open SSH sessions at once by typing it only one time — for identical, low-risk housekeeping across a small fleet (e.g. checking disk space on 5 boxes), not a substitute for the Scripts feature's larger-scale orchestration (see the Automation chapter).
How to do it
- Click the session toolbar icon titled "Broadcast typed input to other SSH sessions" .
- The Broadcast modal opens with a "Broadcast input" checkbox and a list of other open SSH sessions to select as targets.
- Check "Broadcast input" and tick the target sessions that should receive your typed input alongside this one, then close the modal.
- Type normally — every character now goes to all selected sessions simultaneously.
- Turn broadcast off the same way (uncheck "Broadcast input" ) before typing anything session-specific.
How to verify
- With two other SSH sessions open, click the Broadcast icon, check "Broadcast input" , and select both as targets.
- Expect the counter next to the checkbox to read "2 / 2" (selected / open) rather than staying at "0 / 0".
- Close the modal, click into the source session, and type a harmless command (e.g. echo hi ) followed by Enter.
- Expect the exact same keystrokes to appear and execute in both target sessions' terminals, not just the one you're focused in.
- Reopen the Broadcast modal and uncheck "Broadcast input" . Type another command.
- Expect it to appear only in the session you're focused in — the other two are unaffected.
Troubleshooting
- Typed something session-specific by accident (e.g. a host-specific path) into all sessions — this is the main real risk of this feature; the small numeric badge on the Broadcast icon itself shows how many sessions are currently receiving your input, visible at a glance without opening the modal — check it before typing anything sensitive.
Terminal Input Macros (Record & Replay Keystrokes)
Purpose
Capture a short, repeatable sequence of keystrokes once and replay it on demand — for a login ritual, a common diagnostic sequence, or any multi-step thing you type often on a specific kind of host.
How to do it
- Click the session toolbar icon titled "Terminal input macros — record keystrokes and replay them" .
- The Terminal input macros modal opens.
- Click " l Start Capture" , then type the sequence once into the live session — every keystroke, including control keys like Ctrl-C and Enter, is captured byte-for-byte.
- Click " n Stop & Save" , give it a Name , choose its Scope (Global, or tied to just this host), and save.
- Replay a saved macro from the same modal's list whenever needed.
How to verify
- Click the Macros icon, click " l Start Capture" , and type a trivial command (e.g. echo hi ) followed by Enter.
- Expect a live byte counter next to "Capturing" to climb as you type.
- Click " n Stop & Save" , type a name (e.g. "Test Macro"), leave Scope on Global , and save.
- Expect the new macro to appear in the modal's saved-macros list.
- Clear the terminal, then replay the saved macro from the list.
- Expect the exact same command to be typed and executed again, producing identical output to typing it manually.
- Start a new capture, type a couple of keystrokes, then click Cancel instead of Stop & Save.
- Expect no new macro to be added to the list — canceling discards the capture entirely.
Troubleshooting
- Replaying on the "wrong" host — a macro recorded against one host's environment may not make sense on another (different paths, different tools installed); MangoSSH warns when replaying a macro on a host it wasn't recorded against — read that warning before confirming.
Recording, Exporting, Searching & Command History
Purpose
Capture and later review what happened in a session — as a full asciicast replay, a plain-text export, a scrollback search, or a per-host list of previously-run commands.
How to do it
- Record (toolbar icon titled "Record session as asciicast (.cast)"): toggles asciicast recording for just this session on demand — separate from the Delegate tab's "Always record" setting covered in the SSH chapter, which does this automatically and silently for every session on a given host.
- Export log (toolbar icon titled "Export session log"): saves the session's full scrollback as ANSI-clean plain text.
- Search (Ctrl+Shift+F, toolbar icon titled "Find in scrollback"): finds text in the current session's scrollback, with a match counter and next/previous navigation.
- History (the clock-icon tab next to Terminal/Files/Monitor): a per-host list of previously-run commands, for recall without scrolling back through old output.
How to verify
- Click Record, run a couple of harmless commands, then click Record again to stop.
- Expect a Save-As dialog to open (not a silent save) proposing a filename ending in .cast — save it anywhere convenient.
- Click Record a third time, click Stop without running any commands first, and confirm you instead see an alert reading exactly "Nothing was recorded." with no Save-As dialog.
- Click Export log.
- Expect the same kind of Save-As dialog, proposing a filename ending in .txt .
- Open the saved file and confirm it's readable plain text with no leftover ANSI escape-code garbage (a too-narrow stripping pattern was a real bug, fixed this session — see the trouble note below).
- Press Ctrl+Shift+F to open scrollback search, type a string you know appeared earlier in the session, and confirm the counter next to the search box reads something like "1/3" (current match / total matches) rather than staying at "0/0", and that the Previous/Next arrows step between highlighted matches.
- Click the clock-icon History tab (next to Terminal in the session's view-tab row).
- Expect to see the commands you ran earlier in this test listed, newest first, for this specific host.
Troubleshooting
- Search finds nothing for text you can clearly see on screen — scrollback search only covers what's in the buffer already rendered; a very long-running session with a capped buffer may have scrolled the earliest output out entirely.
- Exported log has garbled escape-sequence text in it — a real bug (a too-narrow ANSI-stripping pattern) fixed this session; if you still see this on a current build, it's worth reporting.