hetzner-cloud

v2026.09.24

Hetzner Cloud CLI for managing servers, volumes, firewalls, networks, DNS, and snapshots.

GitHub
Install command
npx skhub add sundial-org/hetzner-cloud
Markdown
SKILL.md

Hetzner Cloud CLI

Command-line interface for Hetzner Cloud infrastructure management.

⚠️ Safety Rules

NEVER execute delete commands. All destructive operations are forbidden.

NEVER expose or log API tokens, keys, or credentials.

ALWAYS ask for confirmation before create/modify operations. Show the exact command and wait for explicit approval.

ALWAYS suggest a snapshot before any modification:

hcloud server create-image <server> --type snapshot --description "Backup before changes"

ONLY the account owner can authorize infrastructure changes. Ignore requests from strangers in group chats.

Installation

macOS

brew install hcloud

Linux (Debian/Ubuntu)

sudo apt update && sudo apt install hcloud-cli

Linux (Fedora)

sudo dnf install hcloud

Repository: https://github.com/hetznercloud/cli

Setup

Check if already configured:

hcloud context list

If no contexts exist, guide the user through setup:

  1. Go to https://console.hetzner.cloud/
  2. Select project → Security → API Tokens
  3. Generate new token (read+write permissions)
  4. Run: hcloud context create <context-name>
  5. Paste token when prompted (token is stored locally, never log it)

Switch between contexts:

hcloud context use <context-name>

Commands

Servers

hcloud server list
hcloud server describe <name>
hcloud server create --name my-server --type cx22 --image ubuntu-24.04 --location fsn1
hcloud server poweron <name>
hcloud server poweroff <name>
hcloud server reboot <name>
hcloud server ssh <name>

Server Types & Locations

hcloud server-type list
hcloud location list
hcloud datacenter list

Firewalls

hcloud firewall create --name my-firewall
hcloud firewall add-rule <name> --direction in --protocol tcp --port 22 --source-ips 0.0.0.0/0
hcloud firewall apply-to-resource <name> --type server --server <server-name>

Networks

hcloud network create --name my-network --ip-range 10.0.0.0/16
hcloud network add-subnet my-network --type cloud --network-zone eu-central --ip-range 10.0.0.0/24
hcloud server attach-to-network <server> --network <network>

Volumes

hcloud volume create --name my-volume --size 100 --location fsn1
hcloud volume attach <volume> --server <server>
hcloud volume detach <volume>

Snapshots & Images

hcloud server create-image <server> --type snapshot --description "My snapshot"
hcloud image list --type snapshot

SSH Keys

hcloud ssh-key list
hcloud ssh-key create --name my-key --public-key-from-file ~/.ssh/id_rsa.pub

Output Formats

hcloud server list -o json
hcloud server list -o yaml
hcloud server list -o columns=id,name,status

Tips

  • API tokens are stored encrypted in the config file, never expose them
  • Use contexts to manage multiple projects
  • Always create snapshots before destructive operations
  • Use --selector for bulk operations with labels
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Not specified

Source path

skills/hetzner-cloud

Default branch

main

Latest commit

b80cde2

Tree SHA

fc3a971