Log in
launchpad login # opens your browser; pick the workspace on the consent page
launchpad login --no-browser # prints a URL; paste the redirect URL or code back
launchpad login --token lp_pat_... # use a personal access token
launchpad login --api-url https://lp.example.com # log in to another control plane
launchpad login --scope read # narrower token (default "read write admin")
launchpad whoami # who and where you are logged in
launchpad logout
The default control plane is https://launchpad.rework.build.
Where credentials are stored
Credentials are saved in credentials.json (readable only by you) in your user config directory:
| OS | Location |
|---|---|
| Linux, macOS | $XDG_CONFIG_HOME/launchpad, or ~/.config/launchpad |
| Windows | %APPDATA%\launchpad |
The list of commands is cached for an hour in your user cache directory: $XDG_CACHE_HOME/launchpad or ~/.cache/launchpad on Linux and macOS, %LOCALAPPDATA%\launchpad on Windows.
Other control planes
The API URL is stored with your credentials, so after logout the CLI goes back to the default host. To work against another server, pass --api-url or set LAUNCHPAD_API_URL. Stored credentials are only ever sent to the host they were issued for.
CI and agents
Set LAUNCHPAD_TOKEN to a personal access token, and optionally LAUNCHPAD_API_URL:
export LAUNCHPAD_TOKEN=lp_pat_...
launchpad service deploy <service-id> --image registry.example.com/api:1.4.2
When LAUNCHPAD_TOKEN is set, credentials.json is neither read nor written, and logout leaves it alone. Create tokens with launchpad token create.