Skip to content
SpanDock
Install

Install SpanDock in a few minutes

SpanDock is one app for macOS, Linux and Windows. On first launch it asks whether this computer is a server, a client or standalone, and remembers the answer. Installed apps update themselves.

SpanDock is free to use under the End User License Agreement, with paid plans for larger teams.

Choose how to install
You haveInstall withUpdates
A Macbrew install --cask spandock/spandock/spandockThe app updates itself
A Mac, without HomebrewThe DMG, plus one Terminal commandThe app updates itself
A Linux machine or VMbrew install spandock/spandock/spandock, or the tarballbrew upgrade spandock, or the app updates itself
WindowsThe zipThe app updates itself

macOS

Apple Silicon and Intel. Homebrew is the easiest way: there is no “Open Anyway” prompt.

With Homebrew (recommended)

Terminal
brew install --cask spandock/spandock/spandock
open -a SpanDock

Use the full name as shown, so Homebrew trusts the cask and keeps it current. To remove it: brew uninstall --cask spandock (add --zap to delete settings and data too).

Without Homebrew

  1. Download SpanDock-<version>-macos-arm64.dmg (Apple Silicon) or -amd64.dmg (Intel) from the latest release.
  2. Open it and drag SpanDock to Applications.
  3. Clear the download quarantine flag once, so macOS doesn't block the first launch:
Terminal
xattr -dr com.apple.quarantine /Applications/SpanDock.app

Without this step, approve it once under System Settings → Privacy & Security → Open Anyway. Updates the app installs itself never ask again.

Linux

x86-64 and ARM64. Works on a desktop or a VM without a screen.

With Homebrew

Terminal
brew install spandock/spandock/spandock
spandock -role=server -open=false -menubar=false   # first start: choose the mode, then Ctrl-C
brew services start spandock                       # run it in the background

Update with brew upgrade spandock. A Homebrew install never replaces itself; the dashboard tells you when a new version is out.

From the tarball

Terminal
curl -fLO https://github.com/SpanDock/spandock-releases/releases/latest/download/spandock-linux-amd64.tar.gz
tar -xzf spandock-linux-amd64.tar.gz
./spandock -role=server -open=false -menubar=false

Use spandock-linux-arm64.tar.gz on ARM. Keep the binary in a folder its user can write to (for example ~/.local/bin) so it can update itself. Settings → General → Open at login installs a user service.

Windows

x86-64.

From the zip

Download spandock-windows-amd64.zip from the latest release, unzip it and run spandock.exe. The dashboard opens in your browser.

PowerShell
Expand-Archive spandock-windows-amd64.zip -DestinationPath $env:LOCALAPPDATA\SpanDock
& "$env:LOCALAPPDATA\SpanDock\spandock.exe"

A server without a screen

On a VM, or any machine you only reach over SSH. Choose the mode once on the command line, then pair clients from the terminal.
On the server
spandock -role=server -open=false -menubar=false   # first start chooses the mode
spandock admin pair my-laptop                       # a single-use pairing code for a client
spandock admin management-token my-laptop           # lets that client manage this server
spandock admin clients                              # list clients; approve with: spandock admin approve CLIENT-ID

On the laptop

  1. Install SpanDock and choose client on the first launch.
  2. Paste the pairing code under Settings → Server connection.
  3. Paste the management token under Settings → Server management.
  4. Choose Open server dashboard: the server's dashboard opens through the encrypted tunnel.

The first launch

  1. The dashboard opens at http://127.0.0.1:8787 and asks whether this computer is a server, a client or standalone.
  2. Activate your license on the server (or standalone install): copy the key from your dashboard and paste it under Settings → License. Signing up creates a Free license.
  3. Server: add clients under Clients → Add client. Each gets a single-use pairing code. Add destinations under Destinations.
  4. Client: paste the pairing code under Settings → Server connection.
  5. Everywhere: Integrations configures Claude Code, Codex, Gemini CLI and other tools to report to SpanDock. Restart the tool afterwards.

Join a satellite

A hub can take extra servers, called satellites, to spread clients and delivery across machines. The hub keeps the settings and the history.
  1. On the hub: Settings → Scaling → Add server. Copy the join code; it works once, for 30 minutes.
  2. On the new server: install SpanDock, choose Join it as a satellite on the first launch, and paste the code.
  3. On the hub: Clients → Add client now asks which server each new client connects to. Clients fail over between servers by themselves.

Without a screen

Pass the code in the environment rather than on the command line, so it stays out of the process list:

On the new server
SPANDOCK_JOIN_CODE='spandock-join:…' spandock -role=server -open=false -menubar=false

Checking a download

Every release lists the SHA-256 of each file in checksums.txt.

Terminal
shasum -a 256 -c checksums.txt --ignore-missing   # macOS
sha256sum -c checksums.txt --ignore-missing       # Linux

Next: get your license key

Sign up to create a Free license, then paste its key into your server.

Get a Free license