Skip to main content
The superserve CLI covers the same surface as the SDK: sandboxes, commands, files, preview URLs, snapshots, templates and secrets.

Install

The npm package needs Node.js 22.4 or later. The install script downloads a standalone binary for macOS or Linux into ~/.superserve/bin.

Authenticate

Create an API key in the Superserve Console (see Get an API key), then save it:
login reads the key from a hidden prompt, or from stdin when piped, and saves it to ~/.superserve/credentials.json. In CI, set SUPERSERVE_API_KEY instead; it takes precedence over the saved key.

Quickstart

Commands that take a sandbox accept its ID or its exact name.

Commands

Run superserve <command> --help for every option, with examples.

Scripting

Add --json to any command that returns data for machine-readable output on stdout. Commands that stream raw bytes or take over the terminal (files cat, files download -, shell, completion) ignore it. Progress and errors go to stderr, so pipes only ever see data.
With --json, errors are printed to stderr as {"error": {"message", "code", "status"}}. Destructive commands ask for confirmation in a terminal and refuse to run non-interactively unless you pass --yes.

Exit codes

superserve exec exits with the remote command’s own exit code.

Shell completion

For PowerShell, add superserve completion powershell | Out-String | Invoke-Expression to your $PROFILE.

Environment variables

Telemetry

The CLI sends one anonymous event per command: the command name (for example sandbox create), its exit code and duration, the CLI version, OS, CPU architecture, runtime and whether it ran in CI, keyed by a random ID stored in the config directory. It never sends arguments, sandbox IDs, file paths, output or your API key. Disable it with SUPERSERVE_TELEMETRY=0 or DO_NOT_TRACK=1.