Pilot

Pilot Quickstart

Record and replay your first provider dashboard workflow in five minutes.

Pilot Quickstart

Cuitty Pilot records browser workflows against provider dashboards (AWS, Cloudflare, Vercel, etc.) and replays them on demand. If a provider changes their UI, Pilot’s AI healing rewrites selectors so your automation keeps working. This guide walks through recording, replaying, and reviewing your first workflow.

Install the CLI

curl -fsSL https://cuitty.com/install.sh | sh
cui --version

Or install with npm:

npm install -g @cuitty/cli

Pilot uses Playwright under the hood. The first run will prompt you to install browser dependencies if they are missing.

Record a workflow

Start a recording session against the Cloudflare dashboard. Pilot opens a browser window and captures every click, navigation, and form input:

cui pilot record \
  --name "add-dns-record" \
  --provider cloudflare \
  --start-url "https://dash.cloudflare.com"

Walk through the steps manually: log in, navigate to DNS, add an A record, save. When you are done, press Ctrl+C in the terminal. Pilot writes a playbook file to .cuitty/playbooks/add-dns-record.yaml.

Replay the workflow

Run the recorded playbook headlessly:

cui pilot replay add-dns-record --headless

Pilot replays each step, waits for network idle between navigations, and logs a pass/fail for every assertion checkpoint. Add --headed to watch the browser in real time.

Review a failed run

If a replay fails (e.g., Cloudflare moved a button), inspect the run:

cui pilot review add-dns-record --run latest

The review command prints a step-by-step diff showing which selector broke, a screenshot of the page at the failure point, and the suggested AI-healed selector. Accept the fix with:

cui pilot review add-dns-record --run latest --accept

This patches the playbook so future replays use the corrected selector.

AI healing basics

Pilot captures a DOM snapshot at every step during recording. When a selector breaks during replay, the AI healing engine compares the stored snapshot to the current page and proposes the best replacement selector. Healing runs locally by default; set CUITTY_AI_KEY to use the cloud model for higher accuracy on complex UI changes.

What’s next