>_
dshh
ssh · sftp · scp · ftp · serial · local — one exe

Every protocol.
One process.

Dshh is a tabbed SSH, SFTP, SCP, FTP and serial client for Windows — with a built-in local terminal. Every protocol is implemented in-process, in Rust, inside a single portable executable — nothing shelled out, nothing on your PATH, no installer.

↓ Download for Windows View changelog
v1.1.0 · portable · win64 · no installer · no admin rights
Dshh Dshh
>_
dshh
+
production3
>_
prod-web-01
admin@10.0.4.21:22
>_
prod-web-02
admin@10.0.4.22:22
~/
assets-bucket
deploy@10.0.4.30:22
local & lab2
PowerShell
local · pwsh
bench-rig
COM4 · 115200 baud
in-process · zero external binaries
SSHprod-web-01
SFTPassets-bucket
LOCALPowerShell
SERIALbench-rig
· connecting to prod-web-01 …
Welcome to Ubuntu 24.04.2 LTS (GNU/Linux 6.8.0-45-generic x86_64)
Last login: Tue Jul 7 08:41:07 2026 from 10.0.4.18
admin@prod-web-01:~$ docker ps
CONTAINER ID IMAGE STATUS NAMES
f3a91c02be71 nginx:1.27 Up 12 days edge
08c4d1a99e02 api:2026.06 Up 12 days api
admin@prod-web-01:~$
~/ /var/www/assets ↑ upload
namesizemodified
releases/jul 07 09:02
img/jun 30 17:44
app-2026.06.3.js412 KBjul 07 08:58
styles.css88 KBjul 07 08:58
4 items · sftp · connected as deploy
· starting Windows PowerShell …
PowerShell 7.4 · running as you
PS C:\Users\you> dshh --version
dshh 0.2.0
PS C:\Users\you> Get-Process dshh | Select Id,CPU
Id CPU
7312 1.83
PS C:\Users\you>
· opened COM4 @ 115200 8N1
[ 0.000] boot: ESP32-S3 rev2, flash 8MB
[ 0.412] wifi: sta connected, rssi -58
[ 2.103] sensor: temp=24.6C hum=41%
[12.103] sensor: temp=24.7C hum=41%
>
df -h docker ps tail -f syslog + manage
$ run a command… ctrl+k
broadcast off
protocols

Six ways in. Zero child processes.

>_
SSHrussh

Real xterm terminal with buffer search, session logging, highlight rules and port forwarding.

~/
SFTPrussh-sftp

File browser over your existing SSH hosts — one click from any terminal session.

SCPrussh

Copy files to/from a server over the SSH channel — for hosts with SFTP disabled.

FTPsuppaftp

Plain FTP for the legacy boxes you can't decommission yet.

Serialserialport

COM ports at any baud rate — bench rigs, switches, embedded consoles.

Localportable-pty

cmd & PowerShell in a tab. Run-as-Admin opens elevated in its own window.

why in-process

One exe. The whole client.

Single process. Every protocol is a Rust crate compiled into dshh.exe. Nothing spawned, nothing on PATH.
Saved profiles. Grouped connections with duplicate and quick reconnect — not a PowerShell history.
Tabs + split pane. Terminals stay mounted across tab switches; buffers survive.
Compose + broadcast. Quick command chips, a Ctrl+K compose bar, and one-keystroke broadcast to every connected host.
task manager — before / after
# the usual stack
putty.exe  pageant.exe  plink.exe
psftp.exe  ftp.exe  ssh.exe
# dshh
dshh.exe  ← ssh · sftp · scp · ftp · serial · local
download

Get Dshh for Windows

v1.1.0 latest jul 2026
Dshh 1.1.0 — portable
↓ Dshh-portable.zipwin64
unzip & run dshh.exe · no installer, no admin
uninstall = delete the file
checking github for the latest release…
updates
You'll know when there's a new build
01  on launch, dshh checks GitHub Releases
02  compares the tag against the running build
03  newer? a quiet in-app notification — your call
You're up to date
dshh 0.2.0 · checked on launch
Checking for updates…
GET api.github.com/…/releases/latest
Update available
dshh 0.3.0 · released today
DownloadChangelog
Downloading dshh 0.3.0
Dshh-portable.exe0%
Ready — dshh 0.3.0 downloaded
saved next to dshh.exe · restart to apply
▶ simulate update check ↺ replay
No background service, nothing silent. This page reads the same feed — it always shows the newest release.
changelog

Release history

v1.1.1latest
aug 2026
Reorder quick commands and macros
  • Quick commands can be reordered — drag a row by its grip in the manage dialog and the chips above the compose bar follow that order, so the ones you actually use sit where your eye lands
  • Macros get the same handle, reordered the same way
  • Both lists also move with the keyboard: focus a grip and press the up or down arrow, which beats dragging inside a scrolling dialog
v1.1.0
aug 2026
Paste guard, transfer progress, file owners
  • Pasting two or more lines now asks first, listing the exact numbered lines that would run — every newline is an Enter to the shell, so a stray copy used to execute commands with no warning. Covers Ctrl+V, Ctrl+Shift+V, Shift+Insert and right-click paste; switch it off in Settings › Terminal
  • Uploads and downloads show a real progress bar with bytes moved, percentage and position in a multi-file batch, in the SFTP/FTP browser and the SCP dialog. Servers that won't report a size get an indeterminate bar rather than a fake percentage
  • The file browser has an owner column. SFTP resolves numeric uids against the server's own /etc/passwd, so you see root and www-data rather than 0 and 33; FTP reads the names straight out of its listing
