clash / oss-hubClash Open Source Hub · Cross-Platform Client Downloads

Public

Download and documentation hub for an open-source, rule-based proxy client. Covers installers for Windows, macOS, Android, iOS, and Linux, plus subscription import and TUN mode setup, tutorials, and a troubleshooting handbook.

Download Clash View Tutorials GPL-3.0 · mihomo core · 5-platform builds
docs/

Core Features

These five documents map to Clash's five core capabilities. Click a filename on the left to see its explanation and a real config snippet on the right.

rules.md

Clash matches every new connection against the rules section of the config file, in order: DOMAIN-SUFFIX checks the domain suffix, DOMAIN-KEYWORD checks for a keyword match, GEOIP checks the destination IP's country, and MATCH is the catch-all placed last. The first matching rule wins, so earlier rules take priority. Unlike blanket global proxying, rule-based routing lets local-network and frequently-visited direct-connect sites skip the detour while domains that need a proxy route through one precisely. Rules can come from a subscription's built-in list, local additions, or remote rule-providers sets—changes take effect via hot reload without restarting the client.

rules:
  - DOMAIN-SUFFIX,github.com,PROXY
  - DOMAIN-KEYWORD,google,PROXY
  - GEOIP,CN,DIRECT
  - MATCH,PROXY
about/

Open-Source Ecosystem & Update Model

history.md

Clash was open-sourced in Go in 2018, and its rule-based routing and YAML config became the de-facto configuration standard in this space. After the original core was archived, the community fork mihomo (formerly Clash Meta) took over maintenance, adding more proxy protocols, DNS strategies, and TUN stack implementations while staying compatible with the original config format. Today, nearly every mainstream GUI client across platforms runs on the mihomo core under the hood.

ecosystem.md

The ecosystem has two layers: the core handles protocol implementation, rule matching, and traffic forwarding, while clients like Clash Verge Rev, FlClash, and Nyanpasu handle subscription management, the interface, and system integration—all developed under open-source licenses with publicly auditable code. The same config file works across different clients, so switching clients doesn't mean redoing your setup.

releases.md

The core and each client publish releases in their own repositories on independent schedules. Version numbers and installer links on this site's download page are driven by a version manifest—once the manifest updates, the page follows automatically, so there are no stale, manually-maintained links. Clients that are no longer maintained are clearly marked as archived, with an actively-maintained alternative suggested.

Clone the Core Repository

Developers can clone the mihomo core source directly to build it locally or review the protocol implementation:

git clone https://github.com/MetaCubeX/mihomo.git
Written in Go GPL-3.0 license Forward-compatible config format

Regular users don't need to touch the source code—just grab the GUI client for your platform from the download page; the core ships bundled with it. To understand what the core's parameters mean, check this site's full documentation and glossary.

faq/

Frequently Asked Questions

  • Subscription update failing?Open the subscription link directly in a browser first to confirm it returns YAML rather than an error page, then check its expiry and format.See the troubleshooting steps →
  • Proxy is on but sites still won't load?Check in order: node latency → rule match → DNS → system proxy.See the checklist →
  • TUN mode or system proxy — which one?System proxy is fine for browser use; command-line tools and games need TUN's network-layer takeover.Check the glossary →
  • Getting a port 7890 already in use error?Find the process holding the port, or just change mixed-port in the client.See the commands →
Download Client