
WindTerm: Open-Source Cross-Platform SSH Terminal, A Swiss Army Knife for Sysadmins
Have you ever had this experience —
You open a terminal to connect to a server, only to find you need to open FileZilla to transfer files. Then you switch to serial debugging, which requires yet another piece of software. Want to view logs from two servers simultaneously? Split screen? Sorry, your terminal doesn’t support it.
Your desktop ends up looking like this: an SSH window, an SFTP window, a serial tool… all cluttered together.
WindTerm is here to solve this problem.
What is WindTerm
WindTerm is an open-source, cross-platform SSH/SFTP/Shell/Telnet/Serial terminal emulator, focused on being “All in One” — the tools you need for daily operations, all in one window.
Search for kingToolbox/WindTerm on GitHub — it has over 10k stars. Licensed under Apache 2.0, completely free for personal and commercial use.
It supports a long list of protocols:
- SSH v2 (password, public key, keyboard-interactive, GSSAPI authentication — all supported)
- Telnet, Raw TCP, Serial
- SFTP, SCP (built-in file transfer)
- XModem / YModem / ZModem (legacy device transfer protocols)
- X11 forwarding, port forwarding (local/remote/dynamic)
Who is it for? DevOps engineers, embedded developers, network engineers — anyone who needs to connect to remote machines.
Why It’s Called a Swiss Army Knife
Built-in SFTP — No Need for Another App
This is the most noticeable improvement.
WindTerm has a file browser on the left and a terminal on the right. Once connected via SSH, the file browser automatically mounts the remote directory. Drag and drop to upload or download.
No more FileZilla or WinSCP. One window handles it all.
Session Management — No More Typing IPs Manually
Login information can be saved: hostname, port, username, authentication method. Next time, just click to connect.
Supports tree-style session grouping — organize by project or environment: dev, test, production — all neatly arranged.
Split Screen + Multi Tab
Both horizontal and vertical splits are supported. Want to view logs from two servers side by side? Split one window in half.
Combined with multiple tabs, managing dozens of machines simultaneously is no problem.
Auto-Completion and Command Sender
Auto-completion in the local shell suggests commonly used commands as you type.
There’s also a “Command Sender” feature — select a batch of sessions and send one command to all servers at once. Batch restart, batch update — one click and you’re done.
Serial Support
A blessing for embedded developers. Connect to your dev board, select the baud rate, and open a serial session directly in WindTerm. No need for extra tools like minicom or PuTTY.
Other Details
- Vim key bindings (supports both local and remote mode, toggle with Shift+Enter)
- Theme support (can switch to VS Code-style color schemes)
- Window transparency adjustment
- Quick search bar, cross-tab search
- Supports Oh-My-Zsh and Oh-My-Posh Powerline display
Installing on Ubuntu
Installing WindTerm is very simple — no APT, no compiling needed. Just download, extract, and run.
1. Download
Go to the GitHub Releases page and download the Linux version:
# Using 2.6.0 as an example; version number may vary
wget https://github.com/kingToolbox/WindTerm/releases/download/2.6.0/WindTerm_2.6.0_Linux_Portable_x86_64.tar.gz
You can find the latest version at
github.com/kingToolbox/WindTerm/releases.
2. Extract and Move to /opt
tar xzf WindTerm_2.6.0_Linux_Portable_x86_64.tar.gz
sudo mv WindTerm_2.6.0 /opt/windterm
cd /opt/windterm
3. Make Executable
sudo chmod +x WindTerm
4. Create Desktop Icon
This way you can find it in the application menu or pin it to the Dock.
sudo tee /usr/share/applications/windterm.desktop > /dev/null <<'EOF'
[Desktop Entry]
Name=WindTerm
Comment=A professional cross-platform SSH/Sftp/Shell/Telnet/Serial terminal
Exec=/opt/windterm/WindTerm
Icon=/opt/windterm/windterm.png
Type=Application
Categories=Utility;TerminalEmulator;
StartupNotify=false
EOF
sudo update-desktop-database
If your download doesn’t include windterm.png, you can specify another icon path.
5. Launch
Now you can search for “WindTerm” in the application menu to launch it.
Or run it directly from the command line:
/opt/windterm/WindTerm
You can also create a symlink for easy terminal access:
sudo ln -s /opt/windterm/WindTerm /usr/local/bin/windterm
windterm
Comparison with Similar Tools
| Feature | WindTerm | Termius | MobaXterm | Xshell |
|---|---|---|---|---|
| Price | Free | Subscription | Basic free | Personal free |
| Open Source | Partially | No | No | No |
| Cross-platform | Linux/macOS/Windows | Linux/macOS/Windows | Windows | Windows |
| Built-in SFTP | ✅ | ✅ | ✅ | ❌ |
| Serial Support | ✅ | ❌ | ✅ | ❌ |
| Split Screen | ✅ | ❌ | ✅ | ❌ |
| Command Sender | ✅ | ❌ | ✅ | ❌ |
The paid versions of Termius and MobaXterm do have more features, but for personal users, WindTerm’s free features are more than sufficient.
If there’s one downside — WindTerm is only partially open source. Some modules (especially UI-related) haven’t fully disclosed their source code yet. However, there are no usage restrictions or paywalls.
A Few Things to Note
On first launch, you’ll see a “Reimport Shell Sessions” prompt, asking if you want to reimport local shell sessions. If you don’t want to see it every time, edit the config file to disable it:
nano ~/.wind/profiles/default.v10/user.config
Find the line with "terminal.reimport.shell.sessions" and change the value to false.
Serial permission issue: If you need to connect to serial devices with WindTerm, remember to add your user to the dialout group:
sudo usermod -a -G dialout $USER
Then log out and back in.
Summary
WindTerm isn’t a flashy terminal — its positioning is clear: a productivity tool for DevOps and operations personnel.
One window handling SSH, SFTP, serial, splits, and batch commands — for developers who connect to servers daily, the savings aren’t just in switching between applications, but in the continuity of your workflow.
If you’re still using the “Terminal + FileZilla + Serial Assistant” multi-tab approach, give WindTerm a try — you might never go back.
Comments