v1.0.1
aug 2026
Right-click copy and paste
  • Right-clicking the terminal now pastes the clipboard. Select text first and the same right-click copies it instead — so select, right-click, right-click again copies a line and pastes it back without touching the keyboard
  • Fixed: a quick command typed into the new-row fields is saved when you press Done, instead of being discarded unless you started a second one
v1.0.0
jul 2026
1.0 — forwarding in every direction, macros, agent auth
  • Port forwarding now covers all three OpenSSH directions: local (-L), remote (-R, where the server listens on your behalf) and dynamic (-D), which runs a built-in SOCKS5 proxy
  • Every running forward shows live byte counters and an indicator that flashes on real traffic, so you can tell an idle tunnel from a busy one
  • SSH agent authentication — the private key never enters Dshh. Uses the Windows OpenSSH agent service, falling back to Pageant
  • Macros: record the commands you type in a terminal, name them, and replay the sequence into any session from the bottom dock
  • Optional terminal status bar with the target, time connected, grid size and encoding, plus indicators for logging, macro recording and running forwards
  • Optional Windows 11 Mica or acrylic backdrop behind the app chrome. The terminal itself stays opaque
  • Tabs carry a per-protocol icon, so a long row of sessions is scannable without reading labels
  • Settings is now organised into four tabs — General, Terminal, Output & logs, Security — instead of one long scroll
  • Font and line height are dropdowns rather than free text. The font list shows only the monospace faces actually installed on your machine, each rendered in its own face
  • Session logs default to a logs folder inside the portable data folder, so they travel with the app and auto-logging works without picking a folder first
  • The portable download is now a folder — dshh.exe beside its own data/ — so settings and saved connections travel with it to another machine or a USB stick
  • Upgrading from a non-portable build carries your existing settings and saved connections across on first run, leaving the originals untouched
v0.5.3
jul 2026
Type a path to jump there
  • The file-browser address bar is now editable — type a directory and press Enter instead of clicking down one level at a time. Works on both the remote and local panes
  • SFTP sessions show the real starting directory (e.g. /home/you) instead of a bare "."
v0.5.2
jul 2026
Transfer & dialog fixes
  • Fixed: SFTP/FTP uploads keep the file's exact name and extension — the local folder path is no longer part of the uploaded filename
  • Fixed: the connection editor and other dialogs no longer close when a text selection started inside a field ends outside the box
v0.5.1
jul 2026
Readable session logs & more terminal color
  • Recorded session logs are now clean, readable text — colour codes stripped, backspace / delete / progress-bar rewrites applied, proper UTF-8
  • Telnet sessions can record logs too
  • Richer terminal palette and more built-in highlight keywords (fatal, refused, timeout, completed, listening, …)
v0.5.0
jul 2026
File browser overhaul & zip downloads
  • Dual-pane split view — local disk next to the remote listing, drag & drop both ways to upload / download
  • File-type icons in the SFTP/FTP browser
  • Fixed: downloads keep the original file type in the save dialog; folders no longer render as plain files
  • The portable build now ships as Dshh-portable.zip
v0.4.0
jul 2026
Telnet, jump hosts, multi-exec & self-update
  • Telnet sessions and one-hop SSH jump hosts (bastion)
  • Multi-exec — broadcast typed input to several SSH tabs at once
  • Drag & drop upload into the file browser; edit remote files in your local editor with auto re-upload
  • Optional master-password encryption for saved credentials
  • In-app self-update from GitHub Releases; SCP tilde/quote fixes
v0.2.0
jul 2026
Local terminal, SCP & a terminal fix
  • Local terminal — cmd & PowerShell in a tab (portable-pty / ConPTY); Run-as-Admin opens elevated in its own window
  • SCP file transfer over the SSH channel (upload / download), for hosts with SFTP disabled
  • Fixed a PTY width desync that smeared line editing (arrows, history) after the font loaded
v0.1.0
jul 2026
Initial release
  • SSH, SFTP, FTP and serial — all in-process (russh · russh-sftp · suppaftp · serialport)
  • Tabbed workspace with split pane; terminals survive tab switches
  • Saved connection profiles with groups
  • Quick command chips, Ctrl+K compose bar, broadcast to all connected hosts
  • Buffer search (Ctrl+F), session logging, ANSI highlight rules, SSH port forwarding
unreleased
known-hosts verification (host keys are currently trust-on-first-use) · recursive transfers · multi-file drag select
docs

Up and running in 30 seconds

Quickstart
01download Dshh-portable.zip
02unzip it anywhere — a USB stick works
03run dshh.exe and add your first host with +
No installer, no admin rights, no services. Windows SmartScreen may ask once — the exe is unsigned for now.
Keyboard & commands
Ctrl + Kfocus the compose bar from anywhere
Ctrl + Fsearch the terminal buffer
Enterrun the composed command in the active tab
broadcastsend one command to every connected host
>_
dshh — in-process multi-protocol client
win64 · tauri 2 + react + rust · zero external binaries