refactor(proxies): share proxy dispatch between dl, search and resolve_proxy

A bare query skips a failing provider and errors when none answers; an unknown prefix such as us:seattle fails with a hint. The REST path now loads WindscribeVPN.
This commit is contained in:
imSp4rky
2026-09-25 18:14:26 -06:00
parent 80c0dc4ebf
commit 746bf184d2
7 changed files with 351 additions and 160 deletions
+2 -3
View File
@@ -102,7 +102,6 @@ Config keys of the Control D proxy provider. See
| `max_profiles` | `int` | `4` | The most profiles unshackle uses: your pairs plus the `unshackle-*` endpoints on the account. It must be 1 or more. unshackle creates an `unshackle-<region>` profile and endpoint only while the total is lower. |
!!! note "Provider loading differs between CLI and REST server"
The `dl` CLI loads all providers, including `windscribevpn` and `gluetun`. The REST API /
remote-client path uses a separate resolver that does **not** load `windscribevpn` or
`gluetun`. ExpressVPN and ProtonVPN also auto-load when their cached session exists, and Hola
The `dl` CLI loads all providers, including `gluetun`. The REST API / remote-client path
does **not** load `gluetun`, because it starts a local Docker container. ExpressVPN and ProtonVPN also auto-load when their cached session exists, and Hola
auto-loads whenever the `hola-proxy` binary is present.