Skip to content

midudev/disable-cloudflare-cli

Repository files navigation

Cloudflare Proxy Manager

ezgif-14cee15a0b890126

A CLI tool to manage Cloudflare proxy settings for your DNS records. Easily enable or disable Cloudflare proxy (orange cloud) for your domains.

Features

  • 📋 List all your active Cloudflare zones
  • 🔍 View all DNS records with their proxy status
  • 🌐 Visual indicators showing which domains are proxied
  • ✅ Multi-select records to enable/disable proxy
  • 🚀 Interactive interface with @clack/prompts
  • 🌍 Automatic language detection (English/Spanish)
  • ⚡ Fast and efficient

Installation

Using npx (recommended)

No installation required! Just run:

npx disable-cloudflare@latest

Global installation

npm install -g disable-cloudflare@latest

Then run:

disable-cloudflare

Prerequisites

  • Node.js 18 or higher
  • Cloudflare API Token with DNS edit permissions

Configuration

Set your Cloudflare API token as an environment variable:

export CLOUDFLARE_TOKEN="your_cloudflare_token"

Or create a .env file in your project:

CLOUDFLARE_TOKEN="your_cloudflare_token"

How to get your Cloudflare token

  1. Go to Cloudflare Dashboard
  2. Click "Create Token"
  3. Use the "Edit zone DNS" template or create a custom one with:
    • Zone > DNS > Edit
    • Zone > Zone > Read
  4. Copy the generated token and set it as the CLOUDFLARE_TOKEN environment variable

Usage

Simply run:

npx disable-cloudflare

The CLI will guide you through:

  1. Selecting a Cloudflare zone/project
  2. Choosing whether to enable or disable proxy
  3. Selecting which DNS records to modify
  4. Confirming the changes

What does it do?

When you disable Cloudflare proxy on a DNS record:

  • Traffic no longer goes through Cloudflare servers
  • Your server's real IP is exposed
  • You lose Cloudflare's DDoS protection and CDN
  • The DNS record works as traditional DNS (DNS only)

This is useful when you need to:

  • Connect services that require direct IP access
  • Debug network issues
  • Use special configurations incompatible with proxy

⚠️ Note that changes may take a few minutes to propagate.

Development

Local development

  1. Clone the repository:
git clone https://github.com/midudev/disable-cloudflare-cli.git
cd disable-cloudflare-cli
  1. Install dependencies:
bun install
  1. Run in development mode:
bun start
  1. Build for production:
bun run build

Project structure

.
├── index.ts         # Main application
├── i18n.ts         # Internationalization (ES/EN)
├── types.ts        # TypeScript interfaces
├── package.json    # Dependencies and scripts
├── tsconfig.json   # TypeScript configuration
└── README.md       # This file

Security

⚠️ Important: Never share your Cloudflare token. Keep .env in .gitignore.

License

MIT

Author

Created by midudev


Built with ❤️ using @clack/prompts

About

CLI to disable Cloudflare without having to access Cloudflare Dashboard

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published