Introducing tg SSH connection manager
To scratch a specific itch around the number of VMs I interact with on a weekly basis, I took a stab at creating a python TUI application for managing SSH connections. Introducing Tengingarstjóri
tg
for short, is a Python TUI based SSH connection manager that integrates seamlessly with your existing SSH configuration.
Features
- 🔧 Full SSH Connection Management: Add, remove, edit, and delete SSH connections
- 📋 Enhanced List Views: Detailed and compact formats with advanced option display
- 🚀 ProxyJump Support: Seamless bastion host and jump server configuration
- 🔀 Port Forwarding: Local, remote, and dynamic (SOCKS) port forwarding
- 🔑 Smart SSH Key Management: Automatic key discovery and defaults
- 🔗 Non-invasive SSH Config Integration: Preserves your existing setup
- 🎯 Fast CLI Commands: Intuitive
tg
prefix with rich output formatting
Demo
Architecture
Rather than modifying your main SSH config directly, Tengingarstjóri will:
- Create a managed config file:
~/.ssh/config.tengingarstjori
- Add a single line to main config to include our new file:
Include ~/.ssh/config.tengingarstjori
- Manage connections separately: All additions/changes go to the managed file
- Preserve your existing SSH setup: Your existing SSH config remains untouched
Check out the Github repo here.