TUI to handle multiple SSH connections simultaneously
npm install ssh-x-term---
SSH-X-Term is a modern, terminal-based SSH client with a rich TUI (Text User Interface) built on
Bubble Tea.
As of version 2.0, SSH-X-Term is a fully self-contained SSH client implemented entirely in Go.
There are no external SSH tools or wrappers involved — all SSH, SCP, SFTP, and terminal handling is built in.
It combines SSH connection management, interactive terminals, SCP/SFTP file transfers, and
secure credential storage into a single, fast, cross-platform application.
Credentials can be stored securely using your local system keyring or directly in your
Bitwarden vault.
---
* ✅ Pure Go SSH client — no ssh, no passh, no plink
* ✅ Cross-platform — identical behavior on Linux, macOS, and Windows
* ✅ Built-in terminal emulator — full xterm-256color support
* ✅ SSH Agent integration — encrypted keys supported via ssh-agent
* ✅ First-class TUI — fast, keyboard-driven, and mouse-aware
---

!Demo
---
Fast SSH access without launching the full TUI.
* sxt -l — minimal interactive connection selector
* sxt -c — instant connection by ID
* Start typing immediately to filter connections
* Arrow keys exit filter and navigate
* 10 connections per page
* Fully interactive terminal with resize support
* VT100 / ANSI escape sequence compliant
* Full xterm-256color support
* 10,000-line scrollback buffer
* Mouse and keyboard scrolling
* Text selection and clipboard copy
* Graceful window resize handling
* Dual-pane Local ↔ Remote interface
* Upload, download, rename, delete
* Create files and directories
* Recursive search (/)
* Uses the active authenticated SSH session
* Local storage via system keyring
* macOS Keychain
* Linux Secret Service
* Windows Credential Manager
* Bitwarden integration via Bitwarden CLI
* Passwords are never stored in plaintext
* SSH Agent (recommended for encrypted keys)
* Encrypted private keys supported via ssh-agent
* Password authentication via system keyring
* Compatible with standard OpenSSH config
---
(Structure unchanged — see repository tree for details)
---
* Go 1.24+ (only if building from source)
* System Keyring (for local password storage)
* SSH Agent (recommended for encrypted SSH keys)
* Bitwarden CLI (bw) — for Bitwarden vault support
* tmux — open SSH sessions in new tmux windows
> ⚠️ SSH-X-Term 2.0+ has no external SSH dependencies.
> You do not need ssh, passh, plink, or PuTTY.
---
``sh`
npm install -g ssh-x-term
sxt
> The npm installer downloads the correct prebuilt binary for your platform.
> Only optional tools (bw, tmux) may be suggested.
`sh`
git clone https://github.com/eugeniofciuvasile/ssh-x-term.git
cd ssh-x-term
go build -o sxt ./cmd/sxt
Or:
`sh`
go install github.com/eugeniofciuvasile/ssh-x-term/cmd/sxt@latest
Download from the GitHub Releases page.
---
`sh`
sxt -i
This will:
* Initialize configuration
* Migrate any existing SSH-X-Term data
* Prepare SSH config metadata
`sh`
sxt
Key actions:
* a — Add connectione
* — Edit connectiond
* — Delete connections
* — Open SCP/SFTP managero
* — Toggle tmux modeEnter
* — Connect
`sh`
sxt -l
sxt -c
---
| Storage | Description |
| --------- | ---------------------------------------------------------- |
| Local | SSH config at ~/.ssh/config, passwords in system keyring |bw
| Bitwarden | Secrets stored in Bitwarden vault via CLI |
SSH-X-Term stores metadata as comments in your standard SSH config and remains fully compatible with OpenSSH tools.
---
`sh``
eval $(ssh-agent)
ssh-add ~/.ssh/id_ed25519
Once added, SSH-X-Term can use encrypted keys without prompting for passphrases.
---
SSH-X-Term is released under the MIT License.
* Credentials are never logged or written in plaintext
* All secrets are handled via OS APIs or Bitwarden
* Always ensure your system, SSH keys, and Bitwarden vault are properly secured
---
* Bubble Tea — TUI framework
* go-keyring — Secure credential storage
* Bitwarden CLI — Vault integration
* OpenSSH — Protocol reference and compatibility