This page lists every watasu command, grouped by namespace. Run any command with --help for full flag details.
| Command | What it does |
|---|
watasu login | Browser login. Stores credentials locally for API and Git. |
watasu login --api-key <key> | Log in with an API key (CI/automation). |
watasu logout | Remove local credentials. |
watasu whoami | Show the currently logged-in user. |
watasu --help | List all commands. |
watasu <command> --help | Show flags for a specific command. |
| Command | What it does |
|---|
watasu apps | List apps you have access to. |
watasu create <name> | Create a new app. |
watasu create <name> --addons <list> | Create an app and provision add-ons in one call. |
watasu create <name> --no-remote | Create without adding a local Git remote. |
watasu apps:rename <new-name> --app <app> | Rename an app. Updates the managed URL and Git remote. |
watasu apps:destroy --app <app> --confirm <app> | Destroy an app. Requires confirmation by re-typing the name. |
watasu apps:trust --app <target> | Authorize the current/named app to reach *-tcp services on <target>. |
watasu git:remote --app <app> | Add a watasu Git remote pointing at the app. |
| Command | What it does |
|---|
watasu config --app <app> | Show effective config for an app (includes add-on-injected vars). |
watasu config:set KEY=value [KEY=value ...] --app <app> | Set one or more config vars. |
watasu config:set --file .env --app <app> | Bulk-import vars from a dotenv file. |
watasu config:unset KEY --app <app> | Remove a config var. |
| Command | What it does |
|---|
watasu pods --app <app> | Show the formation: process types, replica counts, pod sizes, routing. |
watasu pods:scale web=N worker=N --app <app> | Scale replica counts per process type. |
watasu pods:type web=standard-2x --app <app> | Change pod sizes per process type. |
| Command | What it does |
|---|
watasu logs --app <app> | Tail recent application logs across all processes. |
| Command | What it does |
|---|
watasu domains --app <app> | List domains attached to an app. |
watasu domains:add <hostname> --app <app> | Attach a custom domain. Returns the DNS target to point at. |
watasu domains:add <hostname> --process <name> --app <app> | Attach to a specific public web process. |
watasu domains:info <hostname> --app <app> | Show a domain’s status, target, and attached process. |
watasu domains:wait <hostname> --app <app> | Block until DNS verifies and TLS is provisioned. |
watasu domains:remove <hostname> --app <app> | Detach a domain. |
| Command | What it does |
|---|
watasu addons --app <app> | List add-ons attached to an app. |
watasu addons:create <plan> --app <app> | Provision an add-on and attach it. Plan is e.g. postgresql, valkey:hobby-1. |
watasu addons:attach <addon> --app <app> | Attach an existing add-on. |
watasu addons:attach <addon> --app <app> --as <ALIAS> | Attach with an alias. Watasu exports alias-prefixed env vars. |
watasu addons:info <addon> | Show plan, status, connection details. |
watasu addons:wait <addon> | Block until the add-on is ready. |
watasu addons:destroy <addon> | Destroy an add-on. Destructive. |
| Command | What it does |
|---|
watasu addons:backups <addon> | List backups. |
watasu addons:backups:capture <addon> | Capture a manual backup. |
watasu addons:restore <addon> <backup-id-or-file> --name <new> | Restore into a replacement add-on. |
watasu addons:promote <addon> | Promote a restored add-on into the original’s attachment role. |
| Command | What it does |
|---|
watasu pg --app <app> | Show database info (alias pg:info). |
watasu pg:wait DATABASE_URL --app <app> | Block until the database is ready. |
watasu pg:psql DATABASE_URL --app <app> | Open an interactive psql session. |
watasu pg:follow DATABASE_URL --app <app> --name <new> --plan <plan> --region <region> | Create a follower (read replica). |
watasu pg:backups --app <app> | List PostgreSQL backups. |
watasu pg:backups:capture --app <app> | Capture a manual PostgreSQL backup. |
watasu pg:backups:restore <backup-id-or-file> DATABASE_URL --app <app> --name <new> | Restore PostgreSQL into a replacement database. |
watasu pg:promote <new> --app <app> | Promote a restored database. |
| Command | What it does |
|---|
watasu valkey:cli --app <app> | Open an interactive Valkey session. |
watasu redis:cli --app <app> | Compatibility alias for valkey:cli. |
| Command | What it does |
|---|
watasu clickhouse:cli --app <app> | Open an interactive ClickHouse session. |
Most commands accept --app <name>. Inside a Git repo with the watasu remote, you can usually omit it.
For scripts and CI, always pass --app explicitly. See Authentication → How the CLI chooses an app.
Where commands take a plan, the format is <service>:<plan>:
watasu addons:create postgresql:standard-0 --app my-app
watasu addons:create valkey:hobby-1 --app my-app
The full plan catalog is in Add-on Plans.
When an app has more than one of the same service:
watasu addons:attach reporting-db --app my-app --as REPORTING
The alias prefixes the exported env vars (e.g. REPORTING_DATABASE_URL).
PostgreSQL commands use the env var name (not the URL itself) to identify which database to operate on:
watasu pg:psql DATABASE_URL --app my-app
watasu pg:psql REPORTING_DATABASE_URL --app my-app
This works whether the var came from DATABASE_URL (default) or an alias like REPORTING_DATABASE_URL.