{
  "slug": "pilot/quickstart",
  "title": "Pilot Quickstart",
  "description": "Record and replay your first provider dashboard workflow in five minutes.",
  "url": "https://cuitty.com/docs/pilot/quickstart",
  "markdown_url": "https://cuitty.com/docs/pilot/quickstart.md",
  "json_url": "https://cuitty.com/docs/pilot/quickstart.json",
  "frontmatter": {
    "title": "Pilot Quickstart",
    "description": "Record and replay your first provider dashboard workflow in five minutes.",
    "order": 1,
    "section": "Pilot",
    "updatedAt": "2026-05-31"
  },
  "headings": [
    {
      "depth": 1,
      "slug": "pilot-quickstart",
      "text": "Pilot Quickstart"
    },
    {
      "depth": 2,
      "slug": "install-the-cli",
      "text": "Install the CLI"
    },
    {
      "depth": 2,
      "slug": "record-a-workflow",
      "text": "Record a workflow"
    },
    {
      "depth": 2,
      "slug": "replay-the-workflow",
      "text": "Replay the workflow"
    },
    {
      "depth": 2,
      "slug": "review-a-failed-run",
      "text": "Review a failed run"
    },
    {
      "depth": 2,
      "slug": "ai-healing-basics",
      "text": "AI healing basics"
    },
    {
      "depth": 2,
      "slug": "whats-next",
      "text": "What’s next"
    }
  ],
  "body_markdown": "# Pilot Quickstart\n\nCuitty 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.\n\n## Install the CLI\n\n```bash\ncurl -fsSL https://cuitty.com/install.sh | sh\ncui --version\n```\n\nOr install with npm:\n\n```bash\nnpm install -g @cuitty/cli\n```\n\nPilot uses Playwright under the hood. The first run will prompt you to install browser dependencies if they are missing.\n\n## Record a workflow\n\nStart a recording session against the Cloudflare dashboard. Pilot opens a browser window and captures every click, navigation, and form input:\n\n```bash\ncui pilot record \\\n  --name \"add-dns-record\" \\\n  --provider cloudflare \\\n  --start-url \"https://dash.cloudflare.com\"\n```\n\nWalk 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`.\n\n## Replay the workflow\n\nRun the recorded playbook headlessly:\n\n```bash\ncui pilot replay add-dns-record --headless\n```\n\nPilot 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.\n\n## Review a failed run\n\nIf a replay fails (e.g., Cloudflare moved a button), inspect the run:\n\n```bash\ncui pilot review add-dns-record --run latest\n```\n\nThe 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:\n\n```bash\ncui pilot review add-dns-record --run latest --accept\n```\n\nThis patches the playbook so future replays use the corrected selector.\n\n## AI healing basics\n\nPilot 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.\n\n## What's next\n\n- [Playbook reference](/docs/pilot/playbook-reference) — full YAML schema for steps, inputs, and assertions\n- [Executors](/docs/pilot/executors) — Browser, Terraform, Git, Store, Shell, HTTP, and Composite\n- [JavaScript SDK](/docs/pilot/sdk/javascript) — `@cuitty/pilot-sdk` for TypeScript and Node.js\n- [Recording tips](/product/pilot#recording) — best practices for stable, replayable workflows",
  "links_out": [
    "/docs/pilot/playbook-reference",
    "/docs/pilot/executors",
    "/docs/pilot/sdk/javascript",
    "/product/pilot#recording"
  ]
}