workflow
Version:
Workflow SDK - Build durable, resilient, and observable workflows
242 lines (163 loc) • 7.4 kB
text/mdx
---
title: CLI and Web UI
description: CLI flags and environment variables for inspecting local, Postgres, and Vercel Workflow runs.
type: reference
summary: Configure workflow inspect, workflow cancel, workflow web, workflow health, and observability tooling.
related:
- /docs/observability
- /docs/configuration/worlds
---
The Workflow CLI uses flags first, then environment variables, then defaults or local inference.
Vercel project and auth settings can often be inferred from `.vercel/project.json` and your Vercel CLI login.
## Target backend
### `--backend` / `-b`
- Environment variable: `WORKFLOW_TARGET_WORLD`
- Default: `local`
- Backend to inspect: `local`, `vercel`, or a World package.
### `--authToken` / `-a`
- Environment variable: `WORKFLOW_VERCEL_AUTH_TOKEN`
- Default: Vercel CLI login
- Vercel token for `--backend vercel`.
### `--project`
- Environment variable: `WORKFLOW_VERCEL_PROJECT`
- Default: inferred when possible
- Vercel project ID for `--backend vercel`.
### `--team`
- Environment variable: `WORKFLOW_VERCEL_TEAM`
- Default: inferred when possible
- Vercel team ID for `--backend vercel`.
### `WORKFLOW_VERCEL_PROJECT_NAME`
- CLI flag: none
- Default: inferred when possible
- Vercel project slug used for dashboard links.
### `--env` / `-e`
- Environment variable: `WORKFLOW_VERCEL_ENV`
- Default: `production`
- Vercel environment for `--backend vercel`.
- Accepts `production` or `preview`.
## Web UI
### `--web` / `-w`
- Environment variable: none
- Default: disabled
- Opens the relevant dashboard or web user interface (UI) instead of printing terminal output.
### `--webPort`
- Environment variable: `WORKFLOW_WEB_PORT`
- Default: `3456`
- Port for the local web UI server.
### `--noBrowser`
- Environment variable: `WORKFLOW_DISABLE_BROWSER_OPEN`
- Default: browser opens
- Prevents the CLI from opening a browser for web UI commands.
### `--localUi`
- Environment variable: `WORKFLOW_LOCAL_UI`
- Default: disabled
- Uses the local web UI instead of the Vercel dashboard when inspecting Vercel.
### `--url`
- Environment variable: none
- Default: disabled
- Prints the dashboard or run deep-link URL instead of opening a browser or starting a local server.
## Output and filtering
### `--json` / `-j`
- Environment variable: none
- Default: disabled
- Prints machine-readable JSON where the command supports it.
### `--sort`
- Environment variable: none
- Default: `desc` for time-ordered listings; `workflow inspect attributes` orders keys alphabetically unless you pass this flag
- Sort order for list commands. Accepts `asc` or `desc`.
### `--limit`
- Environment variable: none
- Default: `20`
- Number of items returned per page for list commands. `workflow cancel` bounds it separately; see [`--limit` (cancel)](#--limit-cancel).
### `--cursor`
- Environment variable: none
- Default: unset
- Pagination cursor for list commands.
### `--interactive` / `-i`
- Environment variable: none
- Default: disabled
- Enables keyboard-controlled pagination for supported list commands.
## Inspect filtering
Flags for `workflow inspect`. Each list view accepts a different subset, noted
per flag.
### `--runId` / `-r`
- Command: `workflow inspect`
- Default: unset
- Scopes the listing to one run. Required for `steps`, `events`, and `sleeps`; optional for `hooks`. Must be a run ID: `wrun_` followed by a 26-character ULID.
### `--limit` (inspect)
- Command: `workflow inspect`
- Default: `20`
- Must be an integer between 1 and 100, the smallest page any inspect listing accepts. Larger pages are reachable by paging: pass `--cursor`, or `--interactive` to walk them.
### `--stepId` / `-s`
- Command: `workflow inspect events`
- Default: unset
- Filters events to one step.
### `--hookId`
- Command: `workflow inspect events`
- Default: unset
- Filters events to one hook.
### `--attribute`
- Command: `workflow inspect runs`
- Default: unset
- Filters runs to those whose [attributes](/docs/observability/attributes) match every `key=value` pair given. Repeatable up to 8 times, and splits on the first `=` so a value may contain one.
- Requires a backend with the analytics read path; ignored with a warning otherwise.
- Cannot be combined with `--url` or `--web`, which hand off to the dashboard, or with `--withData`, which reads payloads from storage. Storage carries no attribute index.
- Use `workflow inspect attributes` to discover which keys exist.
### `--since` / `--until`
- Command: `workflow inspect runs`, `workflow inspect attributes`
- Default: the backend's own window
- Bounds the listing to a window. `--since` opens the window and accepts a relative duration (`30m`, `12h`, `7d`, `2w`) or a timestamp. `--until` is optional and defaults to now, so `--until` on its own is rejected.
- Requires a backend with the analytics read path; ignored with a warning otherwise.
### `--withData` / `-d`
- Command: `workflow inspect`
- Default: disabled
- Includes full input and output payloads in list views. Deprecated for list views — use `workflow inspect <resource> <id>` to read one item's payloads. Setting it also moves the read off the analytics path, which carries metadata only.
### `--decrypt`
- Command: `workflow inspect`
- Default: disabled
- Decrypts encrypted values. Triggers an audit-logged key retrieval.
## Bulk cancel
`workflow cancel <run-id>` cancels one run. Given a filter instead, it bulk-cancels a batch; bulk mode requires `--status` or `--workflowName`.
### `--status`
- Command: `workflow cancel`
- Default: unset
- Restricts the batch to this status. Only `pending` and `running` are accepted; terminal runs cannot be canceled.
- Also filters `workflow inspect runs`, which accepts any run status. It does not narrow `workflow inspect attributes`, which indexes keys per tenant rather than per run; passing it there warns and lists every key.
### `--workflowName` / `-n`
- Command: `workflow cancel`
- Default: unset
- Restricts the batch to one workflow. Expects the generated workflow ID from `workflow inspect runs`, not the short function name.
- Also filters `workflow inspect runs` and `workflow inspect attributes`.
### `--limit` (cancel)
- Command: `workflow cancel`
- Default: `50`
- Maximum runs to cancel in one batch (1–100), the largest page the run listing serves. Only one batch is canceled per invocation; run the command again to cancel the next batch.
### `--confirm` / `-y`
- Command: `workflow cancel`
- Default: disabled
- Skips the interactive confirmation prompt.
## Health checks
### `--port` / `-p`
- Command: `workflow health`
- Environment variable: `WORKFLOW_LOCAL_BASE_URL`, then `PORT`
- Default: `3000` when neither env var is set
- Local server port for health checks.
- The flag writes `WORKFLOW_LOCAL_BASE_URL`.
## Verbose logging and updates
### `--verbose` / `-v`
- Environment variable: `DEBUG`
- Default: disabled
- Enables verbose CLI output.
### `WORKFLOW_NO_UPDATE_CHECK`
- CLI flag: none
- Default: update check enabled
- Set `1` to disable the CLI update check.
## Observability paths
### `WORKFLOW_OBSERVABILITY_CWD`
- CLI flag: none
- Default: `process.cwd()`
- Working directory used by observability tooling to find `.vercel`, `.workflow-data`, and manifests.
### `WORKFLOW_MANIFEST_PATH`
- CLI flag: none
- Default: inferred
- Explicit path to the workflow manifest for the web UI.