# Cf Proxy

Deploy a free VLESS proxy/VPN node on Cloudflare Pages using edgetunnel.

- Repository: https://github.com/davepoon/buildwithclaude (3705 stars)
- Category: DevOps
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add davepoon/buildwithclaude --skill cf-proxy -g -a claude-code -y`
Codex: `npx skills add davepoon/buildwithclaude --skill cf-proxy -g -a codex -y`
Cursor: `npx skills add davepoon/buildwithclaude --skill cf-proxy -g -a cursor -y`
Gemini CLI: `npx skills add davepoon/buildwithclaude --skill cf-proxy -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add davepoon/buildwithclaude`

## Description

Deploy a free VLESS proxy/VPN node on Cloudflare Pages using edgetunnel. Automates code download, UUID generation, Pages deployment, free domain registration (DNSExit), DNS configuration, custom domain binding, and client setup for Shadowrocket/v2rayN/Clash. Uses Cloudflare Pages (not Workers) because Pages supports CNAME-based custom domains from any DNS provider, avoiding the need to host DNS on Cloudflare.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Cloudflare Proxy (cf-proxy)

Deploy a free VLESS proxy node on Cloudflare Pages + edgetunnel, with WebSocket over TLS through Cloudflare's global CDN.

## When to Use This Skill

- Setting up a free proxy/VPN node on Cloudflare
- Deploying edgetunnel to Cloudflare Workers or Pages
- Building a VLESS/Trojan/Shadowsocks proxy on Cloudflare's free tier
- Configuring a custom domain for a Cloudflare proxy to bypass SNI blocking
- Managing, updating, or troubleshooting an existing Cloudflare proxy node
- Registering a free domain for proxy use

## What This Skill Does

1. **Downloads edgetunnel**, fetches the worker code from GitHub (cmliu/edgetunnel, 30k+ stars)
2. **Generates credentials**, creates UUID for VLESS authentication and admin password
3. **Deploys to Cloudflare Pages**, not Workers, because Pages supports CNAME-based custom domains
4. **Registers a free domain**, via DNSExit (free 2-year second-level domains like `*.linkpc.net`)
5. **Configures DNS**, creates CNAME record pointing subdomain to `*.pages.dev`
6. **Binds custom domain**, attaches the domain to the Cloudflare Pages project
7. **Verifies and configures**, tests the node and provides client configuration

## How to Use

### Basic Usage

```
Help me set up a free Cloudflare proxy node
```

```
/cf-proxy
```

### With Specific Requirements

```
Deploy a VLESS proxy on Cloudflare using my domain example.com
```

```
Fix my Cloudflare proxy, Shadowrocket can't connect
```

## Architecture

```
Client (Shadowrocket / v2rayN / Clash)
  ↓ VLESS over WebSocket over TLS (port 443)
Custom Domain (CNAME → *.pages.dev)
  ↓
Cloudflare CDN (global edge)
  ↓
Cloudflare Pages Function (edgetunnel _worker.js)
  ↓ TCP outbound
Target Website
```

### Why Pages Instead of Workers?

The rest: https://github.com/davepoon/buildwithclaude/blob/HEAD/plugins/all-skills/skills/cf-proxy/SKILL.md
