alfred-ssh icon indicating copy to clipboard operation
alfred-ssh copied to clipboard

SSH workflow for Alfred for Mac with powerful hostname expansion/completion

ssh workflow for Alfred

A workflow for Alfred Powerpack users to rapidly open Secure SHell (ssh) sessions with smart hostname autocompletion based on the contents of ~/.ssh/known_hosts, ~/.ssh/config, /etc/hosts and (optionally) Bonjour.

Example 1

Example 2

Releases

Prerequisites

Usage

Type ssh in Alfred followed by either a literal hostname or by some letters from the hostname of a host referenced in any of ~/.ssh/known_hosts, ~/.ssh/config, /etc/hosts, or (with pybonjour installed) Bonjour.

Alfred 3+ only: workflow configuration is available by setting/changing Workflow Environment Variables (accessed via the [𝓍] button within the workflow):

  • disable unwanted sources by setting the associated Workflow Environment Variable to 0; e.g. alfredssh_known_hosts, alfredssh_ssh_config, alfredssh_hosts, alfredssh_bonjour.
  • change the maximum number of returned results by changing alfredssh_max_results (default=36).
  • add additional files listing valid host completions (e.g. for pre-seeding) by adding space-separated short-name=~/file/path entries to the alfredssh_extra_files Workflow Environment Variable. Lines beginning with # are ignored, all other whitespace separated words are assumed to be valid hostnames.

If you wish to have iTerm2 act as ssh protocol handler rather than Terminal.app, create a new iTerm2 profile with “Name” $$USER$$@$$HOST$$, “Command” $$ and “Schemes handled” ssh (e.g. here and here).

Contributions & Thanks