New sshwiz is on the Mac App Store — free, with an optional Pro tier

SSH in. Click.
It's installed.

sshwiz turns server setup into a shelf you pick from. Save an encrypted profile, choose Docker, Nginx, Certbot or a pinned Node version, read the exact commands it's about to run — then watch them stream back in a live terminal. No copy-pasted gist, no half-remembered apt incantation.

Free to use · Pro is optional · macOS and Windows · your keys never leave your machine

sshwiz - New on Spotrove
sshwizFree tier
📦 Shelf📊 Dashboard⚙️ Services🐳 Docker PRO📋 Logs PRO🛡 Security PRO
{ }
🐳
Docker
Containers

Container runtime and CLI from Docker's official apt repository, including Buildx and Compose plugins.

{ }
🟩
Node.js (specific version)
Runtime

Installs a pinned major of Node.js (20.x by default) with npm from the official NodeSource repository.

{ }
🔐
Certbot
Security

The Let's Encrypt ACME client for obtaining and automatically renewing free TLS certificates.

{ }
🌐
Nginx
Web

High-performance web server and reverse proxy.

➕
Custom recipe
Your own shelf item

Define check / install / verify once and reuse it anywhere.

📥
Import JSON
Paste an exported entry

Share recipes with the team using the { } badge on any card.

Install review · 9 commands
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | …
$ sudo apt-get install -y docker-ce docker-compose-plugin
$ docker --version
InstallTargets · 3 servers

See it in action

From connection to installation

Follow a Docker install, one step at a time.

sshwiz / product walkthrough
Your server. One secure connection.Save your SSH profile and connect with your own key. Illustrative app preview; commands and output are abbreviated.SSH PROFILE01 / 04Staging boxHOSTAUTHENTICATIONubuntu@203.0.113.10~/.ssh/id_ed25519Connect →✓ SSH connection established

Your server. One secure connection.

Save your SSH profile and connect with your own key.

Illustrative walkthrough · timing condensed
Ubuntu / DebianRHEL / FedoraAlpineRecipes are written per distro family — one card, three package managers.

Key takeaways

  1. sshwiz is a desktop app for macOS and Windows that sets up a Linux server over a normal SSH connection. Nothing is installed on the server itself.
  2. Install recipes are a shelf, not a script. Each one is three steps — check, install, verify — with a command list per distro family, so it is safe to run twice.
  3. Every command is shown before it runs, and all output streams back into a live terminal. Consequently, there are no hidden steps.
  4. Credentials never leave your machine. Profiles sit in an AES-256-GCM encrypted file whose key lives in the OS keychain.
  5. Free to use. One server at a time, the whole Shelf, Dashboard, Services and the terminal cost nothing. Pro is an optional yearly subscription for the day-two views below.

What you get

Everything between “fresh VPS” and “it's running”

The boring, error-prone middle of server setup — done once, properly, and reusable.

🔐

Profiles that stay yours

Hosts, keys and passphrases live in a single AES-256-GCM file on your machine, with the encryption key held in the OS keychain. The profile stores the path to your key, not a copy of it — and your ~/.ssh/config imports in one click.

📦

A shelf, not a wiki page

Docker, Nginx, Certbot, MongoDB, git, pinned Node.js and Python versions. Every recipe is the same three steps — check, install, verify — so a second run is a no-op instead of a disaster.

🧾

Read it before it runs

The install review lists every command, in order, for the exact box you're pointed at. Nothing touches the server until you press Install — then the output streams back live.

🎯

One click, whole fleet

Pick your targets and send the same shelf to every server you've saved. Staging and production stop drifting apart because they were built from the same list.

📜

Scripts with real inputs

Turn a shell script into a form: labelled fields, selects, defaults, and secret values that arrive as shell variables instead of sitting in your history.

🛒

A marketplace of recipes

The Market tab lists everything published to the catalog. Copy an item into your local Shelf and it keeps working offline — installed content is yours, not a remote lookup.

How it works

Three steps, and none of them are “paste this into your shell”

1

Connect

Add a profile — key file, password or a pasted key — or import your whole ~/.ssh/config. The sudo password is optional, and when you set one it's fed over stdin, never on a command line where ps could read it.

2

Fill the shelf

Tick the packages and scripts you want. Pull more from the Market tab, write your own with Custom recipe, or paste one a teammate exported as JSON.

3

Install and watch

Read the install review, choose your targets, press Install. Every line of output — checks, installs, verifications — streams into the terminal panel as it happens.

The shelf

One card. Every package manager.

A recipe carries a separate command list per distro family, so the card you click is the same whether the box underneath is Ubuntu, Fedora or Alpine.

check
Is it already there? Skip the work instead of fighting it.
install
The real commands, from official repositories, in order — for example, Docker comes from Docker's own apt repository, not a distro snapshot.
verify
Prove it actually came up before you call it done.
{ } export
Every card round-trips to JSON for sharing and review.
docker · recipes.ubuntu
{
  "check":   ["command -v docker"],
  "install": [
    "sudo install -m 0755 -d /etc/apt/keyrings",
    "sudo apt-get update -y",
    "sudo apt-get install -y docker-ce …"
  ],
  "verify":  ["docker --version"]
}
curl · the published catalog
# everything published, as JSON
curl -H "Authorization: Bearer $SSHWIZ_KEY" \
  https://sshwiz.com/api/marketplace

