Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ssh-obi

ssh-obi keeps SSH shells alive when the connection drops, when a laptop sleeps, or when the client moves between networks.

It is designed to feel like plain SSH:

  • Use the same destination names, keys, jump hosts, and SSH config you already use.
  • Keep using your local terminal scrollback, search, selection, and copy/paste.
  • Reconnect to the same remote shell after a network break.
  • Keep several independent sessions on the same remote account.
  • Install per user, without a root service or a custom network port.

ssh-obi is intentionally not a terminal window manager. It does not implement panes, tabs, or in-band escape commands. If you want window management, run tmux or another multiplexer inside the remote shell.

Status

ssh-obi is in early development. Commands and release details may still change before the first 0.1.0 release is finalized.

The documentation on this site is the user-facing source for the published bootstrap scripts and release tarballs at https://obi.menhera.org/.

Quick Examples

Connect to a host:

ssh-obi user@example.com

Create a new session even if free sessions already exist:

ssh-obi --new user@example.com

List existing sessions without attaching:

ssh-obi --list user@example.com

Detach the currently attached client for a known session from your local machine:

ssh-obi --detach --session abc123 user@example.com

Or detach from inside the remote shell without killing it:

ssh-obi-server --detach

What To Expect

  • A network disconnect does not kill the remote shell.
  • Remote output continues to be collected while you are detached.
  • Recent output is replayed on reconnect.
  • Some recently displayed output may appear twice after reconnect.
  • Windows is a client-only platform. Remote servers are Unix-like systems.