SkillAgentSearch skills...

Sshpilot

User-friendly, cross-platform SSH connection manager

Install / Use

/learn @mfat/Sshpilot
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

SSH Pilot is a user-friendly, modern and lightweight SSH connection manager for Linux and macOS, with an integrated terminal and a file manager. It's an alternative to Termius, Putty, Mobaxterm and similar apps.

Table of Contents

<img width="1322" height="922" alt="Screenshot From 2025-10-07 10-57-55" src="https://github.com/user-attachments/assets/af8ce903-2704-4740-8e39-547765ddd490" /> <table> <tr> <td align="center" valign="top"> <img src="screenshots/start-page.png" width="560" alt="Start Page"><br><strong>Start Page</strong> </td> <td align="center" valign="top"> <img src="screenshots/main-window-with-tabs.png" width="560" alt="Main Window with Tabs"><br><strong>Main Window with Tabs</strong> </td> <td align="center" valign="top"> <img src="screenshots/tab-overview.png" width="560" alt="Tab Overview"><br><strong>Tab Overview</strong> </td> </tr> <tr> <td></td> <!-- empty cell left --> <td align="center" valign="top"> <img src="screenshots/ssh-copy-id.png" width="560" alt="SSH Copy ID"><br><strong>SSH Copy ID</strong> </td> <td></td> <!-- empty cell right --> </tr> </table>

Features

  • Tabbed interface
  • Intuitive, minimal UI with keyboard navigation and shortcuts
  • File management using SFTP
  • Organize servers in groups
  • Option to use the built-in terminal or your favorite one
  • Broadcast commands to all open tabs
  • Full support for Local, Remote and Dynamic port forwarding
  • SCP support for quickly uploading or downloading files to/from remote servers
  • Keypair generation and copying to remote servers (ssh-copy-id)
  • Support for running remote and local commands upon login
  • Secure storage for credentials via libsecret on Linux; no secret (password or passphrase) is copied to clipboard or saved to plain text
  • Privacy toggle to show/hide ip addresses/hostnames in the main window
  • Light/Dark interface themes
  • Customizable terminal font and color schemes
  • Load/save standard .ssh/config entries (Or use dedicated configuration file)
  • Free software (GPL v3 license)

Download

<img src="https://img.icons8.com/color/48/000000/debian.png" width="24"/> <img src="https://img.icons8.com/color/48/000000/ubuntu.png" width="24"/> Debian/Ubuntu APT Repository

Installation

  1. Add the GPG key:
curl -fsSL https://mfat.github.io/sshpilot-ppa/pubkey.gpg | sudo gpg --dearmor -o /usr/share/keyrings/sshpilot-ppa.gpg
  1. Add the repository:
echo "deb [signed-by=/usr/share/keyrings/sshpilot-ppa.gpg arch=amd64] https://mfat.github.io/sshpilot-ppa any main" | sudo tee /etc/apt/sources.list.d/sshpilot-ppa.list
  1. Update and install:
sudo apt update
sudo apt install sshpilot

For more information, visit: https://mfat.github.io/sshpilot-ppa/

<img src="https://img.icons8.com/color/48/000000/debian.png" width="24"/> <img src="https://img.icons8.com/color/48/000000/ubuntu.png" width="24"/> Debian/Ubuntu (Manual Install)

Latest release can be downloaded from here: https://github.com/mfat/sshpilot/releases/

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3f/Fedora_logo.svg" width="24" height="24"/> Fedora/RHEL/openSUSE COPR Repository

This repository provides automatic updates for SSH Pilot on RPM-based distributions.

dnf copr enable mahdif62/sshpilot
dnf install sshpilot

Copr build status

<img src="https://upload.wikimedia.org/wikipedia/commons/3/3f/Fedora_logo.svg" width="24" height="24"/> Fedora/RHEL/openSUSE (Manual Install)

Latest release can be downloaded from here: https://github.com/mfat/sshpilot/releases/

<img src="https://flathub.org/favicon.svg" width="24" height="24"/> Flatpak

Available on Flathub

