Open-source clients · mihomo core

Clash Chinese Hub Client Downloads

Find Clash clients for every platform, understand routing rules, and follow setup guides to import a subscription and verify your connection.

Open-source codeConfiguration basicsProtocol references

Clash configuration: start with routing rules

First, understand the difference between the client, the core, and the configuration file. Then follow each request through the setup. These five steps cover the settings most people need when getting started.

See the setup steps

Routing rules: choose where traffic goes

Use rule mode to route traffic directly or through a proxy instead of sending every request down the same path. The core checks domains, IP addresses, or rule sets in order, then sends each match to the assigned proxy group. If a site won't load, find its domain in the connection log and check which rule matched and where the traffic went. A domain-suffix rule covers the domain and its subdomains; proxy group names must match your configuration. Compared with global proxy mode, rule mode is better suited to accessing local services and remote resources at the same time—and makes it easier to see why each connection took a particular route.

↳Rule syntax example
DOMAIN-SUFFIX,github.com,Proxy

Matches github.com and its subdomains, then sends traffic to the Proxy group.

mihomo core: check configuration compatibility first

Think of the graphical client and proxy core as separate components. The client handles subscriptions, permissions, and controls; mihomo parses the configuration, establishes connections, and routes traffic. Clash Meta is a common name from the core's development history; current documentation generally uses mihomo. Don't assume protocol support based on the client name alone: a client may use a different core after an update. If an imported configuration contains unknown fields or causes protocol errors, check the client's core version and the configuration format before updating. Many basic fields from older Clash configurations remain usable, but extensions and newer features need to be checked individually.

≡Configuration parsing
config.yaml → mihomo
↳Troubleshooting order
Check the core → Check the fields → Review the logs

TUN mode: route traffic beyond system proxy settings

Verify the basics with the system proxy before enabling TUN. The system proxy only works with apps that honor the OS setting. TUN uses a virtual network interface to capture routed traffic, including traffic from some apps that ignore the system proxy, but routing, exclusions, and system permissions still apply. Before enabling it, check service mode, network-interface permissions, and DNS settings. Avoid changing routes while other virtual-network tools are active. If your browser works but command-line tools or games don't, consider whether you need broader traffic capture. TUN does not change the proxy protocol or fix an expired subscription; when connections fail, distinguish traffic-capture issues from problems with the proxy server.

⌘Configuration snippet
tun:
  enable: true
  auto-route: true
Example fields only; check system permissions before enabling.

Subscription management: check what's active after an update

Import an existing subscription URL from the subscription or configuration page. Wait for the client to download and parse it, then select the configuration you want to use. A successful update only means the configuration was retrieved; it does not guarantee that its nodes work. Also check the subscription's validity, protocol settings, proxy group selection, and connection logs. When adding your own rules, use the client's override or merge feature where possible, rather than editing a file that a remote update may overwrite. Subscription URLs can contain personal access credentials: don't post them in forums or include them in screenshots. When asking for help, share the error details but hide the full URL and authentication data, and note what you changed before the problem started.

↓Subscription workflow
Import URL → Update configuration → Set as active
≡Manage local rules
Keep remote subscriptions and local overrides separate

Cross-platform clients: choose the right installer for your OS

Check your operating system and processor architecture first, then compare each client's configuration options, core capabilities, and maintenance status. On desktop, check system proxy support, service mode, and startup settings. On mobile, check VPN permissions, background activity, and network switching. Different platforms may use different core implementations; being able to import the same subscription doesn't mean every extended field will work everywhere. When switching devices, start with a basic configuration and confirm that rules and proxy groups work before restoring overrides and advanced settings. An older client opening a configuration file does not mean it fully supports every protocol or feature in that configuration.

⚙Settings overview
Rule modeSelected
System proxy
Current configurationActive

Choose a Clash client for your device

The download page lists clients, installers, and system requirements by platform. Choose your OS, check the architecture, then import your configuration after installation.

Windows

A good fit for managing subscriptions and rules on a computer. Check your processor architecture in system settings, then look for the tray icon, system proxy toggle, and port conflicts after installation. If you need TUN, follow the client's instructions to install or start its service and grant the required permissions. When looking for an alternative to a legacy client, compare actively maintained options rather than choosing by a familiar old interface.

Go to downloads

