1. What is Clash?
At its heart, Clash is a rule-based proxy engine running locally on your device. Written in Go and open-sourced on GitHub, its primary job is simple: route every network request based on your rules—whether that's direct, through a proxy, or blocked.
Clash doesn't provide nodes or servers; it's the "control center". You bring your own nodes (usually via a provider's subscription link), and Clash handles the traffic distribution according to your set rules.
In short: Clash = Local Rule Engine + Proxy Node Scheduler. It tells your device: "Go to Google via Node A, go to local sites directly, and go to ChatGPT via a dedicated AI node."
2. Clash vs. Traditional VPN
| Comparison | Traditional VPN | Clash (Rule-Based) |
|---|---|---|
| Traffic Strategy | All traffic via tunnel (one size fits all) | Smart split: local direct, international via proxy |
| Local Speed | Slowed down (routed through overseas nodes) | Full speed (direct local connections) |
| Flexibility | Low (usually just On/Off) | High (individual config for every domain/IP) |
| Protocols | OpenVPN, WireGuard, etc. | SS, VMess, VLESS, Reality, Trojan, Hysteria2, etc. |
| Open Source | Business VPNs are often closed-source | Fully open-source and auditable |
| Learning Curve | Low (click and connect) | Medium (requires subscription & rules) |
3. How Clash Works
Clash listens on a local port (usually 7890). When an app makes a request, the traffic enters the Clash core and follows these steps:
DNS Resolution
Resolves the target domain first while preventing DNS pollution. Supports encrypted DNS (DoH/DoT).
Rule Matching
Checks your rules (domain suffix, keywords, GeoIP, etc.) from top to bottom. The first match wins.
Execution
Applies the matching policy: DIRECT, PROXY, or REJECT (blocks traffic).
4. From Clash to mihomo: Core Evolution
2020
The original Clash core is born
Created by Dreamacro, it pioneered lean YAML-based rules and became the world's most popular open-source proxy engine.
2022
Clash Meta Project Launches
A community fork of the original core, adding Reality, VLESS, Hysteria, and TUIC protocols plus advanced DNS and rule features.
November 2023
Original Clash Core Discontinued
Dreamacro deletes the original repo, and CFW also stops maintenance. The community quickly moves to Clash Meta.
2024 - Present
Clash Meta Rebranded to mihomo
Now known as mihomo, it is the official core for all modern Clash clients (Verge Rev, FlClash, Karing).
5. Leading Clash Clients
The Clash/mihomo core is a CLI program that needs a GUI client for ease of use. Top current choices:
Clash Verge Rev
Primary choice for Windows, macOS, and Linux. Modern UI with full feature support. The best direct replacement for CFW.
View Downloads →FlClash
Cross-platform Flutter app; best-in-class Android experience. A modern successor to Clash for Android (CFA) with a unified, lightweight, and smooth UI.
View Downloads →Karing
The top choice for the iOS ecosystem. Compatible with Clash/Sing-box and syncs across all your devices with a single subscription.
View Downloads →ClashX Meta
Native macOS menu bar app. Minimalist and ultra-lightweight (< 20MB). Perfect for Mac users who want basic, stable proxying without a complex UI.
View Downloads →6. Which Client Should I Use?
Windows User (Former CFW User)
→ Clash Verge Rev. Most similar to CFW; the easiest migration path.
macOS Users
→ Choose Clash Verge Rev for full features, or ClashX Meta for a lightweight, native experience.
Android Users
→ FlClash. The modern, smooth replacement for Clash for Android.
iOS Users
→ Karing. Available on the App Store and fully compatible with Clash formats.