Scheduled background tasks — link checker, Lighthouse audits, media processing, and webhooks that fire on content events.
Where it is
Settings → Automation (/admin/settings?tab=tools).
Internally the tab is called tools, but the UI label is Automation. Both point at the same place.
What it configures
Four categories of scheduled or event-driven background work:
Link checker
| Field | Purpose |
|---|---|
| Schedule | Off, daily, weekly, or a specific day |
| Time | When the checker runs (uses site timezone) |
| Internal only | Skip external URLs (speeds up on large sites, misses third-party rot) |
| Alert on failures | Email the notification list when ≥ N broken links are found |
The checker walks every published document, extracts links, and HTTP-GETs each one. Results land in /admin/link-checker with bulk-fix actions.
See Link checker for result interpretation and common fixes.
Lighthouse
| Field | Purpose |
|---|---|
| Schedule | Off, daily, weekly |
| Targets | Which URLs to audit (usually the homepage + top 5 pages) |
| Mobile + desktop | Runs both by default |
| Alert threshold | Score below which an alert fires |
Lighthouse runs via Google PageSpeed Insights API — needs a publicly reachable Preview URL (Settings → General). See Lighthouse.
Media processing
Defaults for how uploaded images are transformed:
- WebP variant widths — comma-separated list (default
400,800,1200,1600) - JPEG quality — 0–100 (default 82)
- EXIF handling — Keep / strip-location / strip-all (default keep, since EXIF powers map views)
- AI analysis on upload — auto-generate captions, alt text, tags. Uses the content model from Settings → AI
Changes apply to future uploads. Batch-reprocess existing media via the Reprocess all button.
See Media processing.
Webhooks
Outbound HTTP calls when content events happen. Common use: fire a Discord / Slack notification on publish, or trigger a third-party build pipeline on deploy.
| Field | Purpose |
|---|---|
| URL | Where the CMS POSTs |
| Events | Which events trigger the webhook (published, deployed, agent-completed, etc.) |
| Secret | Optional — included as X-CMS-Signature for verification |
| Retry | Number of retries on non-2xx (default 3) |
Payload is a JSON envelope with event, timestamp, siteId, and event-specific data. The last 50 deliveries are logged per webhook for debugging.
Common combinations
- Daily link check + weekly Lighthouse — the sensible default for a production site
- Webhook to Slack on publish — editors see what went live without checking the admin
- Webhook to a CI pipeline on deploy — trigger a downstream pipeline (tests, cache warmup)
- Aggressive media processing — wide WebP range, AI analysis on for SEO-heavy sites
Related
- Link checker — result interpretation
- Lighthouse — score breakdown
- Media processing — EXIF, WebP variants, AI analysis
- Email settings — where automation alerts go