macOS

Choose the right installer for Apple Silicon or Intel, and check the client's minimum macOS version. Follow the system prompts to grant permissions on first launch, then make sure the client is running from the menu bar. For enhanced traffic capture, check the network extension or helper service too. Before switching clients, turn off the existing proxy to avoid two tools changing network settings at once.

Go to downloads

Android

Choose an installer for your device's architecture, then allow the VPN connection after importing your configuration. Some systems restrict background activity, so check battery optimization and background permissions in your device settings. If the connection drops when switching between Wi-Fi and mobile data, check the VPN status and node connection logs first, then investigate the network or DNS settings.

Go to downloads

iOS

Open the App Store from the download page, install the app, and follow the prompts to add a VPN configuration. Before importing a subscription, check which formats and protocols the client supports; desktop configuration extensions may not all work on mobile. After connecting, check the active proxy group and rule mode. If a particular app has problems, also check its own network settings and any on-demand connection options.

Go to downloads

Linux

Choose an installer format for your distribution and check the desktop environment and runtime dependencies. A graphical client is convenient for managing subscriptions; server and router users can explore the core options separately. Terminal programs may not use the desktop system proxy. Check environment variables or TUN routes as needed, and don't assume that a working browser means all programs are using the proxy.

Go to downloads

Set up for the first time in three steps

Get a basic connection working before adding advanced settings. Keep a known-good configuration and change one thing at a time so you can identify the cause if something breaks.

  1. Import and activate a subscription

    Open the subscription or configuration manager, paste in your subscription URL, and update it. When the configuration appears, set it as active. If parsing fails, check that the URL is complete and that its response is in a format the client supports. The client provides connection and routing features; nodes and subscriptions must be obtained separately.

  2. Choose rule mode and a proxy group

    Set the running mode to Rule and choose a working node in the proxy group you want to use. On desktop, enable the system proxy; on mobile, allow the VPN connection. Leave DNS and traffic-capture settings at their defaults for now. Changing too many options at once makes it harder to pinpoint problems during initial setup.

  3. Visit a website and check the logs

    Visit a site that requires a proxy, then open the client's connection or log page. Confirm that the request reached the core, matched the expected rule, and used the right route. If only certain apps fail, check their proxy settings and whether TUN is needed. Once everything works, consider enabling automatic updates and launch at startup.

Read the full guide →

Open-source ecosystem and core origins

Check project origins, client maintenance, and configuration compatibility separately. Open-source repositories document implementations and releases; this site provides download links and English-language guides.

From Clash to mihomo

The Clash ecosystem includes proxy cores, graphical clients, and configuration tools. The original Clash popularized the rules, proxy groups, and subscription workflows many users know; community projects have continued to build on them. Since the original project is no longer maintained, don't choose a client just because its name includes Clash. Check which core it actually uses, which platforms it supports, and whether it's actively maintained. Older configurations can be a starting point for migration, but don't assume every new client will support them in full.

Treat client updates and core updates separately

mihomo follows the development path of Clash Meta, with rule processing and support for multiple protocol implementations. Graphical clients add subscription management, connection views, and permission prompts around the core, and the two may follow different release schedules. After updating the interface, check whether the core changed too. After a core update, look for changes to DNS, routing, and configuration fields. To review the implementation, use the mihomo repository link below to find source code, documentation, and release history.

Use release notes to decide whether to update

Read the changelog first and look for fixes related to your issue before deciding to update. Before upgrading, save local overrides, rules, and settings that aren't part of your subscription. Afterward, test the same connections and rule matches again. If the client can export its configuration, check whether the export includes local changes. When reporting a regression, include your OS, core version, error logs, and reproduction steps; that's more useful than simply saying the connection doesn't work.

Know the difference between a guide site and a software project

Clash Chinese Hub provides client links and usage guides. It is not the development team behind every client and does not provide proxy nodes or subscription services. The settings shown on this site explain how things work; check your client and core documentation for the fields they actually support. Consider system prompts before changing device permissions, routes, or background activity. When using network tools, follow applicable laws, service terms, and the rules of your network.

How we maintain these guides → · Core relationships and protocol reference →

Clash configuration and how-to guides

Browse guides for first-time setup, sharing access on your local network, and choosing a client. Solve one step at a time before moving on to advanced options.