sshman
A simple interactive TUI SSH connection manager built with Textual.
Features
- Interactive TUI - Navigate with keyboard, no memorizing commands
- Quick connect - Select a host and press Enter to SSH
- Search/filter - Find connections quickly with
/ - Import from ~/.ssh/config - Bring in your existing SSH hosts
- Add/edit/delete - Manage connections directly in the app
- Docker integration - Auto-detects running containers and connects via
docker exec - Connection history - Track past sessions with duration and status
- Cross-platform - Works on macOS, Linux, and Windows
Installation
PyPI (macOS, Linux, Windows):
pip install clisshmanager
Or with uv:
uv tool install clisshmanager
Windows — download the standalone .exe (no Python required) from the
GitHub Releases page and place it
somewhere on your PATH.
Debian / Ubuntu — download the .deb from
GitHub Releases:
sudo dpkg -i sshman_*.deb
Fedora / RHEL / openSUSE — download the .rpm from
GitHub Releases:
sudo rpm -i sshman_*.rpm
winget (Windows Package Manager):
winget install Dejan.sshman
Usage
Run the application:
sshman
The app has two tabs:
- Connections - Your saved SSH hosts and running Docker containers
- History - A log of past connection sessions
Keyboard Shortcuts
| Key | Action |
|---|---|
Enter |
Connect to selected host |
a |
Add new connection |
e |
Edit selected connection |
d |
Delete selected connection |
i |
Import from ~/.ssh/config |
r |
Refresh connections and Docker containers |
/ |
Focus search input |
Escape |
Clear search and return to list |
Tab |
Switch to next tab |
1 |
Switch to Connections tab |
2 |
Switch to History tab |
q |
Quit |
Configuration
Connections are stored in ~/.config/sshman/connections.json.
Connection history is stored in ~/.config/sshman/history.json.
Requirements
- Python 3.12+
- A terminal with modern capabilities (most terminals work)
License
MIT
Metadata
Release files for clisshmanager 0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| clisshmanager-0.6.tar.gz | 59.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| clisshmanager-0.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 78.8 kB
Release files / clisshmanager-0.6.tar.gz
| Download URL | clisshmanager-0.6.tar.gz |
|---|---|
| Size | 59.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a5e5ec9821ae546c2f37a745282192ced6671e1b053126da606e6d5dde64dc6c
|
|
BLAKE2b-256 checksum How to use checksums |
d5c2f3324b951fdb139894a709f7e29451c00131f676ff6887d6992ed8d40d48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / clisshmanager-0.6-py3-none-any.whl
| Download URL | clisshmanager-0.6-py3-none-any.whl |
|---|---|
| Size | 18.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b5309c41bc976a94fbb444fd238952ae02a8e04c64db53059b10658d747bedfb
|
|
BLAKE2b-256 checksum How to use checksums |
2b95088b627a6976235fce4176b3702f385c31b1ac6e91e9479a1e98bcdafd74
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|