{ "_comment": "Example config for using mhrv-rs with an exit-node deployment to bypass Cloudflare anti-bot blocks on chatgpt.com / claude.ai / grok.com / x.com. See assets/exit_node/README.md for the deployment walkthrough.", "mode": "apps_script", "google_ip": "216.239.38.120", "front_domain": "www.google.com", "auth_key": "PUT_YOUR_APPS_SCRIPT_AUTH_KEY_HERE", "script_id": [ "PUT_YOUR_APPS_SCRIPT_DEPLOYMENT_ID_HERE" ], "listen_host": "0.0.0.0", "listen_port": 8085, "socks5_port": 8086, "log_level": "info", "verify_ssl": true, "exit_node": { "_comment": "Master switch. Set false to disable exit-node entirely without removing the config. Default false.", "enabled": true, "_comment_relay_url": "Public URL of your deployed exit-node handler (assets/exit_node/exit_node.ts running on Deno Deploy, fly.io, your own VPS, etc.).", "relay_url": "https://your-deployed-exit-node.example.com", "_comment_psk": "Pre-shared key — must match the PSK constant in your deployed source. Generate with: openssl rand -hex 32", "psk": "PUT_YOUR_EXIT_NODE_PSK_HERE", "_comment_mode": "selective: only `hosts` route via exit node (recommended). full: every request routes via exit node (slower, ~250-500ms extra hop).", "mode": "selective", "_comment_hosts": "Hostnames to route through the exit node. Matches exact OR dot-anchored suffix (chatgpt.com covers api.chatgpt.com etc.). Extend for any CF-anti-bot blocked sites you need.", "hosts": [ "chatgpt.com", "claude.ai", "x.com", "grok.com", "openai.com", "aistudio.google.com", "ai.google.dev" ] } }