All documentation

    SEO Autopilot

    Autopilot is Rank Pilot AI SEO's automated remediation and publishing system. It connects to a website's CMS, scans for issues, drafts fixes, and either queues them for approval or publishes them directly — spanning Autopilot.tsx (connection and rules management), QueueManagement.tsx (the approval queue), and the autopilot-* edge functions that do the scanning, fixing and publishing.

    Connecting a CMS

    Autopilot.tsx is the per-website control centre. It reads existing connections from autopilot_connections_safe and offers three connection paths, one per tab:

    • WordPress — via WordPressConnectForm, storing a site URL, username and application password.
    • Shopify — via ShopifyConnectForm, storing a store URL and access token.
    • Other CMS (Wix, Webnode, Squarespace, or a generic platform) — via CMSConnectForm, using a verification-token flow instead of stored credentials.

    The page auto-selects whichever platform tab already has a verified connection. A BrowserLoginPanel also supports a browser-automation login path (backed by the autopilot-browser-action function) for platforms that don't expose a usable API.

    Connection status is shown through ConnectionStatusIndicator, and Autopilot is only considered "connected" once a connection is both is_connected and is_verified.

    Auto-fix rules

    AutoFixRules lists the categories of change Autopilot is allowed to make (with defaultRules as the baseline set), each independently toggled and persisted to the autopilot_rules table per website. Only enabled rule categories are applied when a scan or fix run executes. AutopilotStats and ActivityLog summarise how many changes have been made and across how many unique pages, drawn from the autopilot_activity table.

    Scan, review and publish workflow

    The general flow, implemented across autopilot-wordpress, autopilot-shopify, autopilot-cms and autopilot-cwv, is:

    1. Scan — the relevant function fetches pages, posts or products from the connected platform (WordPress REST API, Shopify Admin API, or a generic CMS integration) and evaluates them for missing/duplicate titles, meta descriptions, alt text and other rule-defined issues.
    2. Generate fixes — an AI prompt drafts the specific replacement content (title, description, alt text) for each flagged item; autopilot-cms's generate_fixes action shows this pattern explicitly, prompting an SEO-expert model for actionable, specific fixes.
    3. Queue or auto-fix — depending on the site's mode, generated changes are either written into autopilot_queue for manual approval, or applied immediately through an auto_fix/run_all action.
    4. Publish — approved or auto-applied changes are pushed back to the CMS: WordPress titles/descriptions/alt text via the REST API, Shopify product titles/descriptions/image alt text via the Admin API. Every attempt (success, failure or skip) is logged to autopilot_activity with the page, action text and status, which is what populates the Activity Log and stats.

    autopilot-cwv runs a Core Web Vitals-specific version of the same pattern: it takes an action (or run_all to execute every enabled CWV action) plus an optional dryRun flag, applies the relevant performance fixes, and logs a combined cwv_<actions> activity entry.

    The approval queue

    QueueManagement.tsx ("Robot Queue") lists everything in autopilot_queue for the current website — items can originate from Autopilot scans or from manual actions elsewhere in the app, such as queuing top-ranking keywords for content distribution (see Rank Tracking). Each item has a tool_type (meta_tags, keywords, content_brief, internal_linking) and a status: pending, processing, completed or failed, shown with distinct icons and colours. The queue auto-refreshes every five seconds while open.

    Actions available per item or in bulk:

    • Process queue — invokes the process-queue edge function with processAll: true, working through every pending item and reporting how many succeeded or failed.
    • Retry — resets a failed item's status to pending and re-invokes process-queue scoped to that single item.
    • Delete — removes an item from the queue without processing it.

    CMS connections summary

    | Platform | Connection method | Fix scope | |---|---|---| | WordPress | Site URL + username + application password | Pages/posts: titles, meta descriptions, image alt text | | Shopify | Store URL + Admin API access token | Products: titles, descriptions, image alt text | | Other CMS | Verification token | Generic page-level fixes via autopilot-cms |

    If no CMS connection exists when a fix is requested elsewhere in the app (for example from the Website Analyser or Site Audit), Autopilot functions return a requiresConnection flag rather than failing silently, prompting the user to connect a platform here first.

    Access control

    Autopilot connection and rule management, along with automated publishing, sit behind paid-plan feature gates (for example auto_fix_core and auto_fix_cwv, referenced from the Website Analyser and Site Audit pages). Free-tier users can typically view scan results but are prompted to upgrade before Autopilot will write changes back to a live site.