The hostatlas CLI is a single static Go binary that gives you scripting-friendly access to everything the dashboard does. It runs on macOS, Linux, and Windows, with shell completion for bash, zsh, fish, and PowerShell.
The top-level https://install.hostatlas.app/cli/version.json carries the full list under binaries[] (filename, size, sha256, url) — useful when scripting a version-pinned install.
Get the key from Settings → API Keys in your HostAtlas dashboard. The CLI stores it at ~/.hostatlas/cli.json with mode 0600. Revoke the key anytime — the CLI will fail loudly on next use.
Reads ~/.ssh/configand/etc/hosts as two independent import sources, presents a checkbox picker of usable hosts, then SSHes to each selected host via the local ssh binary and installs the agent. Every host gets a fresh install key minted from the platform — one per server, revocable individually.
Honours your IdentityFile, ProxyJump, ControlMaster, and ssh-agent — nothing about SSH is re-implemented
Auto-skips wildcards + github.com / gitlab.com / bitbucket.org from ssh_config; auto-skips loopback / multicast / link-local / broadcasthost from /etc/hosts
Picker rows carry a [ssh] or [hosts] badge so the source is visible
On alias collision ~/.ssh/config wins (its User / Port matter to ssh(1) at connect time)
Parallel installs capped at 5 concurrent, live ✓/✗ per host, exit summary
Flags:
Flag
Purpose
--ssh-config <path>
Override the ssh_config path (default: ~/.ssh/config)
--hosts-file <path>
Override the hosts-file path (default: /etc/hosts)
--user <name>
Default SSH user for /etc/hosts entries (ssh_config entries keep their own User)
--no-ssh-config
Skip ~/.ssh/config
--no-hosts-file
Skip /etc/hosts
--yes
Skip the picker, install on every non-skipped host