Skip to content

Commands Reference ​

Complete reference for all Slipway CLI commands.

Command Pattern ​

Most commands operate on the project linked in the current directory (via .slipway.json created by slipway init or slipway link).

bash
slipway <command> [options]
slipway <resource>:<action> [target] [options]

Authentication ​

login ​

Authenticate with a Slipway server. Opens your browser for login, then polls for confirmation.

bash
slipway login [--server <url>]

The server URL can also be set via the SLIPWAY_SERVER environment variable. Credentials are stored in ~/.slipway/config.json.

logout ​

Remove saved credentials.

bash
slipway logout

whoami ​

Show current authentication status — email, name, team, role, and server.

bash
slipway whoami

Projects ​

init ​

Initialize a new Slipway project in the current directory. Creates the project on the server and saves a .slipway.json config file locally.

bash
slipway init [--name <name>]

Checks for a Dockerfile and warns if missing. Auto-detects the project name from package.json or the directory name.

Link the current directory to an existing Slipway project.

bash
slipway link <project-slug>

Use this when the project already exists (e.g., created via the dashboard) and you want to deploy from a different machine.

projects ​

List all projects.

bash
slipway projects

Shows name, slug, environment count, and last updated date.

project:update ​

Update a project's details.

bash
slipway project:update <slug> [--name <name>] [--description <desc>] [--repo <url>]

Environments ​

environments ​

List environments for the current project.

bash
slipway environments

Shows name, slug, type (production/staging), domain, app status, and created date.

environment:create ​

Create a new environment.

bash
slipway environment:create <name> [--production] [--domain <domain>] [--from <environment>]

--from copies configuration through each variable's preview policy: inherit, omit, or generate a new value. Secrets default to omit.

environment:update ​

Update an environment's settings.

bash
slipway environment:update <slug> [--name <name>] [--domain <domain>] [--production]

Deployments ​

slide ​

Deploy your application. This is the primary deploy command.

bash
slipway slide [--env <environment>] [--app <slug>] [--message <message>]

Aliases: deploy, launch

Packages your source code (via git archive if in a git repo), pushes it to the server, and triggers a deployment. Watches the deployment via Server-Sent Events with live status updates.

Options:

OptionDescription
--envEnvironment to deploy to (default: production)
--appTarget a specific app by slug (default: the default app). See Multi-App Environments
--messageDeployment message/note

Examples:

bash
# Deploy to production
slipway slide

# Deploy to staging
slipway slide --env staging

# Deploy with a message
slipway slide --message "Fix login bug"

# Deploy a specific app in a multi-app environment
slipway slide --app api

push ​

Push source code to the server without deploying.

bash
slipway push [--env <environment>]

Useful when you want to upload code separately from triggering a deployment.

readiness ​

Inspect the current server-side source and effective app/environment configuration with the same report shown in the dashboard.

bash
slipway readiness [--env production] [--app web] [--json]

Push source first with slipway push. Required checks produce a nonzero exit code; recommendations and optional capabilities do not block deployment. The report includes its source fingerprint, health path, evidence, and fixes. See Your First Deploy.

deployments ​

List recent deployments.

bash
slipway deployments [--env <environment>] [--limit <n>]

Shows deployment ID, status, environment, branch, commit hash, and date. Default limit is 10.

logs ​

View deployment or application logs.

bash
slipway logs [--env <environment>] [--app <slug>] [--follow] [--tail <n>] [--deployment <id>]

Options:

OptionDescription
--envEnvironment (default: production)
--appTarget a specific app by slug (default: the default app). See Multi-App Environments
--followStream logs in real-time
--tailNumber of lines to show (default: 100)
--deploymentView logs for a specific deployment

Environment Variables ​

env ​

List environment variables for the current project.

bash
slipway env [--env <environment>]

Sensitive values (containing PASSWORD, SECRET, KEY, TOKEN, etc.) are automatically masked.

env:set ​

Set one or more environment variables.

bash
slipway env:set KEY=value [KEY2=value2...] [--env <environment>]

Examples:

bash
slipway env:set DATABASE_URL=postgres://...
slipway env:set STRIPE_KEY=sk_live_... SESSION_SECRET=abc123 --env staging

Redeploy Required

Changes take effect on the next deployment. Run slipway slide after setting variables.

env:unset ​

Remove one or more environment variables.

bash
slipway env:unset KEY1 [KEY2...] [--env <environment>]

Database Services ​

db:create ​

Create a new database service.

bash
slipway db:create <name> [--type <type>] [--version <version>] [--env <environment>]

Options:

OptionDescription
--typeDatabase type: postgresql, mysql, redis (default: postgresql)
--versionDatabase version (default: latest)
--envEnvironment (default: production)

The connection URL (e.g., DATABASE_URL) is automatically injected into your environment.

db:url ​

Get the connection URL for a database service.

bash
slipway db:url <name> [--env <environment>]

services ​

List all services for the current project.

bash
slipway services [--env <environment>]

Shows name, type, version, environment, and status.

Backups ​

backup:create ​

Create a manual database backup.

bash
slipway backup:create <service-name> [--env <environment>]

backup:list ​

List backups for a service.

bash
slipway backup:list <service-name> [--env <environment>]

Shows backup ID, status, type, size, duration, and date.

backup:restore ​

Restore a database from a backup.

bash
slipway backup:restore <backup-id>

Container Access ​

terminal ​

Open a terminal session in the running container.

bash
slipway terminal [--env <environment>] [--app <slug>]

Shows the container name and docker exec command to run on your server. Use --app to target a specific app in multi-app environments.

run ​

Run a command in the running container.

bash
slipway run <command...> [--env <environment>] [--app <slug>]

Shows the container name and docker exec command. Use --app to target a specific app in multi-app environments.

Administration ​

audit-log ​

View audit log entries.

bash
slipway audit-log [--page <n>] [--limit <n>]

Shows date, action, resource type, user, and IP address. Default limit is 20.

Global Options ​

These options work with all commands:

OptionDescription
--server <url>Slipway server URL
--helpShow help
--versionShow version

All open source projects are released under the MIT License.