Welcome to the official documentation for the Clash core project.
Clash is a cross-platform, rule-based proxy tool that operates at the network and application layers and is widely used across the Internet. Anyone looking to improve their Internet experience can use Clash.
Clash currently has two editions:
- Clash: the open-source edition released on github.com/Dreamacro/clash
- Clash Premium edition: a proprietary core with TUN and additional support
Although this Wiki covers both editions, Clash can still be challenging for general users. If you are considering a GUI client, we have several recommendations:
- Clash for Windows [Premium feature] (SHA256-verified download)
- Clash for iOS [Premium feature] (Stash)
- Clash for Android [Premium feature] (SHA256-verified download)
- Clash for macOS [Premium feature] (Stash for macOS)
- ClashX Pro [Premium feature] (macOS)
- Clash for OpenWrt (OpenClash)
Feature overview
- Inbound support: HTTP, HTTPS, and SOCKS5 servers, plus TUN devices*
- Outbound support: Shadowsocks(R), VMess, Trojan, Snell, SOCKS5, HTTP(S), and Wireguard*
- Rule-based routing: dynamic scripts, domain names, IP addresses, process names, and more*
- Fake-IP DNS: minimizes the effects of DNS pollution and improves network performance
- Transparent proxying: automatic routing-table and rule management for Redirect TCP and TProxy TCP/UDP*
- Proxy Groups: automated availability testing (fallback), load balancing (load balance), or latency testing (url-test)
- Remote Providers: dynamically loads remote proxy lists
- RESTful API: updates configuration in place through a comprehensive API
*: Available only in the Premium edition.
