Open-source core · Hands-on coverage of clients across platforms

ClashReviewsHub Clash client downloads and comparisons

From choosing a client to rule-based routing, find downloads by platform and verify your setup with connection logs.

  • mihomo core
  • GPL-3.0 open source
  • YAML configuration
  • Rule-based routing

Client comparison desk

Five criteria for choosing a Clash client

Check how features work before judging the interface. Being able to import the same subscription doesn't mean clients handle permissions, configuration merges or traffic routing in the same way.

Rule order matters more than the number of toggles

Rule mode evaluates connections in order, routing domains, IPs or processes to designated proxy groups. When comparing clients, check whether the connections view shows matched rules, proxy chains and destination addresses. If a site uses the wrong route, check the connection log first, then adjust rule order instead of switching everything to global mode. Unlike proxy tools that send all traffic through a single exit, the Clash ecosystem supports configurations that combine direct and proxied connections—provided rule sets stay updated, proxy group names are valid and the final catch-all rule behaves as expected.

mode: rule
rules:
  - DOMAIN-SUFFIX,example.com,DIRECT
  - MATCH,DIRECT
Read the section on rule-based routing →

This configuration sample shows selected fields, not a complete connection setup. You still need valid proxy nodes, proxy groups and permissions suited to your system.

Use cases and clients

Start with the device you'll use, then compare the settings you'll need to maintain. Picks aren't ranked by star ratings; recommendations are based on workflows and deployment requirements.

Everyday desktop use

Start with Clash Plus. It suits workflows that use a GUI to import subscriptions and switch proxy groups. Before installing, check OS and architecture support. Use the system proxy for your first connection; only investigate TUN and its permissions if you need app-level traffic capture.

Starting point: Clash Plus

Switching between mobile networks

Start by comparing Clash Plus's mobile options. When switching from Wi-Fi to cellular, check that the connection recovers and the intended proxy group remains selected. Background operation depends on battery settings and VPN permissions, so one successful foreground connection doesn't guarantee ongoing reliability.

Starting point: Clash Plus

Linux desktop

Compare Clash Verge Rev first, and consider FlClash as well. A GUI helps manage configurations and connection logs; make sure the package matches your distribution. System proxy settings, service permissions and terminal proxy settings are separate—verify each one.

Starting point: Clash Verge Rev

Headless deployment

For servers and routers, consider deploying mihomo directly. This suits users comfortable managing configuration files, service logs and startup tasks. Before deployment, check CPU architecture, configuration paths and the service account. Restrict access to the control interface; don't expose it directly to the public internet.

Starting point: mihomo core

Clash client downloads

Browse clients by platform, with installation requirements and maintenance status. Choose your OS first, then check your CPU architecture. A downloadable installer doesn't mean you can skip compatibility checks.

Windows

Start by comparing Clash Plus, then look at Clash Verge Rev, FlClash and Clash Nyanpasu. Check your system architecture before downloading, and locate the system proxy settings after installation. If you need service mode or TUN, read the permission prompts first; don't confuse security software blocking an app with a failed proxy connection.

Go to downloads →

macOS

Check whether your Mac uses Apple Silicon or Intel before choosing an installer. For everyday use, compare Clash Plus, Clash Verge Rev and FlClash. System proxy settings and network extension permissions have different approval flows. When macOS shows a launch warning, verify the app's source and system requirements rather than disabling system security features.

Go to downloads →

Android

Start with Clash Plus, or compare Clash Meta for Android, FlClash and Surfboard. Check the installer architecture and configuration format before granting VPN permission. If the connection drops when the screen locks, check battery optimization, background restrictions and other VPN apps before changing the subscription URL.

Go to downloads →

iOS

The download center links to Clash Plus on the App Store. Its official website is clashplus.io. After installation, grant VPN permission when prompted and import a valid configuration. Desktop settings and fields may not carry over as-is; use a configuration format supported by the mobile app.

Go to downloads →

Linux

For desktops, compare Clash Verge Rev and FlClash; for servers, consider deploying the core directly. Check your distribution, CPU architecture and package format first. A GUI's system proxy setting usually won't cover every terminal app, so check proxy environment variables separately for command-line tools.

