

# Buildkite CLI preflight command

The `bk preflight` command allows you to run a build against a snapshot of the local working tree (experimental) from the command line.

## Commands

| Command | Description |
| --- | --- |
| `bk preflight run` | Run a build against a snapshot of the local working tree (experimental) |
| `bk preflight cleanup` | Clean up completed preflight branches (experimental) |

## Run preflight

Run a build against a snapshot of the local working tree (experimental)

```bash
bk preflight run [flags]
```

### Flags

| Flag | Description |
| --- | --- |
| `-p`, `--pipeline=STRING` | The pipeline to build. This can be a {pipeline slug} or in the format {org slug}/{pipeline slug}. --[no-]watch             Watch the build until completion. |
| `--await-test-results` | After the build finishes, wait for test results to be processed by Test Engine. Provide a duration like 10s, or omit the value to wait 30s. |
| `--debug` | Enable debug output for REST API calls |
| `--exit-on=EXIT-ON,...` | Exit when a condition is met. Options: build-failing (default, exits when a build enters the failing state), build-terminal (exits when the build reaches a terminal state). |
| `--interval=2` | Polling interval in seconds when watching. |
| `--json` | Emit one JSON object per event (JSONL). |
| `--no-cleanup` | Skip cleanup after completion or early exit. The preflight branch remains and the build keeps running if exiting early. |
| `--text` | Use plain text output instead of interactive terminal UI. |

## Cleanup preflight

Clean up completed preflight branches (experimental)

```bash
bk preflight cleanup [flags]
```

### Flags

| Flag | Description |
| --- | --- |
| `-p`, `--pipeline=STRING` | The pipeline to check builds against. This can be a {pipeline slug} or in the format {org slug}/{pipeline slug}. |
| `--debug` | Enable debug output for REST API calls |
| `--dry-run` | Show which branches would be deleted without actually deleting them. |
| `--json` | Emit one JSON object per event (JSONL). |
| `--preflight-uuid=STRING` | Target a single preflight branch by its UUID (bk/preflight/<uuid>). |
| `--text` | Use plain text output instead of interactive terminal UI. |

