Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Manage Hetzner Cloud infrastructure using the hcloud CLI. Use when working with Hetzner servers, firewalls, networks, volumes, load balancers, or any Hetzner...
Manage Hetzner Cloud infrastructure using the hcloud CLI. Use when working with Hetzner servers, firewalls, networks, volumes, load balancers, or any Hetzner...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Manage Hetzner Cloud infrastructure with the official CLI tool.
Installation (if not already installed): # Detect architecture ARCH=$(uname -m) if [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then URL="https://github.com/hetznercloud/cli/releases/latest/download/hcloud-linux-arm64.tar.gz" else URL="https://github.com/hetznercloud/cli/releases/latest/download/hcloud-linux-amd64.tar.gz" fi # Install cd /tmp wget -q "$URL" tar xzf hcloud-linux-*.tar.gz sudo mv hcloud /usr/local/bin/ chmod +x /usr/local/bin/hcloud Configuration (first time): mkdir -p ~/.config/hcloud cat > ~/.config/hcloud/cli.toml <<EOF active_context = "default" [[contexts]] name = "default" token = "YOUR_HETZNER_API_TOKEN" EOF chmod 600 ~/.config/hcloud/cli.toml Verify: hcloud version hcloud server list
# List servers hcloud server list # Get server details hcloud server describe <name-or-id> # Create server hcloud server create \ --name my-server \ --type cx11 \ --image ubuntu-24.04 \ --ssh-key <key-id-or-name> \ --location nbg1 # Start/stop/reboot hcloud server start <name-or-id> hcloud server stop <name-or-id> hcloud server reboot <name-or-id> # Delete server hcloud server delete <name-or-id> # SSH into server hcloud server ssh <name-or-id> # Run command on server hcloud server ssh <name-or-id> -- 'uname -a'
# List firewalls hcloud firewall list # Get firewall details hcloud firewall describe <name-or-id> # Create firewall hcloud firewall create \ --name my-firewall \ --rules-file rules.json # Add rule to firewall hcloud firewall add-rule <name-or-id> \ --direction in \ --port 22 \ --protocol tcp \ --source-ips 0.0.0.0/0 \ --source-ips ::/0 \ --description "SSH" # Apply firewall to server hcloud firewall apply-to-resource <firewall-name> \ --type server \ --server <server-name-or-id> # Remove firewall from server hcloud firewall remove-from-resource <firewall-name> \ --type server \ --server <server-name-or-id> # Delete firewall hcloud firewall delete <name-or-id>
# List SSH keys hcloud ssh-key list # Add SSH key hcloud ssh-key create \ --name my-key \ --public-key-from-file ~/.ssh/id_ed25519.pub # Delete SSH key hcloud ssh-key delete <name-or-id>
# List available server types hcloud server-type list # List available images hcloud image list hcloud image list --type system # Only system images # List locations hcloud location list
# List volumes hcloud volume list # Create volume hcloud volume create \ --name my-volume \ --size 10 \ --location nbg1 # Attach volume to server hcloud volume attach <volume-name> <server-name> # Detach volume hcloud volume detach <volume-name> # Delete volume hcloud volume delete <volume-name>
# List networks hcloud network list # Create network hcloud network create \ --name my-network \ --ip-range 10.0.0.0/16 # Add subnet hcloud network add-subnet <network-name> \ --type cloud \ --network-zone eu-central \ --ip-range 10.0.1.0/24 # Attach server to network hcloud server attach-to-network <server-name> \ --network <network-name>
# List load balancers hcloud load-balancer list # Create load balancer hcloud load-balancer create \ --name my-lb \ --type lb11 \ --location nbg1 # Add target (server) hcloud load-balancer add-target <lb-name> \ --server <server-name> # Add service hcloud load-balancer add-service <lb-name> \ --protocol http \ --listen-port 80 \ --destination-port 80
For complex firewall rules, use JSON: [ { "direction": "in", "port": "22", "protocol": "tcp", "source_ips": ["0.0.0.0/0", "::/0"], "description": "SSH" }, { "direction": "in", "port": "80", "protocol": "tcp", "source_ips": ["0.0.0.0/0", "::/0"], "description": "HTTP" }, { "direction": "in", "port": "443", "protocol": "tcp", "source_ips": ["0.0.0.0/0", "::/0"], "description": "HTTPS" }, { "direction": "in", "protocol": "icmp", "source_ips": ["0.0.0.0/0", "::/0"], "description": "ICMP (ping)" } ]
TypevCPURAMDiskPrice/mo (approx)cx1112 GB20 GB€4cx2124 GB40 GB€6cx2224 GB40 GB€6 (deprecated)cx2324 GB40 GB€3cx3128 GB80 GB€10cx3348 GB80 GB€5cpx1122 GB40 GB€5cpx2134 GB80 GB€10cpx3148 GB160 GB€18 cx series: Shared vCPU (cost-optimized) cpx series: Dedicated vCPU (performance-optimized)
Use --output json for parsing: hcloud server list --output json | jq Context switching: Create multiple contexts in ~/.config/hcloud/cli.toml for different projects/accounts Server labels: Use labels for organization: --labels environment=production,project=web Default location: Set default location to avoid specifying: hcloud context config default-location nbg1 Dry run: Many commands support --dry-run or --validate flags
Official docs: https://docs.hetzner.cloud/ GitHub: https://github.com/hetznercloud/cli
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.