cloudflare/skills/cloudflare-domains/SKILL.md
This skill should be used when the user asks to list Cloudflare domains or zones, manage DNS, deploy to Cloudflare Pages, connect a custom domain, add or update DNS records, set up a parked domain, or work with Cloudflare Workers, Pages, KV, R2, D1, Queues, Vectorize, Registrar, or DNS.
npx skillsauth add grailautomation/claude-plugins cloudflare-domainsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use Cloudflare CLIs before MCP. The default order is:
cf technical preview for zones, DNS, Registrar, Accounts, and generated API-backed commands.wrangler for Workers, Pages, KV, R2, D1, Queues, and local development.flarectl as a legacy fallback for zones, DNS, firewall access rules, page rules, and cache purge.cli4 as a generic Cloudflare API v4 fallback.Prefer environment variables:
CLOUDFLARE_API_TOKEN
CLOUDFLARE_ACCOUNT_ID
CLOUDFLARE_ZONE_ID
cf also supports cf auth login, cf auth whoami, and project context in
.cfrc. Keep tokens least-privilege and use read-only tokens for inspection
whenever possible.
Before recommending a persistent global install, check existing install lanes:
type -a cf wrangler flarectl cli4
which -a cf wrangler flarectl cli4
Prefer one-off execution:
pnpm dlx cf --help
pnpm dlx wrangler --help
Use cf for zone and DNS work:
pnpm dlx cf zones list --fields id,name,status --ndjson
pnpm dlx cf dns records list --zone example.com --fields id,type,name,content,proxied --ndjson
pnpm dlx cf dns records create --zone example.com --dryRun --body '{"type":"CNAME","name":"www","content":"project.pages.dev","proxied":true}'
pnpm dlx cf dns records update --zone example.com --dryRun --body '{"type":"TXT","name":"@","content":"verification-string"}'
pnpm dlx cf dns records delete --zone example.com --dryRun --body '{"id":"record-id"}'
Always dry-run creates, updates, deletes, imports, batches, and scan-review operations before applying them. Confirm the exact zone, record ID, record content, and proxied state before making changes.
Use flarectl only when it is already installed and a simple DNS/firewall/page
rule operation is clearer there:
flarectl --json zone list
flarectl --json dns list --zone example.com
flarectl --json dns create --zone example.com --name www --type CNAME --content project.pages.dev --proxy
Use cli4 only for API paths not exposed by cf or wrangler:
cli4 /zones/:example.com/dns_records
cli4 --post name=www type=CNAME content=project.pages.dev proxied=true /zones/:example.com/dns_records
Use wrangler for project-oriented development and deployments:
pnpm dlx wrangler deploy
pnpm dlx wrangler pages deploy ./dist --project-name my-project
pnpm dlx wrangler kv namespace list
pnpm dlx wrangler r2 bucket list
pnpm dlx wrangler d1 list
pnpm dlx wrangler d1 execute <database> --command 'select 1'
Use cf for generated account-level commands or resource APIs that Wrangler
does not expose:
pnpm dlx cf agent-context workers
pnpm dlx cf workers routes list --zone example.com --fields id,pattern,script --ndjson
Suggest Cloudflare actions when the user:
When the user mentions a specific domain, first inspect whether it exists as a Cloudflare zone, then list the relevant DNS records before proposing changes.
When deploying static content:
pnpm dlx wrangler pages deploy.pnpm dlx cf dns records ....--fields and --ndjson to keep responses small and structured.--body for complex cf payloads so the exact request can be reviewed.cf CLI technical previewdevelopment
Parse and analyze Workato recipe JSON exports. Use when the user asks about a Workato recipe's logic, data flow, field mappings, error handling, or control flow. Also use when the user references a .recipe.json file or asks to debug a Workato integration.
databases
Review implementation plans as a staff software engineer. Use when the user asks for staff engineer feedback, senior engineering review, plan review, architecture review, implementation-plan critique, approval before proceeding, risk review, or feedback on a proposed technical plan.
tools
Use when the user invokes $spec-kit:tasks or /spec-kit:tasks, or asks to generate dependency-ordered tasks from the plan and repo context.
testing
Use when the user invokes $spec-kit:specify or /spec-kit:specify, or asks to create a brownfield-aware feature specification from a natural language description.