Go to downloads →

Three checks for your first connection

First establish a connection you can verify, then add more complex settings. Keep a clear way to validate each step so you know where to look if something goes wrong.

  1. Install the client and confirm it starts

    Choose a package for your OS and architecture. After installation, open the settings and logs pages first. Make sure the client can start its core before adding a subscription. Leave the system proxy, TUN and launch-at-startup options off for now. If startup already fails, check permissions, port conflicts and configuration parsing errors first.

  2. Import a subscription and choose a proxy

    Import a valid subscription on the configuration page. After it updates successfully, select it and choose a node in the proxy group settings. Subscription URLs often contain access credentials, so don't share screenshots that expose them. A failed update and an unavailable node are different problems: check fetch logs for the former and connection logs for the latter. A red warning alone doesn't tell you which one it is.

  3. Enable the proxy and verify traffic

    Start in rule mode with the system proxy enabled. Visit your target site and check the connections page for the domain, matched rule and proxy route. A latency test measures only its specific test destination; it doesn't represent speeds for every site. Once your browser works, test other apps one at a time. Only investigate TUN or app-level proxy settings for traffic the system proxy doesn't capture.

Read the full setup guide →

Open-source foundations and support boundaries

How the clients, core and this site relate

Clash Review Hub is an independent resource for choosing and configuring clients, not their developer. Recommendations state the conditions they apply to, and open-source references link to project sources you can inspect.

Project history: the original and later ecosystem

Multiple clients use Clash's rule configuration and proxy group concepts. The original project and later forks aren't the same continuously maintained product. A familiar name or similar interface doesn't mean a project is still updated. When choosing a client, check its maintenance status, core source and current platform support.

mihomo evolved from Clash Meta and continues to develop related core capabilities. When migrating an older configuration, preserve the overall structure of rules and proxy groups, then check parsing logs for field compatibility. The download center marks discontinued clients as archived so you can distinguish historical references from current daily-use options.

Core relationships: similar interfaces can behave differently

The client provides configuration management, tray menus, system proxy settings and permission controls; the core handles connections. They have separate release schedules. A new button in one client doesn't mean every platform handles traffic the same way. Even the same core behaves differently across systems due to routing, permissions and network conditions.

For side-by-side comparisons, focus on reproducible checks: can the configuration load, can you select a proxy group, can you trace connections, and are proxy settings restored on exit? Screenshots are useful context, but they don't replace checking the effective configuration and connection logs. For definitions, start with the quick glossary, then return to the setup steps.

Open-source foundations: inspect the implementation and its requirements

mihomo is open source under the GPL-3.0 license. Its public repository includes source code, commit history and issue discussions. Open-source access helps explain how it works, but doesn't mean every subscription, network environment or third-party build behaves the same. The core's license doesn't automatically apply to every GUI client; check each project's license and release notes separately.

The command below fetches mihomo source code for users who want to read the implementation or explore the build process. Most users can install a GUI client without cloning the repository. Recommendations here aren't based on unverified star counts, user numbers or speed rankings; connection performance should be tested on your own network.

Updates: preserve your setup before migrating

App updates, core updates, subscription updates and rule-set updates are four separate things. Before upgrading a client, save your current configuration and local overrides. After upgrading, verify the original basic connection workflow before testing new features. Changes made directly to a downloaded configuration may be overwritten when the subscription is fetched again; keep long-term changes in a supported override mechanism.

Change one variable at a time and record errors before and after. If something breaks after an update, compare startup logs and the effective configuration instead of repeatedly clearing data. See the download center for specific client versions. For routine checks, rollback preparation and log-reading steps, see the maintenance section of the user guide.

Get the mihomo source code

View the MetaCubeX/mihomo repository ↗

git clone https://github.com/MetaCubeX/mihomo.git

Copy the command to fetch the source code. This won't download or install a client.

Clash technical notes

Explore a topic when you have a specific question. These three notes are listed newest first and cover first-connection checks, core migration and deployment.

Download the latest Clash