Auto-validated free proxy list, published in Quantumult X, Clash Meta (Mihomo), and Shadowrocket subscription formats.
- 🔄 Auto-updated every 2 hours via GitHub Actions
- 🌐 Aggregated from 3 upstream sources (databay-labs, monosans, proxifly) + V2Ray subscriptions (V2RayAggregator)
- ✅ Strict quality gates: HTTP+HTTPS probe forwarding × 3 samples each — survivors must hit
<800msmedian,<400msjitter,≥15KB/sthroughput - 📊 Per-source quota: each source contributes its top 17 fastest survivors (final list ≤ 51 nodes, sorted by latency)
- 🛡️ Diversified — insulated against any single upstream going dark
- 🧹 Subscription files live on the orphan
databranch —mainhistory stays clean
https://cdn.jsdelivr.net/gh/steam-100/free-proxy-sub@data/qx.txt
https://cdn.jsdelivr.net/gh/steam-100/free-proxy-sub@data/clash.yaml
https://cdn.jsdelivr.net/gh/steam-100/free-proxy-sub@data/shadowrocket.txt
Cache TTL is up to 12 hours; append ?cache=invalidate to force-refresh.
https://raw.githubusercontent.com/steam-100/free-proxy-sub/data/qx.txt
https://raw.githubusercontent.com/steam-100/free-proxy-sub/data/clash.yaml
If
raw.githubusercontent.comreturns "certificate invalid" in your client (common GFW symptom), switch to the jsdelivr URL above.
https://raw.githubusercontent.com/steam-100/free-proxy-sub/data/shadowrocket.txt
Shadowrocket subscription is base64-encoded and includes both locally-validated HTTP/SOCKS5 proxies and upstream V2Ray nodes (SS/VMess/Trojan/VLESS).
The Clash config ships with curated rule-providers (Loyalsoldier upstream):
- 🚫 Ad / tracker block (
reject) - 🍎 Apple / iCloud direct
- 🔍 Google services proxy
- 📨 Telegram CIDR proxy
- 🇨🇳 China CIDR direct
- 🤖 OpenAI / Claude / Anthropic explicit proxy
sources (databay-labs + monosans + proxifly)
├── fetch each source separately
├── parse + validate (regex, port range, octet range)
├── cross-source dedup — proxy attributed to first source listing it
├── strict gates (fail-fast pipeline):
│ ├── HTTP probe × 3 samples → median <800ms, jitter <400ms
│ ├── HTTPS probe × 3 samples → median <800ms, jitter <400ms
│ └── 100KB throughput download → ≥15KB/s
├── per-source top-N selection (default 17 each, sorted by latency)
├── final cross-source sort by latency
├── emit qx.txt + clash.yaml → orphan `data` branch (force-push)
└── fetch V2Ray subs (V2RayAggregator) → combine with validated proxies
└── emit shadowrocket.txt (base64 URI list) → `data` branch
pip install -r requirements.txt
python convert.py
# outputs land in ./output/If you fork this and run your own subscription, please be considerate of the upstream sources — they hand out these lists for free. For high-volume or popular deployments:
- Mirror upstream lists into your own repo and pull from there instead of re-fetching the originals every run
- Self-host the Loyalsoldier rule files via your own CDN (the jsdelivr URLs are great for personal use, but a popular fork can dent the cache hit rate)
- Stretch the cron interval further if your users tolerate older data — proxies don't actually rotate every 2 hours
And star the upstream projects below — they're the ones doing the hard work.
- databay-labs/free-proxy-list — strict-SSL HTTP/SOCKS5 lists, refreshed every ~5 min
- monosans/proxy-list — geolocation-tagged proxy lists, hourly refresh
- proxifly/free-proxy-list — high-volume HTTP/SOCKS lists, ~5 min refresh
- Loyalsoldier/clash-rules — community-maintained Clash rule providers
- mahdibland/V2RayAggregator — speed-tested SS/VMess/Trojan aggregator
MIT © steam-100