Skip to content
New in 0.20Keeps watching with its window closed

Your servers on every cloud, in one window.

CloudDesk is a desktop app for the servers, databases, load balancers and buckets you run on AWS, DigitalOcean and Hetzner. Find any of them in a keystroke, see what state they’re in and what they cost, and act on them without opening a provider console.

  • macOS 11 or later
  • Apple silicon and Intel
  • No account to create

CloudDesk in numbers

from launch to your fleet on screen
0.5 s
for ⌘K to read your whole fleet
2 ms
clouds in one list
3
between checks, window open or not
5 min

Measured on a release build on Apple silicon, against a cache of 38 real servers.

Find

Any server, two keystrokes away.

⌘K searches every server, database, load balancer and bucket in every account you’ve connected. It reads a copy on your machine, so it answers before you’ve finished typing, and it works offline.
  • Lead with a verb to act: ssh, start, stop, restart, open or copy.
  • Narrow it with words you’d say anyway: stopped, aws, in:frankfurt, project:storefront, >$50.
  • With nothing typed, the servers you’ve starred and opened lately come first.
  • Projects group what you build across clouds, and stay on your machine.

Understand

What state it’s in, and what it costs.

Each screen says how fresh it is, and why when it isn’t. Costs come from list prices bundled with the app, with the bill above them wherever your provider publishes one. The two are never added together, and neither are dollars and euros.

Metrics a click away

CPU and network from CloudWatch, DigitalOcean’s monitoring and Hetzner’s metrics, kept a day at a time.

The bill above the estimate

AWS’s Cost Explorer and DigitalOcean’s invoices, beside an estimate that works offline and says when a rate is missing.

Load balancers, target by target

Which targets fail their checks, and why, wherever the provider says. DigitalOcean doesn’t, so its targets read as not reported rather than healthy.

What “public” means

A bucket’s policy and its Block Public Access settings, read to say whether anyone can read it, list it or write to it.

The questions a database is asked

Engine and version, replicas and Multi-AZ, backups, and changes waiting for the next maintenance window.

Staleness, explained

Syncing, backing off after failures, or waiting its turn: each account says which, rather than going quiet.

Operate

Act, and know what will happen first.

Starting a server doesn’t ask: nothing breaks. Stopping one does, and says what it means for that one — an EC2 instance coming back on a new address, a droplet that keeps billing at the full rate, a name that looks like production.
  • Start, stop and restart servers on all three clouds, and several at once.
  • Image a server, or destroy one once you’ve typed its name.
  • Open an SSH session in the app, checked against the same known_hosts your terminal uses.
  • Browse buckets, preview files, drop files in to upload them, and download or delete them.

Watch

It keeps watching when you’re not.

With its window closed, and from login if you like, CloudDesk checks your accounts every five minutes and tells you about four things.

  • A load balancer with no healthy targets.
  • A month heading past the budget you set.
  • A day that cost far more than the week before it.
  • A bucket that anyone can now list, or write to.

Only what a five-minute check can honestly promise: nothing about a CPU spike it would hear about half an hour late.

Trust

Your credentials stay where they are.

A desktop app that holds keys to your infrastructure should say exactly what it does with them.
  • Your AWS profiles, as they are

    It reads the profiles in ~/.aws you already use, SSO and assumed roles included, and checks each with AWS before saving anything.

  • Secrets in the keychain

    DigitalOcean and Hetzner tokens go to your system’s credential store. Its database holds a reference, never a secret, and its logs are scrubbed as they’re written.

  • Nothing waits on a cloud

    Every list and search reads a database on your machine, which a sync keeps up to date in the background.

  • Permissions in the open

    A published IAM policy that can only read, and another to add for the actions that change things. See them

  • A changed host key is refused

    A new server’s key is shown before it’s trusted. One whose key has changed isn’t offered as a choice at all.

  • No account, no telemetry

    It talks to your clouds, and to GitHub to check for an update. Nothing else.

Clouds

Three clouds, one list.

Connect an AWS profile, or paste a DigitalOcean or Hetzner token. Adding a cloud to CloudDesk means writing one adapter, so the screens behave the same whichever cloud a server is on.

AWS — Amazon Web Services

Amazon Web Services

  • EC2 instances in every enabled region
  • RDS databases
  • Application and Network Load Balancers, with target health
  • S3 buckets, to browse, upload and download
  • CloudWatch metrics
  • The bill, from Cost Explorer

DigitalOcean — DigitalOcean

DigitalOcean

  • Droplets
  • Managed databases
  • Load balancers
  • Monitoring metrics
  • Invoices, by droplet

Hetzner — Hetzner Cloud

Hetzner Cloud

  • Servers in every location
  • Load balancers, with health per target and port
  • Metrics
  • Prices in euros, as Hetzner bills

Open it, and your fleet is already there.

Half a second from launch, from a copy on your machine, while a sync catches up in the background.

macOS 11 or later · Apple silicon and Intel · Signed updates, in one click