Commit Graph

37 Commits

Author SHA1 Message Date
4c9295bf56 docs: add .gitea/ISSUE_TEMPLATE/release_checklist.md 2026-05-20 16:07:50 -07:00
313c66aa9a docs: add .gitea/ISSUE_TEMPLATE/docs_task.md 2026-05-20 16:07:48 -07:00
fae37cae3c docs: add .gitea/ISSUE_TEMPLATE/bug_report.md 2026-05-20 16:07:46 -07:00
89b19bf4ab docs: add .gitea/PULL_REQUEST_TEMPLATE.md 2026-05-20 16:07:45 -07:00
740456dad6 docs: add LICENSE_STATUS.md 2026-05-20 16:07:44 -07:00
43fcd8cfce docs: add CODEOWNERS 2026-05-20 16:07:42 -07:00
631c33b4e5 docs: add CONTRIBUTING.md 2026-05-20 16:07:41 -07:00
cb315a03ea docs: add CHANGELOG.md 2026-05-20 16:07:40 -07:00
c1448312d8 docs: add SECURITY.md 2026-05-20 16:07:39 -07:00
Indiana Holmes
23e4b0b019 Add Live tab world chain map with hop geo arcs.
Plots YOU through each hop to EXIT on an equirectangular map with great-circle connectors, extends exit intel with lat/lon, and auto-refreshes on chain rotation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 15:43:18 -07:00
Indiana Holmes
26863fc2a5 Add ban tester, signup prep, exit IP intel, and sticky-exit hold.
New GUI tabs probe popular sites for exit-IP bans and prep signup autofill through the chain; Live tab shows geo/ASN/datacenter flags, and sticky-exit keeps the same egress IP during signup flows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 15:37:28 -07:00
Indiana Holmes
8258ca0997 Spice up README with mission-control tone.
Refresh messaging, structure, and section flow while preserving exact build/run commands and operational details.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-17 22:53:36 -07:00
Indiana Holmes
f9c548872b Save-as-final-hop button, browser proxy policy + QUIC kill, HTTPS tunnel probe
Fixes 'exit proxy never used in chain' and 'browsers break when chain is green'. Chain Builder gets a Save-as-final-hop button that appends the typed exit proxy to the manual chain. On engage, Chromium browsers get pinned to our proxy via HKLM policy (ProxyMode=fixed_servers, ProxyServer, ProxyBypassList) and QuicAllowed=0 so HTTP/3 doesn't bypass HTTP proxies and stall under the kill-switch. Chain start now runs check_https_tunnel and warns clearly when proxies forward HTTP but refuse CONNECT — the real cause of green-chain-yet-blank-browser.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 23:30:29 -07:00
Indiana Holmes
094e0577fb Spoof-when-possible browser personas, Tier-2 telemetry kill + artifact wipe, UI polish
Browser: identity persona dropdown (blend Windows-Chrome / Firefox / mac-Safari / hardened / custom) + cookie policy dropdown. Blend personas relax RFP/FPI/strict-TP so the machine looks normal while still hiding behind the chain. Persona TZ applied via env var; UA / language / locale / screen via user.js. WebRTC still forced off (it leaks real IP). Privacy: Telemetry kill toggle (DiagTrack, Activity History, ad ID, Cortana, scheduled tasks) with full snapshot/restore. One-button forensic artifact wipe (TEMP, Recent, Jump Lists, Prefetch, MRU, clipboard). UI: neon palette, glow card borders, gradient header banner.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 23:07:18 -07:00
Indiana Holmes
6561bdc37f Add LAN-broadcast lockdown, per-rotation MAC, leak audit panel
Tier-1 paranoid hardening: privacy_lan.py disables LLMNR/NetBIOS/mDNS with reversible snapshot; service rotates MAC on every chain rotation when enabled; leak_audit.py probes every leak surface (IP, DNS, IPv6, WPAD, GPO, ProxySettingsPerUser, LAN broadcast, VPN, WebRTC) and renders pass/fail in Privacy tab.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 18:40:53 -07:00
Indiana Holmes
7657a37855 Fix Windows Server proxy: HKLM mirror, ProxySettingsPerUser fix, policy detect
On Server / GPO baselines, ProxySettingsPerUser=0 makes WinINet ignore HKCU entirely. When elevated, force the flag to 1 and mirror proxy values to HKLM root + Connections blob. Detect Group Policy proxy locks and surface them so the user knows browsers will keep the policy value. Add diagnose_system_proxy() logged on every chain engage.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 18:08:32 -07:00
Indiana Holmes
8f012402a6 Harden Windows Server compatibility and system-wide proxy.
Fix exit-IP checks for HTTP-only proxies, apply proxy via WinINet Connections blob and WinHTTP, improve VPN detection on legacy Server, add SOCKS5 host:port:user:pass exit parsing, and add win_compat probe for PowerShell 2.0 hosts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 18:03:30 -07:00
Indiana Holmes
8bd8d4267f Fix Firefox managed proxy profile to allow website loading.
Uses a clean manual HTTP/SSL proxy configuration, clears conflicting SOCKS fields, and stops writing prefs.js so Firefox can manage runtime prefs correctly.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 13:50:27 -07:00
Indiana Holmes
d4296763ee Build comprehensive privacy suite and hardened browser controls.
Adds VPN-aware leak handling, chain testing UX improvements, hardened Firefox launch/profile management, privacy/device hardening modules, and tray/status upgrades so the app is production-ready as the new baseline.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 13:50:05 -07:00
Dr Jones
9439037cac Early-exit validation: stop once enough valid proxies found
- validate_proxies: target= param — once N valid found, remaining
  tasks skip the HTTP call and drain immediately (no wasted time)