<p align="left"> <a href='https://flathub.org/apps/io.github.mfat.sshpilot'> <img width='160' alt='Get it on Flathub' src='https://flathub.org/api/badge?locale=en'/> </a> </p>

OR in a terminal type:

flatpak install flathub io.github.mfat.sshpilot

<img src="https://img.icons8.com/color/48/000000/arch-linux.png" width="24"/> Arch Linux

Arch Linux package via AUR: https://aur.archlinux.org/packages/sshpilot

# replace yay with your AUR helper of choice, e.g. paru
yay -S sshpilot

OR

Nightly Arch Linux package via AUR (community maintained): https://aur.archlinux.org/packages/sshpilot-git

# replace yay with your AUR helper of choice, e.g. paru
yay -S sshpilot-git

<img src="https://upload.wikimedia.org/wikipedia/commons/7/74/Apple_logo_dark_grey.svg" height="24"/> macOS (aarch64)

Download the dmg file from the releases section https://github.com/mfat/sshpilot/releases/

For development on macOS:

brew install gtk4 libadwaita pygobject3 py3cairo vte3 gobject-introspection adwaita-icon-theme pkg-config glib graphene icu4c sshpass gtksourceview5

Note: webkitgtk is Linux-only and not available on macOS via Homebrew. The PyXterm.js backend will not be available on macOS; the application will use the VTE backend instead.


Minimum Requirements

| Component | Minimum Version | |---------------|----------------| | GTK 4 | 4.6 | | libadwaita | 1.4 | | VTE (GTK4) | 0.70 | | PyGObject | 3.42 | | pycairo | 1.20.0 | | Paramiko | 3.4 | | cryptography | 42.0 | | keyring | 24.3 | | psutil | 5.9.0 | | GtkSourceView | 5.0 |


💻 Run from Source

You can also run the app from source. Install the modules listed in requirements.txt and a fairly recent version of GNOME and it should run.

python3 run.py

To enable verbose debugging output, run the app with the --verbose flag:

python3 run.py --verbose

Runtime Dependencies

Install system GTK/libadwaita/VTE GI bindings (do not use pip for these).

Debian/Ubuntu (minimum versions)

sudo apt update
sudo apt install \
  python3 python3-gi python3-gi-cairo \
  libgtk-4-1 gir1.2-gtk-4.0 \
  libadwaita-1-0 gir1.2-adw-1 \
  libvte-2.91-gtk4-0 gir1.2-vte-3.91 \
  libgtksourceview-5-0 gir1.2-gtksource-5 \
  libsecret-1-0 gir1.2-secret-1 \
  python3-paramiko python3-cryptography sshpass ssh-askpass \
  gir1.2-webkit-6.0

Fedora / RHEL / CentOS

sudo dnf install \
  python3 python3-gobject \
  gtk4 libadwaita \
  vte291-gtk4 \
  gtksourceview5 \
  libsecret \
  python3-paramiko python3-cryptography sshpass openssh-askpass \
  webkitgtk6

libsecret handles secure credential storage on Linux via the Secret Service API.

Run from source

python3 run.py

Enable verbose debugging with:

python3 run.py --verbose

Documentation

https://github.com/mfat/sshpilot/wiki

Telegram Channel

https://t.me/sshpilot

Third-Party Libraries

SSH Pilot uses the following third-party libraries:

  • pyxtermjs - A fully functional terminal in your browser, used as an alternative terminal backend (MIT License)

Special Thanks

  • Elibugy as the primary sponsor of the project
  • Behnam Tavakkoli, Chalist and Kalpase, Ramin Najjarbashi, Farid and Narbeh for testing
  • Icon designed by Blisterexe

Support Development

Ko-fi: https://ko-fi.com/newmfat

Bitcoin:

bc1qqtsyf0ft85zshsnw25jgsxnqy45rfa867zqk4t

Doge:

DRzNb8DycFD65H6oHNLuzyTzY1S5avPHHx

USDT (TRC20)

TAvQWVD83DB3QuDspnMh4uiJ7hi4Jzcr6X

Related Skills

View on GitHub
GitHub Stars820
CategoryDevelopment
Updated21h ago
Forks49

Languages

Python

Security Score

100/100

Audited on Mar 27, 2026

No findings