Skip to content

subconverter-ng

A modern subscription converter — a Go rewrite of subconverter, focused on day-one support for new protocols.

License CI Docker

Why this project

subconverter is a classic, but its development has slowed in recent years, leaving newer protocols such as Hysteria2, TUIC and VLESS Reality only partially supported. subconverter-ng is a Go rewrite:

  • Drop-in compatible API/sub?target=clash&url=...&config=..., so existing clients and bookmarks keep working without changes
  • Aligned with Clash.Meta / mihomo — new protocols available from day one
  • The fetch layer is a first-class citizen — built-in upstream proxy, custom User-Agent, and automatic bypass of the Cloudflare 5-second challenge

Supported protocols

Protocol Link prefix Status
Shadowsocks ss://
ShadowsocksR ssr://
VMess vmess://
VLESS (incl. Reality / XTLS-Vision) vless://
Trojan trojan://
Hysteria v1 hysteria:// hy://
Hysteria2 hysteria2:// hy2://
TUIC v5 tuic://
AnyTLS anytls://
SOCKS5 socks:// socks5://
WireGuard wireguard:// wg://

When the subscription itself is Clash/Clash.Meta YAML, the proxies it contains are extracted directly (any type, including WireGuard).

Up and running in 30 seconds

docker run -d -p 25500:25500 ghcr.io/jungley8/subconverter-ng:latest
# http://127.0.0.1:25500/sub?target=clash&url=<URL-encoded subscription>
go install github.com/Jungley8/subconverter-ng/cmd/subconverter-ng@latest
subconverter-ng serve --listen :25500

Continue with the Quick Start.

Can't reach your provider?

Many providers require a proxy to reach, or sit behind a Cloudflare challenge. See Upstream Proxy & UA and Bypass Cloudflare.

License

GPL-3.0-or-later © Jungley8