Version 1.0 Latest
Upshell arrives on the Mac App Store
The first public release: native SSH terminal with splits and tabs, in-process agent forwarding, SOCKS port forwarding, ProxyJump bastions, and co-session SFTP. Built in Swift & SwiftNIO.
The Terminal
- Tabs and split panes: view multiple terminal sessions in horizontal or vertical splits inside a single window, with stable user-controlled sizing.
- Environment vibes: tab coloring and backdrop tints (active/idle alpha-blended overlay) to clearly show if you are in production, staging, or development.
- ⌘K Command Palette: search, select, and connect to hosts or run snippets instantly with keyboard-only fuzzy matching.
- Local NSEvent monitoring: arrow, enter, and esc keys work correctly in overlays without losing terminal focus.
Connectivity & Security
- In-process Agent Forwarding (FULL): securely forwards credentials from the app-scoped key manager without exposing private keys to the network or writing them to disk.
- Multi-hop ProxyJump (FULL): tunnel through multiple SSH bastions (up to 8 hops) resolving inline hosts and chains automatically.
- Safe Keychain storage: private keys, passphrases, and passwords stay inside the secure macOS Keychain. The app is fully Apple Sandbox compliant.
- Keyboard-Interactive 2FA: full support for PAM multi-round challenges, showing TOTP/OTP prompt sheets cleanly.
- TOFU Host Key Verification: strict host key pinning (Trust On First Use) with a blocking screen on fingerprint changes to prevent man-in-the-middle attacks.
Beyond the Shell
- Co-session SFTP: browse files, upload/download with folder queue, and set permissions via CHMOD editor on the same SSH channel — no secondary login or credentials required.
- Quick Look integration: preview remote files instantly by hitting the spacebar, without downloading them.
- Port Forwarding (FULL): Local (-L), Remote (-R), and Dynamic SOCKS5 (-D) port tunnels with an active status panel in the lower pane.
- Saved Snippets (FULL): execute snippets on one or multiple hosts concurrently with progress logging and timeout control.
- ~/.ssh/config Import (FULL): parses OpenSSH configs, respects wildcard precedence, and converts inline jump hosts into proper nodes.
- iCloud Sync (FULL): synchronize hosts, tags, and settings via CloudKit, and passwords through iCloud Keychain.