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:
- 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.
- Generate fixes — an AI prompt drafts the specific replacement content (title, description, alt text) for each flagged item;
autopilot-cms'sgenerate_fixesaction shows this pattern explicitly, prompting an SEO-expert model for actionable, specific fixes. - Queue or auto-fix — depending on the site's mode, generated changes are either written into
autopilot_queuefor manual approval, or applied immediately through anauto_fix/run_allaction. - 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_activitywith 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-queueedge function withprocessAll: 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-queuescoped 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.