Autopilot Suites (CLI)

Generate and manage AI-driven Playwright Autopilot suites from the obs CLI. Generation, variables, runs, and headless CI / GitHub App bindings.

Generate and manage AI-driven Playwright test suites from a URL.

# Generate a suite (manual trigger, no schedule)
obs suite generate https://example.com --name "Smoke Tests" --max-tests 5
# Generate with a cron schedule
obs suite generate https://example.com --cron "0 */6 * * *"
# Pass plain variables to the test runner
obs suite generate https://example.com --var USERNAME=admin
# Pass a secret without putting it on the command line: omit =VALUE and the
# CLI prompts for it with a hidden input, keeping it out of shell history and ps
obs suite generate https://example.com --var PASSWORD
# Or load several at once from a file
obs suite generate https://example.com --var-file .env.test
# List all suites
obs suite list
# Get full suite details (tests, variables, schedule)
obs suite get <id>
# Trigger a run and stream results
obs suite run <id> --wait
# Check the latest execution status
obs suite status <id>
# Wait on a specific execution
obs suite wait <id> <executionId>
# Delete a suite (-y skips the confirmation prompt)
obs suite delete <id> -y

CI Integration#

Headless management of a suite's GitHub App / CI binding. Install + repo selection still happens in the web UI (it requires GitHub OAuth); these three commands cover post-install operations that scripts, CI bootstraps, and Terraform/Pulumi pipelines actually need.

# Show current binding (provider, repo, branch, hooks, masked token, last fired)
obs suite ci status <id>
# Generate or rotate the inbound webhook token (each call invalidates the previous one)
obs suite ci webhook-token <id> -y
# Tear down the integration (invalidates the token, unbinds the repo)
obs suite ci disconnect <id> -y

Webhook token usage. The token is what your CI pipeline POSTs to /webhook/playwright?token=<token> to trigger a suite run. status shows it as ••••<last4> for safety; webhook-token returns the full value so you can pipe it into a secret store:

TOKEN=$(obs suite ci webhook-token 42 -y --json | jq -r '.data.token')
gh secret set OBS_WEBHOOK_TOKEN -b "$TOKEN" --repo acme/marketing-site

Why no install command. Installing the ObserveOne GitHub App on your org or selecting a repository requires the GitHub OAuth redirect flow, which doesn't fit a headless CLI. Do that once in the dashboard, then use these three commands for everything afterward.

Related comparisons

Picking between the tools mentioned here? Side-by-side breakdowns below.

Swap out part of your stack

Looking for a different fit? Start here.

Was this page helpful?