# just the Ubuntu/Debian packages
curl -H "Authorization: Bearer $SSHWIZ_KEY" \
  https://sshwiz.com/api/marketplace/packages?family=ubuntu

# one script by id
curl -H "Authorization: Bearer $SSHWIZ_KEY" \
  https://sshwiz.com/api/marketplace/scripts/harden-ssh

Marketplace & AI assist

Describe it in English. Get a recipe.

The AI assist panel's Recipe mode drafts the check / install / verify commands for whatever you ask for, per distro family, ready to review and edit before it ever runs.

  • Bring your own key — Anthropic, OpenAI, or any OpenAI-compatible endpoint, including a local Ollama at localhost:11434.
  • Your key stays local. It lives in your own storage, never in the catalog.
  • Drafts stay drafts. Generated items save unpublished until a human reviews them.
  • Scriptable catalog. The published shelf is also a read-only JSON API, keyed per client and rate limited — point your own tooling at it.

Trust

Your servers, your credentials, your machine

sshwiz is a desktop app that speaks SSH directly. There is no relay, no agent to install on the server, and nothing to sync.

🗝

Encrypted at rest

Profiles are stored in a local AES-256-GCM file. The encryption key never leaves the OS keychain.

🤫

Sudo over stdin

The sudo password is piped to sudo -S — never interpolated into a command line, never in shell history, never visible to ps.

👀

Nothing runs unseen

Every command is listed in the install review first, and every byte of output comes back to the terminal panel. No hidden steps.

Compared

sshwiz vs. doing it by hand vs. configuration management

To be fair, each of these is the right answer somewhere. On the other hand, most servers are still set up by someone pasting commands from a gist — that is the gap sshwiz fills.

How sshwiz compares with a manual SSH session and with tools like Ansible
 By hand over SSHAnsible, Puppet, Chefsshwiz
Time to first package on a fresh boxMinutes, if you remember the commandsHours: playbook, inventory, runnerUnder a minute: connect, tick, Install
See the commands before they runOnly if you wrote them downDry-run mode, in the tool's own DSLAlways — the install review lists every line
Safe to run twiceDepends on the scriptYes, by designYes — the check step skips what's already there
Anything installed on the serverNoUsually a Python runtime or an agentNo — plain SSH, nothing left behind
Where credentials liveShell history and ~/.sshVault files, CI secretsAn encrypted local file, key in the OS keychain
Best forOne-off boxes you know wellFleets you rebuild from codeThe one to twenty servers you set up by hand

Free and Pro

The rest of the cockpit

The free tier covers one server at a time, the whole Shelf, Dashboard, Services and the terminal. Pro is an optional yearly subscription that turns the same connection into day-two operations with the views below. Upgrade inside the app; on macOS it is billed through the App Store.

🗂Simultaneous sessionsSeveral servers open in tabs at once
🐳DockerContainers, images and logs without the CLI
📋LogsTail and search journald and file logs live
📁FilesBrowse, edit and transfer over the same session
🛡SecurityFirewall, SSH hardening and update posture
✨AI assistBring your own key; drafts commands and recipes for review

Questions

The things people ask first

Answers last reviewed on . Something missing? Ask us and it goes in here.

Does sshwiz install anything on my server?

No. It opens a normal SSH session and runs the same commands you would have typed. There is no daemon, no agent and nothing left behind — uninstalling sshwiz changes nothing on the box.

Where do my SSH keys and passwords live?

On your machine only. Profiles are written to a local file encrypted with AES-256-GCM whose key sits in the OS keychain, and a key-file profile stores the path — your private key stays where it already was.

What happens if I install the same package twice?

Nothing bad. Every recipe starts with a check step; if the package is already there, the install is skipped and the verify step still confirms it's healthy.

Can I use my own recipes and share them?

Yes — write one with Custom recipe, then use the { } badge on any card to export it as JSON. Teammates paste it straight into their own Shelf, or you can publish it to the marketplace for everyone. The authoring guide covers what makes a good one.

Which AI models does the assist panel use?

Whichever you bring. It speaks to Anthropic, OpenAI, or any OpenAI-compatible endpoint — including a local Ollama instance if you would rather nothing left the building.

How is sshwiz different from Ansible or a shell script?

Ansible and scripts are the right tool for a fleet you rebuild often, but they need a playbook, an inventory and a runner before the first package lands. sshwiz is for the box you were about to set up by hand: connect, tick, install — and every recipe still exports as plain JSON you can read. See the comparison above.

In short

Your next server, set up before the coffee cools

Our recommendation: if you set up servers by hand more than once a month, sshwiz will pay for itself in the first session. The download is free and the Shelf is free, so install it, point it at a box you were going to set up by hand anyway, and see how far the shelf gets you. Pro is there when you want the day-two views.

Prefer to look around first? Read the authoring guide to see exactly what a recipe is made of.