SSHMAN is a modern, interactive TUI (Terminal User Interface) SSH connection manager built with Node.js. It simplifies managing multiple SSH sessions with a sleek, user-friendly interface and robust CLI commands.
- Interactive TUI Dashboard: A premium terminal experience with rounded borders, ASCII art, and intuitive navigation.
- Connection Management: Save, edit, and categorize your SSH connections for quick access.
- Quick Reconnect: Jump back into your last session with a single command.
- Interactive Logs: Browse and search through your connection history with real-time filtering.
- Global Search: Quickly find the server you need from your saved connections.
- Secure Configuration: Your connection details are stored in an encrypted format.
- Import/Export: Easily share or backup your server configurations.
- Built-in Manual: Accessible interactive help documentation within the app.
Install SSHMAN globally using your preferred package manager:
| Package Manager | Command |
|---|---|
| Yarn | yarn global add @eightshone/sshman |
| NPM | npm install -g @eightshone/sshman |
| PNPM | pnpm add -g @eightshone/sshman |
| Bun | bun add -g @eightshone/sshman |
Simply run sshman to enter the interactive TUI dashboard.
sshmanSSHMAN also provides a powerful set of CLI commands for direct access:
-
Connect to a new server:
sshman connect username[:password]@hostname[:port] [--save [name]]
Example:
sshman connect root:password@1.2.3.4:22 -s my-server -
Quick Reconnect:
sshman reconnect
Connects to the last server you accessed.
-
Connect to a saved server:
sshman connect server-name
-
Search for a server:
sshman search <terms> [--fuzzy]
-
Logs:
sshman logs [-i] [-s <search terms>]
Use
-ifor the interactive TUI logs browser. -
Export/Import Configs:
sshman export [servers...] [-a] [-n <filename>] sshman import <config-file> [-f]
- Clone the repository:
git clone git@github.com:eightshone/ssh-man.git
- Install dependencies:
npm install # or yarn install / pnpm install
npm run dev: Start the project in development mode usingtsx.npm run build: Build the project (TypeScript compilation and obfuscation).
SSHMAN collects anonymous usage data to help improve the tool. This data helps us understand which features are most used and identify performance bottlenecks or common errors.
Telemetry is strictly opt-in. You will be prompted to enable it on your first run. No personal information, connection details, or command arguments are ever collected.
- Command name: (e.g.,
connect,search) — Arguments and flags are stripped. - Performance: Execution duration and success/failure status.
- Errors: Sanitized error codes (e.g.,
ECONNREFUSED). - System context: OS, CPU architecture, Node.js version, and SSHMAN version.
- No PII: We never collect IP addresses, usernames, hostnames, or any sensitive configuration.
- Transparent: All data is stored locally before being batched and sent.
- Total Control: You can change your preference at any time.
sshman telemetry status # Check current status and pending data
sshman telemetry enable # Opt-in to telemetry
sshman telemetry disable # Opt-out and clear local telemetry dataLicense: MIT
Author: EIGHTSH ONE

