Guide
How to connect a custom domain to a site your agent deployed
Two catalogued deploy Skills handle a custom domain themselves: github-pages configures apex and CNAME records for a Pages site, and railway-skills attaches a custom domain to a Railway service. For every other host the attach is two halves owned by two companies — the host tells you which record it wants, and the registrar-side skill (hostinger-agent-skills, zeabur-agent-skills) writes it, but only if that registrar hosts the zone. Where it does not, this is the one step in a launch that still costs you a dashboard visit.
Updated September 17, 2026 · first published September 17, 2026
At a glance
Side by side
| Host | Skill | Handles the domain? |
|---|---|---|
| GitHub Pages | github-pages | Yes — apex and CNAME custom-domain setup |
| Railway | railway-skills | Yes — custom domain attach as part of platform ops |
| Hostinger | hostinger-agent-skills | Yes — same company owns the site and the zone |
| Zeabur | zeabur-agent-skills | Yes — service URL binding plus its own registrar |
| Vercel | vercel-deploy-claimable | No — the claim flow assumes a fresh transferable deploy |
| Netlify | netlify-deploy | No — deploys and previews only |
| Cloudflare | cloudflare | No — Workers, Pages and storage, not the registrar |
| Firebase | firebase-hosting-basics | No — init, config and deploy only |
Why the seam exists
A custom domain is an agreement between two systems. The host has to know the name belongs to it, and the zone has to carry a record pointing at the host. Those live behind two different APIs, and a first-party skill only ever holds credentials for one of them.
So the skills that appear to do this in one step are the ones where both sides are the same company. GitHub Pages can write the CNAME file and configure the domain because the repo and the site are both GitHub. Zeabur can bind a service URL and edit the zone because it registered the domain. Everywhere else the two halves do not meet.
This is worth knowing before you pick a host, not after. If having the whole launch stay inside one agent session matters to you, choosing a host that is also your registrar is the decision that buys it — not a better skill.
The two-sided path, in order
Deploy first and get the platform URL. Then ask the host what it wants: an A record at a fixed address, a CNAME to a platform hostname, or nameserver delegation. Every host documents this and the deploy skill will usually surface it.
Then write the record on the registrar side. With hostinger-agent-skills that is the dns skill against the zone; with zeabur-agent-skills it is npx zeabur@latest domain dns create with --type CNAME --name www --content <platform-hostname> -i=false, or an A record at the apex. If your registrar is neither, this is the manual step.
Then verify before you move on, with dig +short yourname.com and curl -I https://yourname.com. Certificate issuance on most platforms is automatic but waits on the DNS record resolving, so a curl that returns a certificate error immediately after the change usually means wait, not misconfigured.
The apex-versus-www decision
Most hosts want a CNAME, and a CNAME cannot legally sit at the apex of a zone alongside the other records that must be there. Registrars solve this with a flattening or ALIAS record under various names, or with a fixed A record they publish for the purpose.
The practical rule: use whatever the host documents for the apex specifically, and do not substitute a CNAME because it worked for www. github-pages handles both shapes, which is part of why it is the smoothest custom-domain path in the catalogue despite being the least capable host.
FAQ
Common questions
Can an agent attach a custom domain to a Vercel deploy?
Not with vercel-deploy-claimable. That skill is built around a claimable deploy — a fresh, transferable site you claim into your account afterwards — and its own notes say it is not the right tool when you need a custom domain on the first deploy. Attach the domain after claiming.
Which deploy skill handles the domain end to end?
github-pages for a static site, and railway-skills for an app on Railway. On Hostinger and Zeabur the domain is handled by the same plugin that hosts the site, which amounts to the same thing.
Do I point the domain with an A record or a CNAME?
Whatever the host documents. A CNAME for subdomains like www is near-universal; at the apex most hosts publish a fixed A record or require the registrar's ALIAS-style record, because a plain CNAME is not valid there.
Why is my certificate failing right after I pointed the domain?
Usually because issuance waits on the DNS record resolving publicly, and it has not propagated yet. Confirm with dig +short against a public resolver first; if the record is correct and visible, give issuance a few minutes before changing anything.
Related
Keep reading
- How to manage DNS with an AI agent →
The record-writing half of this, in detail.
- How to deploy a website with AI agent Skills →
The deploy half, per host and per agent.
- Build, host and launch a website with Skills →
Both halves in the context of the full chain.
- Best Skills for deploying websites →
The ranked deploy skills, with what each actually ships.