- _build_pool: target = max(min_pool_size, chain_length * 3)
- Settings: min_pool_size (default 20), max_candidates default 400->200
- UI: Stop after N valid / Max candidates fields in Settings tab
- README: updated settings table
- 1 new test for early-exit with unreachable target

Made-with: Cursor
2026-04-16 02:31:40 -07:00
Dr Jones
8ffde94d48 VPN-aware leak detection, GOST stderr logging
- _is_same_network: /16 subnet comparison catches NordVPN IP rotation
  (exit_ip != real_ip exact-match missed same-VPN exits on rotated IPs)
- Leak now blacklists the entire dead chain, not just rotate
- GOST stderr/stdout -> gost.log (file, never deadlocks vs pipe)
  with 512KB rotation; last 8 lines shown in UI when GOST dies
- read_gost_log_tail helper for live debugging
- Health check uses same subnet check for consistency
- 5 new subnet tests

Made-with: Cursor
2026-04-16 01:23:00 -07:00
Dr Jones
0509d4104d Fix validation: 0 valid proxies (httpx shared client bug)
httpx.AsyncClient.get() does not accept proxy= per-request.
Shared client caused every check_one call to raise TypeError,
silently caught as False, so 0/N proxies ever passed.

Reverted to per-proxy AsyncClient(proxy=url) in _check_one.
Semaphore concurrency + wall-clock cap preserved.
Also re-adds _check_one helper that was accidentally removed.

Made-with: Cursor
2026-04-16 01:12:56 -07:00
Dr Jones
c9c45fdfec Fix empty proxy sources (empty pool), first-run bat, elite hint
- load_settings/sanitize_settings: treat sources=[] as invalid; restore defaults (all([]) was true)
- _build_pool: defensive default sources + clearer empty-fetch log; elite-only empty fetch message
- FirstRun_Build_And_Install.bat: Python check + setup_and_build.ps1
- README + test for empty sources sanitize

Made-with: Cursor
2026-04-16 00:44:42 -07:00
Dr Jones
214d2d2ff7 Proxy auth UI, verbose Live logs, build script, docs
- Fixed exit and manual chain: optional user/pass fields with URL merge and redaction in UI/logs
- config: split_proxy_for_edit, merge_proxy_credentials, redact_proxy_url, IPv6-style host bracketing
- Live tab: UILogHandler to stream proxy_chain_manager logs; Verbose toggle; Clear log; httpx quiet
- service/validator/fetcher: structured INFO/DEBUG for pool, GOST, validation, fetches
- setup_and_build.ps1: pip upgrade, deps, PyInstaller, desktop copy + shortcut; build_exe.bat delegates
- README: clone/pull to one-script desktop build flow

Made-with: Cursor
2026-04-16 00:27:39 -07:00
Dr Jones
0316b1befc chore: remove build/ and dist/ from version control (use build_exe.bat locally)
Made-with: Cursor
2026-04-15 19:53:48 -07:00
Dr Jones
b32e241670 chore: desktop Proxy God shortcut + script, README one-click section
Made-with: Cursor
2026-04-15 19:52:18 -07:00
Dr Jones
086a2499c0 fix: anti-stall — IP check budgets, capped timers, fetch wait_for, obfuscation auto-fallback, empty validate short-circuit, unittest suite
Made-with: Cursor
2026-04-15 14:40:46 -07:00
Dr Jones
dc1a1c3efd docs: README overhaul — sharper voice, same facts
Made-with: Cursor
2026-04-15 14:35:18 -07:00
Dr Jones
096c5094fb fix: sanitize settings JSON, asyncio get_running_loop, Defender exclusion, _btn cleanup, ASCII Save label
Made-with: Cursor
2026-04-15 13:39:27 -07:00
Dr Jones
1366a2f48e remove login dashboard; keep Proxy God only
Made-with: Cursor
2026-04-15 13:34:32 -07:00
Dr Jones
ae2d2bb982 add login dashboard: console at logon with listeners, IIS, Docker, stats
Made-with: Cursor
2026-04-15 13:20:27 -07:00
Dr Jones
9f32fb3bff fix: _btn pop font/width/height so CTkButton never gets duplicate kwargs
Made-with: Cursor
2026-04-15 12:27:17 -07:00
Dr Jones
862b07b837 fix: _btn pass font/corner_radius explicitly (no duplicate font in CTkButton/super kwargs)
Made-with: Cursor
2026-04-14 19:38:05 -07:00
Dr Jones
1bd07623c4 fix: _btn duplicate font kwarg (Save All Settings crash on startup)
Made-with: Cursor
2026-04-14 19:34:10 -07:00
Dr Jones
644229719f feat: fixed exit proxy (last hop only), optional pool-free single-hop mode, gitignore pycache
Made-with: Cursor
2026-04-14 19:28:50 -07:00
Dr Jones
45798464e4 optimize: shuffle-drain pool (no repeat chains), executor for fetchers, DEVNULL pipes, verify=False validator, IP fallbacks, +/- hop topbar, timestamps, countdown, rotation counter, blacklist bad proxies
Made-with: Cursor
2026-04-14 17:21:10 -07:00
Dr Jones
4bb626498f v2: tabs, chain builder, obfuscation modes, hop slider, Defender exclusion, firewall kept
Made-with: Cursor
2026-04-14 17:13:02 -07:00