Open-source clients and configuration guides

Clash Verge Rev Clash client downloads Routing rules reference

Browse client links and technical guidance covering the mihomo core, Clash routing rules, and subscription configuration to choose based on your device, configuration source, and connection method.

Free forever Open source Cross-platform Chinese documentation

Rule Observatory

From rule matching to protocol selection

Break down the configuration relationships that are easy to confuse into four perspectives: first see how requests match rules, then understand the responsibilities of the core, subscriptions, and platform clients.

01 / MATCHING

Rules are checked from top to bottom; matching stops at the first hit

Rule mode does not send every connection to the same node. The client reads the rules section of the configuration, checks domain, keyword, IP range, process, or rule-set conditions in order, and sends each request to the policy group referenced by the matching rule. More specific, higher-priority conditions usually appear first, while the final MATCH catches traffic not matched earlier.

When adjusting routing, check both rule order and the policy group actually selected. Seeing a rule name alone does not show which node will be used; a policy group may point to a direct connection, proxy node, another policy group, or a blocking policy. Connection records and rule-page searches help confirm the actual route.

Request details Rule conditions Policy group Actual exit
REAL SETTINGS

How common settings actually work together

System proxy sends apps that follow the operating system's proxy settings through the client; TUN mode captures more types of system traffic; Rule mode determines how requests choose policies after entering the core; DNS settings affect domain resolution. They operate at different stages, so troubleshoot connection issues along the traffic path instead of changing every switch at once.

USE CASES

Match configuration complexity to the use case

For everyday desktop use, start with subscription import, rule mode, and the system proxy; evaluate TUN when an app does not follow system proxy settings; keep protocols and policy groups simple when sharing configuration across devices; on servers or routers, deploy the mihomo core directly and manage configuration files, service permissions, and startup separately.

Platform Entry

Open the download page for your operating system

The home page provides platform links only. Package types, client maintenance status, and system requirements are listed on the download page; open the relevant tab and choose the appropriate client.

Windows

For desktop users of Clash Verge Rev, Clash Plus, FlClash, or Clash Nyanpasu. Check your system architecture before downloading, then import your configuration using the tutorial after first launch.

Go to downloads

macOS

Separate download options are provided for Apple Silicon and Intel devices. After installation, follow system prompts for network extensions, system proxy access, or background service permissions.

Go to downloads

Android

Choose Clash Plus, Clash Meta for Android, FlClash, or Surfboard based on interface preferences and configuration compatibility, and keep Android background restrictions in mind.

Go to downloads

iOS

iPhone and iPad users can get Clash Plus from the App Store. After importing a subscription, confirm the system VPN permission, then select a policy group and establish a connection.

Go to downloads

Linux

For desktop environments, choose Clash Verge Rev or FlClash; for servers, soft routers, and command-line environments, see the mihomo core packages on the download page.

Go to downloads
View all clients →

Open Source Context

Open-source ecosystem, core relationships, and update boundaries

To decide whether a Clash client is suitable for long-term use, review its code source, core dependency, configuration compatibility, and release cadence together rather than comparing the interface alone.

Project continuity and desktop client focus

Clash Verge Rev is a community continuation of the Clash Verge line, focused on Windows, macOS, and Linux desktop environments. The client brings configuration profiles, policy groups, rules, connection history, logs, and system proxy controls into one graphical interface, making it suitable for users who want to manage mihomo configurations directly on a desktop. It provides the management and interaction layer; the core performs the actual network processing.

This layered structure makes issues easier to isolate: if a configuration does not appear in the interface, check the subscription import and configuration profile; if the core fails to start, inspect syntax, occupied ports, and permissions; if a request exits somewhere unexpected, return to rule order, policy group selection, and connection records. Separating these layers usually produces a reliable diagnosis faster than toggling several switches in succession.

mihomo and the Clash configuration model

mihomo is one of the widely used open-source cores in the current Clash ecosystem. It reads YAML configurations, establishes connections for various protocols, matches rules, processes DNS, and provides control interfaces for graphical clients. Clash Verge Rev organizes these capabilities into an operable desktop interface, but protocol availability, field interpretation, and rule-set loading ultimately depend on core support.

The original Clash, Clash Meta, and mihomo share configuration heritage but differ in feature extensions. Common proxy nodes, policy groups, and basic rules generally migrate well; for extended protocols, rule-set formats, advanced DNS options, or specific provider fields, follow the current core documentation. The technical reference pages explain these differences by protocol and core family.

What public code makes possible

With project code, issue discussions, and release records available publicly, users can review feature changes, known issues, and fixes, while developers can reproduce platform-specific problems more easily. Open source does not mean every configuration is automatically compatible, so selection should still account for the operating system, core version, subscription format, and use case. On stable devices, reading the release notes before upgrading is generally safer than installing over the existing setup immediately.

The client and core may also be released separately, which is an important boundary. Client updates can change the interface, installation method, or system integration; core updates may affect protocol implementation, rule behavior, DNS handling, and configuration fields. When investigating post-upgrade differences, record the client version, core version, and current configuration source instead of mixing several variables into one judgment.

Application releases and configuration updates follow separate paths

An application package update replaces the client program, while a subscription update refreshes nodes, policy groups, or remote configuration; they are different operations. After a client update, existing configurations usually remain stored locally. A subscription update may overwrite content managed by the remote source. If a configuration contains manually written rules, clearly separate remote and local profiles to reduce accidental overwrites during updates.

Rule sets and proxy collections may also have their own update schedules. A refreshed subscription does not mean every remote provider has been downloaded again. If rules remain unchanged, the node list differs from expectations, or a remote resource fails to load, check the main configuration timestamp, provider status, log messages, and resource URL in sequence rather than watching only the connection button on the home page.

QUICK ANSWERS

Featured FAQs

These questions cover the steps most often confused during first-time downloads and configuration. Visit the FAQ page for the full categorized reference.

Are Clash Verge Rev and mihomo the same software?

No. Clash Verge Rev is a graphical desktop client for configuration management and system integration; mihomo is the core that handles protocol connections, DNS processing, and rule matching. Together they provide the complete desktop workflow.

Why do I still need to choose a policy group after importing a subscription?

A subscription usually provides both nodes and policy structure. Rules send requests to a policy group, but that group may still require a specific node, an automatic selection method, or a direct exit, so check the current option in each major policy group after importing.

How should I choose between rule, global, and direct modes?

For everyday use, start with rule mode so requests are handled according to the configuration; global mode sends traffic uniformly to a selected policy; direct mode is mainly for pausing the proxy path or troubleshooting the system network. See the tutorials and technical notes for the detailed differences.

Where can I migrate after Clash for Windows was discontinued?

Windows desktop users can evaluate Clash Verge Rev, Clash Plus, FlClash, or Clash Nyanpasu. Before migrating, save the original subscription source and local rules, then confirm that the target client supports the fields used by the existing configuration.

View all FAQs →

Technical Notes

Configuration and client technical notes

Explore mode selection, YAML structure, and real-world routing scenarios for configuration details that are worth revisiting beyond the main tutorials.

View all articles →