Windows
The most popular pick for desktop users. Runs quietly in the system tray, includes the UWP loopback fix, and can even route Microsoft Store apps through the proxy.
Go to Download -> PKG-W1SEC.01 · Open-Source Ecosystem · Clients Updated Across All Platforms
Follow along, get online in ten minutes.
Think of setup like assembling furniture from a diagram: subscription import is plugging it in, proxy mode is picking the gear, rule-based routing is wiring it up. Every part is labeled — just follow the steps.
FREEFree foreverOSSOpen sourceDOCIllustrated docsRULERule-based routingKernel mihomo · Platforms Windows / macOS / Android / iOS / Linux · Tutorial Step-by-step diagrams
Diagram · Plugging it in backwards won't break anything — just flip it and try again
SEC.02 / Pickup Counter · Grab the Right Build for Your System
Figure out which system you're on first, then head to the matching shelf on the download page. Every platform has more than one client option — the top pick works right out of the box.
The most popular pick for desktop users. Runs quietly in the system tray, includes the UWP loopback fix, and can even route Microsoft Store apps through the proxy.
Go to Download -> PKG-W1Separate installers exist for Intel and Apple Silicon — grab the right one. On first launch, just approve the system extension when prompted.
Go to Download -> PKG-M2Direct APK install; grant VPN permission and it works system-wide. Note the difference between the ARM64 build and the universal one — pick ARM64 on newer phones.
Go to Download -> PKG-A3Install through the App Store's official channel. Once installed, allow VPN configuration in Settings so you can import your subscription.
Go to Download -> PKG-I4Desktop distros can use the deb package for a quick three-step install; for servers or headless setups, just run the mihomo kernel with systemd.
Go to Download -> PKG-L5SEC.03 / Setup Overview · Four Steps to Get Online
The whole process is just four steps, each with its own diagram. If something goes wrong, don't panic — just back up a step and try again. Nothing here can break.
Think of the client as the cabinet body for the whole setup: the GUI lets you see your nodes, modes, and rules clearly, while the real work happens inside the mihomo kernel. Similar tools often only offer a command line — Clash-based clients put every switch right on the panel, so you don't need to memorize commands. The one thing to watch for at this stage: don't grab installers from sketchy sources. Every link on this site's download page points to an official release channel.
PART-C02 · Client BodyA subscription link is really just a pointer to a remote config file bundling nodes, groups, and rules. It solves the problem of "you shouldn't have to type in dozens of node addresses by hand": when your provider updates its nodes, one refresh in the client syncs everything. Compared to old-school proxy tools where you enter each server manually, this is the most convenient part of the Clash ecosystem. Treat the link like a password — don't post it publicly.
PART-S03 · Subscription PlugA lot of beginners connect to a node and still find pages won't load — nine times out of ten, it's the System Proxy master switch that got skipped: picking a mode just wires things up, System Proxy is what actually plugs it into power. The upside of Rule mode is that routing happens automatically — local sites load at full speed, overseas sites switch to a node automatically, no manual toggling needed. That's the core difference between Clash and simpler "one-click global" tools.
PART-M04 · Mode DialSEC.04 / Spec Sheet · Where These Parts Come From
Check the label before you get started. This section covers the full story of the Clash ecosystem: project history, kernel relationships, client lineage, and how updates work.
Clash started out as an open-source rule-based proxy kernel written in Go. Thanks to its clean YAML config format and flexible rule-based routing, it became something of a de facto standard among similar tools. After the original repository was archived, the community fork Clash Meta (now called mihomo) took over maintenance, continuing to add protocol support and performance improvements — nearly every actively maintained client today is built on this kernel.
The easiest way to picture the ecosystem is as two layers: the mihomo kernel is the engine, handling protocol handshakes, rule matching, and traffic forwarding; GUI clients like Clash Verge Rev, FlClash, and Clash Plus are the cockpit, turning the kernel's capabilities into switches and lists you can actually use. Switching clients on desktop doesn't affect your config file — you can swap the cabinet doors, but the mounting holes on the frame stay the same.
Both the kernel and each client publish versioned releases on open-source platforms, with changelogs you can check yourself. This site's download page resolves the latest release for each client in real time rather than locking to an old version, and most clients also check for updates on their own once installed — no need to keep refreshing this page. For the record: Clash for Windows is no longer maintained; the download page keeps it on an archive shelf purely for existing users who need the old build.
FIG.04-A · Getting the Source (Kernel Repository)
git clone https://github.com/MetaCubeX/mihomo.git
If you want to look at the kernel source, you can clone the repository directly; regular users can skip this step and just install a GUI client.
SPEC · Reference Details
SEC.05 / Quick Reference · Four Common Setup Questions
Q1 · No subscription link — can I still use the client?
You can install it, but it won't do anything — the subscription is the plug, and without it the client just sits there. Get a link from a provider first. See the basics section in the FAQ for more.
Q2 · Connected to a node, but pages still won't load?
Eighty percent of the time it's the "System Proxy" master switch that's off; the rest is usually a dead node. Work through the checklist in the full tutorial.
Q3 · Rule, Global, or Direct — which mode should I use?
Use "Rule" mode day-to-day — routing happens automatically. "Global" is only for temporary troubleshooting. Each mode is explained in detail in the glossary.
Q4 · Does lower latency mean faster speed?
Not necessarily. Latency only reflects response time — actual bandwidth depends on the line quality and node multiplier. For a full method on picking nodes, see this node selection guide.
SEC.06 / Appendix · Latest Maintenance Notes
More advanced reading beyond basic setup: how to configure DNS, how to diagnose slow speeds, how to fix port conflicts — one deep dive per topic.
A detailed breakdown of the nameserver, fallback, fallback-filter, and enhanced-mode hijacking settings in Clash's DNS section, plus a ready-to-use recommended config.
READ ->Breaks slow speeds down into three layers — node quality, transit path, and local settings — with a test and a benchmark for each layer in order, so you can pin down the bottleneck in ten minutes.
READ ->A "bind failed" error on startup usually means port 7890 is already taken. Full commands for checking which process is using it on all three platforms, plus the steps to change the port.
READ ->