A command-line interface for Hetzner Cloud
Alternatives To Cli
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
45 years ago24December 07, 20179JavaScript
A CLI React performance optimization tool that identifies potential unnecessary re-rendering
a day ago9mitRust
A modern, multi-threaded file-tree visualization and disk usage analysis tool that respects hidden file and gitignore rules.
11 days ago4April 11, 20193otherC
A simple serial device I/O tool
7 days ago61September 18, 202110bsd-3-clausePython
Stack overflow command line client. Search and browse stack overflow without leaving the terminal :computer:
7 days ago60July 13, 202212mitGo
A command-line interface for Hetzner Cloud
Py_cui65286 months ago8October 29, 202145bsd-3-clausePython
A python library for intuitively creating CUI/TUI interfaces with widgets, inspired by gocui.
Cutie29576 months ago16November 17, 20185mitPython
Command line User Tools for Input Easification
Node Cmd2611,005714a year ago11July 29, 20216mitJavaScript
Simple commandline interface to allow you to run cli or bash style commands as if you were in the terminal.
Cleye241252 months ago8November 12, 20222mitTypeScript
👁‍🗨 cleye — The intuitive & typed CLI development tool for Node.js
Consolebundle137237108 months ago6February 22, 201721bsd-3-clausePHP
Commandline interface in browser for Symfony2
Alternatives To Cli
Select To Compare

Alternative Project Comparisons

hcloud: Command-line interface for Hetzner Cloud

Build status

hcloud is a command-line interface for interacting with Hetzner Cloud.



You can download pre-built binaries for Linux, FreeBSD, macOS, and Windows on the releases page.

On macOS and Linux, you can install hcloud via Homebrew:

brew install hcloud

On Windows, you can install hcloud via Scoop

scoop install hcloud

Third-party packages

There are unofficial packages maintained by third-party users. Please note that these packages arent supported nor maintained by Hetzner Cloud and may not always be up-to-date. Downloading the binary or building from source is still the recommended install method.

Build manually

If you have Go installed, you can build and install the latest version of hcloud with:

go install[email protected]

Binaries built in this way do not have the correct version embedded. Use our prebuilt binaries or check out .goreleaser.yml to learn how to embed it yourself.

Getting Started

  1. Visit the Hetzner Cloud Console at, select your project, and create a new API token.

  2. Configure the hcloud program to use your token:

    hcloud context create my-project
  3. Youre ready to use the program. For example, to get a list of available server types, run:

    hcloud server-type list

See hcloud help for a list of commands.

Shell Completion

hcloud provides completions for various shells.


To load completions into the current shell execute:

source <(hcloud completion bash)

In order to make the completions permanent, append the line above to your .bashrc.


If shell completions are not already enabled for your environment need to enable them. Add the following line to your ~/.zshrc file:

autoload -Uz compinit; compinit

To load completions for each session execute the following commands:

mkdir -p ~/.config/hcloud/completion/zsh
hcloud completion zsh > ~/.config/hcloud/completion/zsh/_hcloud

Finally, add the following line to your ~/.zshrc file, before you call the compinit function:


In the end your ~/.zshrc file should contain the following two lines in the order given here.

#  ... anything else that needs to be done before compinit
autoload -Uz compinit; compinit
# ...

You will need to start a new shell for this setup to take effect.


To load completions into the current shell execute:

hcloud completion fish | source

In order to make the completions permanent execute once:

 hcloud completion fish > ~/.config/fish/completions/


To load completions into the current shell execute:

PS> hcloud completion powershell | Out-String | Invoke-Expression

To load completions for every new session, run and source this file from your PowerShell profile.

PS> hcloud completion powershell > hcloud.ps1

Output configuration

You can control output via the -o option:

  • For list commands, you can specify -o noheader to omit the table header.

  • For list commands, you can specify -o columns=id,name to only show certain columns in the table.

  • For describe commands, you can specify -o json to get a JSON representation of the resource. The schema is identical to those in the Hetzner Cloud API which are documented at

  • For describe commands, you can specify -o format={{.ID}} to format output according to the given Go template. The templates input is the resources corresponding struct in the hcloud-go library.

Configure hcloud using environment variables

You can use the following environment variables to configure hcloud:


When using hcloud in scripts, for example, it may be cumbersome to work with contexts. Instead of creating a context, you can set the token via the HCLOUD_TOKEN environment variable. When combined with tools like direnv, you can configure a per-directory context by setting HCLOUD_CONTEXT=my-context via .envrc.


List all servers

$ hcloud server list
ID       NAME                    STATUS    IPV4
210216   test1                   running
210729   ubuntu-8gb-nbg1-dc3-1   running

Create a server

$ hcloud server create --name test --image debian-9 --type cx11 --ssh-key demo
   7s [====================================================================] 100%
Server 325211 created


MIT license

Popular Commandline Interface Projects
Popular Command Line Projects
Popular Applications Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Command Line
Cloud Computing
Command Line Tool
Commandline Interface
Hetzner Cloud