ssh-prompter

command module
v0.0.0-...-9ad7898 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 8, 2025 License: MIT Imports: 8 Imported by: 0

README ΒΆ

πŸ” ssh-prompter

The source of this project is https://git.azlux.fr/azlux/ssh-prompter, PR are accepted on the source only.

This standalone TUI relies entirely on your SSH configuration file, without any database. It's a Go rewrite of my previous Python 3 script.

✨ Features
  • βœ… Lists all servers from your ~/.ssh/config
  • πŸ” Instant search to quickly find hosts
  • πŸ“‚ Folder grouping for better organization
  • πŸ”— Supports Include directives in ssh_config
  • ⚑ Fast and lightweight TUI interface (made with Go)
  • πŸ”Œ Connect to the selected host
πŸ“Έ Screenshot

ssh-prompter

βš™οΈ Installation

See http://packages.azlux.fr

echo "deb [signed-by=/usr/share/keyrings/azlux-archive-keyring.gpg] http://packages.azlux.fr/debian/ trixie main" | sudo tee /etc/apt/sources.list.d/azlux.list
sudo wget -O /usr/share/keyrings/azlux-archive-keyring.gpg  https://azlux.fr/repo.gpg
sudo apt update
sudo apt install ssh-prompter
Manually

You need to install the Go Language

Then you can build the project

git clone https://git.azlux.fr/azlux/ssh-prompter.git
cd ssh-prompter
go build

πŸ›  Configuration

Alias

Many people don't like the long command ssh-prompter so I recommand to put an alias into your ~/.profile or ~/.bashrc. It's safe to replace the ssh command since I don't interfere with ssh if additionnals parameters are used.

# alias ssh="ssh-prompter"
# or
# alias sshp="ssh-prompter"
Usage

Simply run :

ssh

.... and enjoy the fast interactive prompt (⚑) then press Enter to connect to the selected host (πŸš€)!

SSH config configuration

Everything is here : Official ssh_config manual I don't have a custom config file, neither a database.

This program parse the standard ssh config file. See the example for a basic config for ssh

Folder

SSH-Prompter manage folder. Host will be group by Folder when no search.

Two methods:

  • The Host name can be FolderName/Name,
  • You can add the ssh config option Folder FolderName.
    • In this case you need IgnoreUnknown Folderon the TOP of your .ssh/config file (to avoid error).

You can use both (but not in the same time for the same Host) !

Additionnal information

All Host with * are ignored.

I consider we don't want to "select" them since it's a wildcard for other hosts

Why two methods for folder :

I first wanted to have the / (slash) method but when you use ProxyJump, ssh don't allow slash into the name. So the option Folder is here to allow having a proxy server into a folder.

TMUX

If you run the script on a tmux. The window will be renamed with the Host selected.

It use the command tmux rename-window xxxxx

πŸ“œ License

MIT License - see LICENSE for details.

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
Package tui implement the terminal TUI with tcell and tview
Package tui implement the terminal TUI with tcell and tview

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL