package icon

TG WS Proxy

Telegram MTProto WebSocket Bridge Proxy
Telegram MTProto WebSocket Bridge Proxy — a Rust vibecoded port of
Flowseal/tg-ws-proxy.
Listens for Telegram Desktop's MTProto connections on a local port and
tunnels them through WebSocket (TLS) connections to Telegram's DC servers.
Telegram channel: @tgwsproxy_rs.
Telegram Desktop → MTProto (TCP 1443) → tg-ws-proxy-rs → WS (TLS 443) → Telegram DC
↘ CF proxy (kws{N}.{cf-domain}) → Telegram DC (WS via Cloudflare)
↘ CF Worker (*.workers.dev) → Telegram DC (TCP tunnel via Cloudflare)
↘ upstream MTProto proxy → Telegram DC (WS fallback)
↘ direct TCP :443 → Telegram DC (last resort)

Android app
A minimal Jetpack Compose wrapper around the same core the CLI runs. Type the
flags you would pass to tg-ws-proxy, tap Start, and when the tg://proxy
link appears tap it (or let the app open it) to add the proxy in Telegram.
The listen address should be 127.0.0.1 so Telegram on the same phone can
connect.
Add --secret <32 hex chars> if you want the link to stay the same across
restarts. --log-file is ignored; logs go to the on-screen view and logcat
(tg-ws-proxy).
The default arguments carry --quiet, so the on-screen Log panel stays
empty until you remove it. That is the default and not a failed start: drop
--quiet (or swap it for --verbose) before tapping Start to see log
lines. The tg:// link appears either way — it reaches the UI from the listen
callback rather than by scraping the log, so --quiet never hides it.

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 2.5.0 (205003) suggested Added on Oct 02, 2026

    x86_64

    This version requires Android 8.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • io.github.valnesfjord.tgwsproxyrs.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 5.5 MiB PGP Signature | Build Log

  • Version 2.5.0 (205002) - Added on Oct 02, 2026

    arm64-v8a

    This version requires Android 8.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • io.github.valnesfjord.tgwsproxyrs.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 5.0 MiB PGP Signature | Build Log

  • Version 2.5.0 (205001) - Added on Oct 02, 2026

    armeabi-v7a

    This version requires Android 8.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • io.github.valnesfjord.tgwsproxyrs.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 3.8 MiB PGP Signature | Build Log