| name | cloudflare |
| description | Cloudflare CLI - manage DNS records, purge cache, and control Workers routes. |
| version | 1.0.0 |
| author | dbhurley |
| homepage | https://cloudflare.com |
| metadata | {"clawdis":{"emoji":"🔶","requires":{"bins":"[Truncated]","env":"[Truncated]"},"primaryEnv":"CLOUDFLARE_API_TOKEN"}} |
Cloudflare CLI
Manage Cloudflare DNS, cache, and Workers via the API.
🔑 Required Secrets
| Variable | Description | How to Get |
|---|
CLOUDFLARE_API_TOKEN | Scoped API token | Cloudflare → My Profile → API Tokens |
Recommended token permissions:
- DNS:Read, DNS:Edit
- Cache Purge:Purge
- Workers Routes:Edit
⚙️ Setup
Configure in ~/.clawdis/clawdis.json:
{
"skills": {
"cloudflare": {
"env": {
"CLOUDFLARE_API_TOKEN": "your-token"
}
}
}
}
📋 Commands
Verify Token
uv run {baseDir}/scripts/cloudflare.py verify
Zones (Domains)
uv run {baseDir}/scripts/cloudflare.py zones
uv run {baseDir}/scripts/cloudflare.py zone <zone_id_or_domain>
DNS Records
uv run {baseDir}/scripts/cloudflare.py dns list <domain>
uv run {baseDir}/scripts/cloudflare.py dns add <domain> --type A --name www --content 1.2.3.4
uv run {baseDir}/scripts/cloudflare.py dns add <domain> --type CNAME --name blog --content example.com
uv run {baseDir}/scripts/cloudflare.py dns update <domain> <record_id> --content 5.6.7.8
uv run {baseDir}/scripts/cloudflare.py dns delete <domain> <record_id>
uv run {baseDir}/scripts/cloudflare.py dns delete <domain> <record_id> --yes
Cache
uv run {baseDir}/scripts/cloudflare.py cache purge <domain> --all
uv run {baseDir}/scripts/cloudflare.py cache purge <domain> --urls "https://example.com/page1,https://example.com/page2"
uv run {baseDir}/scripts/cloudflare.py cache purge <domain> --prefix "/blog/"
Workers Routes
uv run {baseDir}/scripts/cloudflare.py routes list <domain>
uv run {baseDir}/scripts/cloudflare.py routes add <domain> --pattern "*.example.com/*" --worker my-worker
📤 Output Formats
All commands support --json for machine-readable output:
uv run {baseDir}/scripts/cloudflare.py dns list example.com --json
🔗 Common Workflows
Point domain to Vercel
cloudflare dns add example.com --type CNAME --name @ --content cname.vercel-dns.com --proxied false
cloudflare dns add example.com --type CNAME --name www --content cname.vercel-dns.com --proxied false
Clear cache after deploy
cloudflare cache purge example.com --all
📦 Installation
clawdhub install cloudflare