GUI clients suit everyday desktop and mobile use. Command-line cores suit servers, gateways, containers, and automated environments. Consider the interface, background operation, and system permissions together. Compare clients first for desktop devices and core documentation first for servers and gateways. In production, pin the version and keep a configuration backup.
Start with your environment
Whether you need a tray interface and subscription management or systemd, Docker, or router deployment usually determines the right direction.
- Do you need a system tray, subscription updates, and visual policy groups?
- Do you need deployment with systemd, Docker, OpenWrt, or NAS?
- Do you need TUN, DNS, scripted rules, or advanced runtime options?
Direct recommendations
- For Windows, macOS, and Linux desktops, start with the client detail pages(See Client downloads)
- For servers or routers, start with core documentation and configuration examples
- Pin versions in production and save a configuration backup before upgrading
- Include log level, the control interface, and secret configuration in operational checks(See Runtime Control)
GUI clients still depend on core capabilities; interface support does not mean every protocol is available
Command-line cores are more flexible but cost more to troubleshoot
Before choosing, confirm that the project is still maintained
