Wush
Who is this Wush?
Section titled “Who is this Wush?”Wush - wush is a command line tool that lets you easily transfer files and open shells over a peer-to-peer WireGuard connection. It’s similar to magic-wormhole but:
- No requirement to set up or trust a relay server for authentication.
- Powered by WireGuard for secure, fast, and reliable connections.
- Automatic peer-to-peer connections over UDP.
- Endless possibilities; rsync, ssh, etc.
Commands
Section titled “Commands”USAGE:
Wush subcommand
Start the wush server:
wush serveOpen a shell to the wush host:
wush sshTransfer files to the wush host using rsync:
wush rsync local-file.txt :/path/to/remote/fileCopy a single file to the host:
wush cp local-file.txtSUBCOMMANDS:
| Command | Meaning |
|---|---|
cp | Transfer files. |
port-forward | Transfer files. |
rsync | Transfer files over rsync. |
serve | Run the wush server. |
ssh | Open a shell. |
version | Show wush version. |
OPTIONS:
wush --version boolPrint the version and exit.
Install
Section titled “Install”Download file from Git
We tested the program using machines running Windows and Linux (with a GUI).
For Windows: Extract the files to a folder and drive of your choice. Files that we will be transferring will be sent to/from there.
On Linux, installation is done using the method that works best for you. Files (at least for us) were saved/sent to/from the Home directory.
How to use
Section titled “How to use”Now let’s transfer a PNG file from one machine to another. In our case, Windows will act as the host, and Linux will be the client.
To do this, open CMD from the folder where Wush is located. Then, enter the following commands:
Obtain the host machine’s auth key using the following command:
./Wush serve
Copy Auth key
Now, on the client machine, enter the command to send the file:
wush cp 2.png
2.png is the file that we want to send from Linux to Windows.
In the client console, we paste the key that was obtained earlier on the host machine.
How looking it

Well Done
You can also use Wush for remote access to a machine’s console. The connection is also established using an Auth key.
Use the following commands:
For hosts
Wush serveFor client
Wush sshCredits
Section titled “Credits”Source - GitHub Coder-Wush