
A native GTK4 desktop app for editing and validating your ~/.ssh/config
.
Search, edit, and validate SSH hosts with a clean UI — no need to touch terminal editors.
- Visual host editor – Edit common fields (Host, HostName, User, Port, IdentityFile, ForwardAgent, etc.).
- Inline validation – Field-level errors shown directly under inputs; parser checks for duplicates and invalid ports.
- Search and filter – Quickly find hosts across aliases, hostnames, users, and identities.
- Raw/Diff view – Edit raw
ssh_config
text with instant diff highlighting. - Quick actions – Copy SSH command, test connection, and revert changes.
- SSH Key Management – Import, generate, and use your keys without leaving the app.
- Safe saves – Automatic backups (configurable), atomic writes, and include support.
- Keyboard & mouse friendly – Smooth GTK 4 UI with dark theme preference.
- Translations – Ready for localization (gettext support via
po/
).
You can build and run with GNOME Builder or flatpak-builder
:
flatpak-builder --user --force-clean --install-deps-from=flathub build-dir io.github.BuddySirJava.SSH-Studio.json --install
# Run
flatpak run io.github.BuddySirJava.SSH-Studio
src/ssh_config_parser.py
→ Parse/validate/generate SSH config safely.src/ui/
→ Main App Components (MainWindow
,HostList
,HostEditor
,SearchBar
,PreferencesDialog
,TestConnectionDialog
,SSH Key Manager
).data/ui/*.ui
→ GTK Builder UI blueprints.data/ssh-studio.gresource.xml
→ GResource manifest.data/media/
→ App icon and screenshots.src/main.py
→ Application entry point.meson.build
,data/meson.build
,src/meson.build
→ Build and install rules.io.github.BuddySirJava.SSH-Studio.json
→ Flatpak manifest.po/
→ Translations.
Requirements:
- Python 3.12+
- GTK 4 / libadwaita 1.4+
- Meson & Ninja
- Flatpak / flatpak-builder
Clone and run in dev mode:
git clone https://github.com/BuddySirJava/SSH-Studio.git
cd SSH-Studio
meson setup builddir
meson compile -C builddir
./builddir/src/ssh-studio
Contributions are welcome!
- Report bugs or request features in the issue tracker.
- Submit pull requests with improvements, translations, or new features.
- Follow GNOME HIG for UI changes.
This project is licensed under the GNU GPLv3.
See LICENSE for details.
- Open an issue on GitHub.
- Check Flathub page.