644229719fc67079a079be37456550afe69840af
Made-with: Cursor
Proxy God — Rotating Proxy Chain Manager for Windows
Auto-fetches, validates and rotates multi-hop proxy chains with a live GUI, Windows kill-switch firewall, system proxy enforcement, and tray icon. Works on top of NordVPN (or any VPN) as the outer tunnel.
YOU → NordVPN (OS tunnel) → Hop 1 → Hop 2 → Hop 3 → Internet
Features
- Auto proxy pool — fetches from Proxifly CDN every 30 min, validates concurrently
- Multi-hop GOST chains — 2–8 hops, randomly picked from validated pool
- Obfuscation modes — Auto, HTTP-only, SOCKS5-only, Random Mix
- Manual chain builder — drag/reorder hops, pin your own IPs
- Fixed exit (last hop) — optional URL used only as the final hop; earlier hops still rotate randomly (ignored when a full manual chain is pinned)
- Exit IP verification — checks real exit IP every health cycle, rotates if it matches your real IP
- Windows system proxy — sets
HKCUregistry proxy so all WinINet apps use the chain - Firewall kill-switch —
netshrules that block all outbound except GOST + NordVPN when running as Admin - Tray icon — green/yellow/red circle, right-click menu
- Boot persistence — Task Scheduler logon task
Requirements
- Windows 10/11 x64
- Python 3.10+ (or use the pre-built
.exe) - NordVPN (recommended but optional — any VPN works)
Quick Start (from source)
git clone https://gitea.thetempleofdoom.com/drjones/proxy-god.git
cd proxy-god
pip install -r requirements.txt
python run.py
Run as Administrator for full kill-switch firewall enforcement.
Build standalone .exe
build_exe.bat
Output: dist\ProxyChainManager.exe + copied to Desktop.
Usage
- Launch
ProxyChainManager.exe(accept UAC prompt for Admin) - Configure settings in Settings tab if needed (defaults work fine)
- Click ▶ Start — the app will:
- Download GOST (one time, ~9 MB) and add Defender exclusion
- Fetch proxy lists from Proxifly CDN
- Validate them concurrently
- Build a random N-hop chain
- Verify the exit IP is different from your real IP
- Set Windows system proxy
- Engage firewall kill-switch (Admin only)
- Close window → minimizes to tray (chain keeps running)
- Click Quit or tray → Quit to fully stop
Chain Builder Tab
- Obfuscation mode — selects which protocols to include in chains
- Hop count slider — 1–8 total hops (top bar ± or slider)
- Fixed exit (last hop only) — optional field: your SOCKS/HTTP proxy is always the last hop before the internet; all earlier hops are still chosen at random from the validated pool. Leave empty for a fully automatic chain. Set hop count to
1to use only your fixed exit (no pool). While Pin & use this chain is on, the full pinned list wins and fixed exit is ignored. - Manual chain — enter proxies manually, reorder with ↑↓, enable "Use this chain" to pin it
- Paste current — copies the auto-selected chain into the editor
- Sources — add/remove proxy list URLs (JSON format from Proxifly)
Settings Reference
| Setting | Default | Description |
|---|---|---|
| Local port | 18888 | HTTP proxy port — point apps here |
| Health check sec | 180 | How often to re-verify exit IP |
| Full refresh sec | 1800 | How often to re-fetch + re-validate |
| Concurrency | 64 | Parallel proxy validators |
| Max candidates | 400 | Max proxies sampled for validation per cycle |
| Timeout sec | 12 | Per-proxy validation timeout |
| Kill-switch | ON | Block all outbound traffic except GOST + Nord |
Architecture
app.py GUI (CustomTkinter, 3 tabs)
service.py Background thread — pool management, GOST lifecycle, health check
gost_util.py Downloads and manages gost.exe
firewall.py netsh kill-switch rules
sysproxy.py Windows registry system proxy (WinINet broadcast)
tray.py pystray tray icon
config.py Settings dataclass + JSON persistence
validator.py Async proxy validation + exit IP checking
fetcher.py Proxifly JSON fetcher
Proxy Sources
Default sources use proxifly/free-proxy-list CDN:
https://cdn.jsdelivr.net/gh/proxifly/free-proxy-list@main/proxies/protocols/http/data.jsonhttps://cdn.jsdelivr.net/gh/proxifly/free-proxy-list@main/proxies/protocols/socks5/data.jsonhttps://cdn.jsdelivr.net/gh/proxifly/free-proxy-list@main/proxies/protocols/https/data.json
You can add any URL returning a JSON array of {"proxy":"http://ip:port", ...} objects.
Notes
- Free public proxies are untrusted — do not send sensitive unencrypted data
- NordVPN (or any VPN) as the OS tunnel means the proxy operators only see the VPN exit IP, not your ISP IP
- Kill-switch requires Admin — UAC prompt appears on launch
- Works on cloned VMs — all listeners bind to
127.0.0.1, not the machine's LAN IP
Languages
Python
95.5%
PowerShell
3.3%
JavaScript
0.9%
Batchfile
0.3%