A cross-platform desktop SSH client built with Tauri 2.x (Rust backend) and vanilla HTML/JS. Lightweight, fast, and focused on what matters — connecting to servers.
Most SSH clients try to do everything. SSH Thing does what you actually need:
- Lightweight — Small binary, minimal system overhead
- Fast — Instant startup, responsive terminal
- Focused — No bloat, just essential features
- Secure — Credentials stored in OS keychain, not plaintext
- Server Management — Save servers with nicknames, hosts, ports, and auth methods
- Password & Key Auth — Support for both password and SSH key authentication
- Host Key Verification — TOFU model with known hosts persistence
- One-Click Connect — Connect/disconnect with a single click
- Concurrent Sessions — Run multiple SSH connections simultaneously
- PTY Support — Full pseudo-terminal with proper signal handling
- OSC52 Clipboard — Copy terminal output directly to system clipboard
- Scrollback Buffer — Configurable history size
- Terminal Resize — Adjust terminal dimensions on the fly
- Search — Find text in terminal output
- Snippets — Save and reuse commands across sessions
- Actions — Command macros with execution history and status tracking
- Import/Export — Backup and restore your servers, snippets, and actions
- Connection Log — Track your connection history
- Dark/Light Theme — Toggle to match your preference
- Focus Mode — Hide sidebar for maximum terminal space
- Global Shortcuts — Quick access from anywhere in the app
- Status Indicators — Clear connection state feedback
Get the latest release from the Releases page.
- Mount the
.dmgand drag SSH Thing to Applications - If blocked by Gatekeeper, run:
sudo xattr -cr "/Applications/SSH THING.app" - Or right-click → Open
- Run the
.msiinstaller - If SmartScreen blocks, click More info → Run anyway
- Install the
.debor.AppImagefrom releases - For
.deb:sudo dpkg -i ssh-thing_*.deb - For
.AppImage:chmod +x ssh-thing_*.AppImage ./ssh-thing_*.AppImage
- Rust (2021 edition)
- Node.js (for npm)
- Tauri 2.x prerequisites
git clone https://github.com/ktappdev/ssh-thing.git
cd ssh-thing
npm install
npm run tauri devnpm run tauri buildFor macOS universal builds (Intel + Apple Silicon):
./build-release.sh| Component | Technology |
|---|---|
| Backend | Rust + Tauri 2.x |
| SSH | russh (pure Rust) |
| Async | Tokio |
| Keychain | keyring |
| Frontend | Vanilla HTML/JS |
- Click + in the Servers tab
- Fill in details:
- Nickname — Friendly name (e.g., "Production API")
- Host — IP or hostname
- Port — SSH port (default: 22)
- Username — SSH user
- Auth — Password or private key
- Click Save
- Click a server in the list
- Authenticate if prompted
- Start typing commands
- Open the Snippets tab
- Add a command with title and description
- Click any snippet to paste it into the active terminal
- Open the Actions tab
- Create a macro (e.g., "Deploy" →
git pull && npm install && pm2 restart all) - Execute on any connected server
- View execution history and status
| Shortcut | Action |
|---|---|
Ctrl/Cmd + N |
New server |
Ctrl/Cmd + K |
Quick connect |
Ctrl/Cmd + L |
Clear terminal |
Ctrl/Cmd + F |
Search terminal |
Ctrl/Cmd + D |
Disconnect |
F11 |
Focus mode toggle |
Note: Shortcuts may vary by platform. Check the app menu for platform-specific shortcuts.
Contributions welcome! Open an issue or submit a PR.
- Fork the repo
- Create your feature branch (
git checkout -b feature/amazing) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing) - Open a Pull Request
MIT © Ken Taylor
