mirror of
https://github.com/isboyjc/GoProxy.git
synced 2026-07-12 16:02:14 +08:00
feat: ✨ implement custom proxy subscription management and enhance configuration
- Added support for importing Clash/V2ray subscriptions, including automatic format detection and integration with sing-box for protocol conversion. - Introduced five proxy usage modes in the configuration, allowing flexible selection between mixed, custom-only, and free-only modes. - Enhanced `.env.example` and `docker-compose.yml` to include new environment variables for custom proxy settings. - Updated `CHANGELOG.md` to document new features and improvements related to subscription management. - Improved WebUI for managing subscriptions and displaying proxy statistics. - Implemented a background process for refreshing subscriptions and probing disabled proxies for reactivation.
This commit is contained in:
@@ -59,6 +59,10 @@ main.go (orchestrator)
|
||||
├── pool/ — Pool manager (admission control, slot allocation, replacement logic)
|
||||
├── checker/ — Background health checker (batch-based, skips S-grade when healthy)
|
||||
├── optimizer/ — Background quality optimizer (replaces slow proxies with faster ones)
|
||||
├── custom/ — Custom proxy subscription manager (fetch, parse, validate, periodic refresh)
|
||||
│ ├── parser.go — Clash YAML / plain / base64 subscription parser
|
||||
│ ├── singbox.go — sing-box process manager (config generation, start/stop/reload)
|
||||
│ └── manager.go — Subscription refresh loop + probe-wake loop for disabled proxies
|
||||
├── proxy/ — Outward-facing proxy servers
|
||||
│ ├── server.go — HTTP proxy (implements http.Handler)
|
||||
│ └── socks5_server.go — SOCKS5 proxy (raw TCP, manual protocol implementation)
|
||||
|
||||
Reference in New Issue
Block a user