Overview

Understand the current HeadlessX modes, required services, and deployment shape.

by @saifyxpro

HeadlessX currently exposes three CLI-managed modes:

ModeBest forNotes
developerrepo contributors and direct product developmentclones the repo into ~/.headlessx/repo and prepares the source workspace
self-hostlocal Docker runtime or a VPS on localhost portsruns the full stack on rare host ports and is the recommended default
productiondomain-based deploymentruns the Docker app stack plus the infra/domain-setup Caddy layer

Core services


ServiceRequiredWhy it exists
PostgreSQLyesstate for API keys, settings, logs, proxies, and persisted data
Redisrequired for queuescrawl and BullMQ-backed jobs
APIyes/api/* and /mcp
Workerrequired for queue jobsprocesses crawl and background work
Weboptional for API-only usageoperator dashboard and playground
HTML-to-Markdownrecommendedbetter content extraction pipeline
yt-enginerequired for YouTube featuresmetadata extraction and temporary save jobs

  1. self-host for the fastest repeatable local or VPS deployment
  2. production when you are ready for custom domains and HTTPS
  3. developer when you need the repo directly and want to extend HeadlessX itself

Important operational notes


  • Website Crawl requires both Redis and the worker
  • only /api/operators/website/crawl needs Redis in the website operator family
  • YouTube routes require YT_ENGINE_URL, but CLI self-host and production now write it automatically
  • MCP uses normal API keys, not the dashboard internal key
  • Google AI Search now requires a one-time Build Cookies run on the shared persistent browser profile before the first search
  • container-internal ports stay stable for Docker networking, but host defaults now use the rarer public values 34872, 38473, 35432, 36379, 38081, and 38090
BirdProxies logo
Proxy recommendation

Self-hosting HeadlessX on a VPS does not change the fact that your outbound traffic still comes from datacenter IP ranges. If targets are sensitive to datacenter traffic, add residential or ISP proxy capacity instead of assuming the VPS network alone will be enough.

Related Docs

Next Steps