GeekEZ Browser is a specialized anti-detect browser built on Electron and Puppeteer, with Xray-core integrated at the core. It is designed to solve multi-account association problems for cross-border e-commerce (TikTok, Amazon, Facebook, Shopee, etc.) by implementing deep system-level fingerprint spoofing.
Forces disable_non_proxied_udp policy to physically
block local IP leaks via WebRTC, ensuring only your proxy IP is visible.
Fully supports VLESS, VMess, Trojan, Shadowsocks (including SS-2022).
[Local] -> [Pre-Proxy] -> [Profile Proxy] -> [Target]
This architecture hides your real IP from the final proxy provider, adding an extra layer of anonymity.
Please verify your system requirements before installation.
If you see "App is damaged", run this command in Terminal:
sudo xattr -rd com.apple.quarantine /Applications/GeekEZ\ Browser.app
A: Fingerprint isolation only protects device identity. You MUST use a high-quality Clean/Dedicated IP. Shared IPs are easily detected.
A: Try setting Timezone to "Auto" in settings. Some sites (like Oracle) require precise time synchronization.
A: All protocols support standard Xray-core format. HTTP and SOCKS proxies
can be entered directly as ip:port without protocol headers. SOCKS additionally
supports the user:password:ip:port format used by many providers. For a direct
connection, enter 127.0.0.1.
GeekEZ Browser provides a REST API for external profile management.
1. Open Settings → Advanced → API Server
2. Enable "Enable API
Server"
3. Set your preferred port (default: 12138)
4. API will be available at
http://localhost:12138
The API only listens on 127.0.0.1 (localhost) for
security. No authentication required for local access.
:idOrName accept either profile
ID (UUID) or profile name-02, -03 suffixes if duplicates exist
GET /api/status - Get running profiles
status.
GET /api/profiles - List all
profiles.
GET /api/profiles/:idOrName - Get profile
details by ID or name.
POST /api/profiles - Create a new
profile.
PUT /api/profiles/:idOrName - Update
profile by ID or name.
DELETE /api/profiles/:idOrName - Delete
profile by ID or name.
GET /api/open/:idOrName - Launch a profile
browser by ID or name.
POST /api/profiles/:idOrName/stop - Stop a
running profile by ID or name.
GET /api/export/all?password=xxx - Export full
encrypted backup including browser data.
GET /api/export/fingerprint - Export all
profiles as YAML (fingerprints only, unencrypted).
POST /api/import - Import profiles from YAML
or encrypted backup.
# List profiles
curl http://localhost:12138/api/profiles
# Launch by name
curl http://localhost:12138/api/open/MyProfile
# Create profile
curl -X POST http://localhost:12138/api/profiles \
-H "Content-Type: application/json" \
-d '{"name":"Test","proxyStr":"socks5://127.0.0.1:1080"}'
# Export encrypted backup
curl "http://localhost:12138/api/export/all?password=mypass123"