# Dns Cutover

> Generate the exact DNS records for pointing a custom domain at Vercel, Netlify, Cloudflare Pages, or GitHub Pages — and validate the user's actual records before they flip the domain. Use whenever the user mentions custom domains, DNS, nameservers, 'domain not working', CNAME/A records, or connecting a purchased domain to a deployed site. Runs fully offline — no API keys, no network, no credentials.

- Skill: `starr-del/dns-cutover` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add starr-del/dns-cutover`
- Raw SKILL.md: https://api.skillmd.com/api/skills/starr-del/dns-cutover/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: Starr-del (https://skillmd.com/u/starr-del)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/starr-del/dns-cutover

---


# dns-cutover

Part of **shipsafe** — offline deploy-safety skills. Every script is stdlib-only Python 3.8+; nothing leaves the machine.

Two modes:

```bash
# 1) What records do I need?
python3 scripts/dns_cutover.py plan <domain> <platform>
# 2) Are my records right? (paste zone export or `dig +noall +answer` output into a file)
python3 scripts/dns_cutover.py check <domain> <platform> <records_file> [--json]
```

Platforms: `vercel`, `netlify`, `cloudflare-pages`, `github-pages`.

`check` validates apex and www records, and additionally catches the three classic cutover mistakes:
- **apex CNAME** — illegal on standard DNS, silently breaks MX/email at most registrars
- **stale extra A records** — round-robin traffic to the dead old host (looks like 'site randomly down')
- **conflicting A + CNAME** on the same name

Process to walk the user through: lower TTL to 300s the day BEFORE → run `plan` → set records → export/dig the records into a file → run `check` → only then flip. After cutover, verify HTTPS on BOTH apex and www — cert issuance is the step that fails silently.

Some values are project-specific (e.g. `<yoursite>.netlify.app`); the script marks these and the user's dashboard value wins.

Exit codes: 0 ok, 1 problems found.

All paths below are relative to this skill's directory (dns-cutover/).

