Clash Verge·mihomo rule-based routing

Clash VergeDownload & Setup

Choose a client for your OS and use the mihomo core to handle connections. Manage subscriptions and routing rules in the Chinese-language interface.

Open SourceChinese DocumentationDesktop Configuration Management

Find downloads for your device

DOWNLOAD / CHOOSE YOUR PLATFORM

Clash client downloads

Clash Verge Rev is for desktop systems; mobile users can choose a client from the same ecosystem. The five platform links cover different projects, not one client that supports every OS. Start by identifying your device’s operating system, then check its processor architecture and installation format.

Windows

For everyday desktop use, try Clash Plus or use Clash Verge Rev to manage subscriptions and inspect connections and routing rules. Before installing, check your processor type in system information. A desktop shortcut’s name does not indicate its architecture.

After launching the client for the first time, import a configuration before enabling the system proxy. If an app has no connection records, check whether it follows the system proxy settings. For UWP apps, follow the guide to handle loopback restrictions instead of repeatedly switching nodes.

Download Windows client

macOS

Choose an Apple Silicon or Intel installer based on the chip shown in About This Mac. Clash Plus, Clash Verge Rev, and FlClash offer different interfaces and configuration management options. If you already have a configuration, first check that the client supports its protocols and rules.

The first launch may prompt you to authorize network-related actions. System proxy and TUN require different permissions. Start by testing browser traffic with the system proxy, then check whether other apps need traffic routed through a virtual network interface.

Download macOS client

Android

Mobile options include Clash Plus, Clash Meta for Android, and FlClash. Most newer devices use ARM64, but check your device specifications to be sure. If the installer architecture does not match, return to the download page and choose the right build rather than reinstalling the same file.

Your first connection usually requires approval for the system VPN. If the connection drops after the screen has been locked for a while, check battery optimization and background activity permissions. Use only one VPN app to route traffic at a time to avoid conflicts over the system tunnel.

Download Android client

iOS

On iPhone or iPad, visit the Clash Plus App Store page from the download page. Product details are also available on the official site, clashplus.io. After installing the app, import a supported subscription and follow the prompts to add a VPN configuration.

When switching from another client, check node protocols, routing rules, and proxy groups separately. Being able to read a subscription URL does not mean the client supports every client-specific field. If parsing fails, check the subscription format before changing connection settings.

Download iOS client

Linux

For desktop Linux, choose Clash Verge Rev or FlClash and download the package that matches your distribution. Check desktop dependencies and permissions before use. For headless devices such as servers and routers, deploying the mihomo core separately may be a better fit.

The graphical interface manages configuration, while the background core handles connections. Check their status separately. When enabling TUN, also verify service permissions and routing changes so that missing permissions are not mistaken for a subscription or node issue.

Download Linux client

WORKSPACE / CONFIGURATION & ROUTING

Clash Verge features

Follow the client workflow from subscription import to rule matching. These are static interface previews, not a live control panel. Select a card to expand its instructions. Options may vary depending on the client you have installed.

Import Subscription
Update Configuration

A subscription combines nodes and rules in an updateable configuration, making it useful when you need to sync regular changes from a provider. Paste the provider’s URL on the configuration page, then select the imported profile to make it active. Updating fetches the latest content; it does not automatically fix or preserve every local edit. Unlike tools that manage individual nodes, Clash Verge Rev focuses on full configurations and local extensions. Put persistent custom rules in a supported override location to avoid losing them on the next update. Subscription URLs may contain access credentials, so do not share them publicly or include them in screenshots.

Rule Matching
Route by Order

Rules are checked from top to bottom, and the first match determines which policy handles the connection. Use the Rules page to inspect the loaded rules and the Connections page to see what a request actually matched. To make changes, edit the configuration or use an override rather than changing what the page displays. Unlike clients that only offer global forwarding, this approach can handle local network traffic, specific domains, and other requests separately. Every policy group referenced by a rule must exist, and the final catch-all rule belongs at the end. GeoIP and GeoSite also depend on databases; if they are unavailable, check the database files or update status first.

Core Management
Stable & Test Builds

The core handles protocol parsing, DNS, and rule processing; the graphical interface passes settings to it. To try a feature or troubleshoot compatibility, check the current core version in Settings. Builds that support switching branches may offer stable and Alpha testing versions; back up your configuration before switching. Keeping the interface and core distinct makes it easier to tell whether an issue comes from the app or the configuration. A testing build is not guaranteed to make every connection faster, and it may change how fields behave. Use the stable branch for everyday connections. Test a newer feature only when you need it, and keep a configuration you can restore.

System Proxy
TUN Traffic Routing

The system proxy works with apps that follow system settings; TUN routes a wider range of traffic through a virtual network interface. For initial setup, enable the system proxy in Settings and confirm that your browser connects before troubleshooting apps that are not being routed. Compared with tools that only expose a proxy port, TUN also coordinates routing and DNS, but introduces permission and network conflict issues to check. Before enabling it, check for other VPNs or virtual network interfaces. If something goes wrong, restore the previous toggle state before investigating. Launch at startup only controls when the app opens; it does not validate a subscription or ensure every app uses the proxy.

Connection Records
Rule Match Logs

Use the Connections page to inspect active requests and the Logs page to check configuration loading and core errors. Together, they help distinguish a request that never reached the core from one that was routed but failed to connect. Visit the target site, filter by domain on the Connections page, and check the matched rule and policy group before reviewing the group’s selected option on the Proxy page. Raise the log level only when needed, then restore your usual setting. Remove subscription URLs, credentials, and private domains before sharing records. A rule match confirms the routing decision, not that the remote site was reachable.

Once you understand these five areas, troubleshoot along the same path: check whether the configuration loaded, whether the request reached the core, whether the expected rule matched, and whether the policy group selected a working node. Avoid changing multiple layers at once; otherwise, even if the connection recovers, it will be hard to tell what fixed it. For more on how protocols and the core work together, see the Core Technical Reference.

QUICK START / FIRST CONNECTION

Import, Select, Verify

Installation is only the first step. The client needs a working subscription or a configuration you maintain yourself to know where and how to route connections. This guide covers the essentials for your first connection; see Getting Started for platform-specific details and troubleshooting.

  1. Import and Activate a Configuration

    Open the Configuration page, paste the subscription URL, and import it. When the profile appears, check that it loaded successfully, then select it as the active configuration. If parsing fails, make sure the URL returns a configuration supported by the client—not a sign-in page, expiry notice, or regular webpage.

    For now, leave DNS, ports, and TUN settings unchanged. Keep the subscription’s original settings and establish a working baseline first. If you already use a custom configuration, save a backup before migrating to avoid overwriting rules and node details at the same time.

  2. Choose a Routing Mode and Node

    Open the Proxy page and select rule mode, then choose a node in the policy group used by the rule. Groups can reference other groups, so follow the group names through to the final node. Changing a group that is not in use usually will not affect the route to your destination.

    Node tests can help narrow down your options, but a successful test does not guarantee that every app can connect. Keep your selection and then enable the system proxy. If another proxy app is running, turn off its traffic routing first to avoid conflicting proxy ports or system settings.

  3. Check the Traffic Route

    Visit a site you want to test and check whether its domain appears on the Connections page. Verify the matched rule and policy group. If there is no record, check the app’s proxy settings first. If there is a record but the site still fails, check the node, DNS, and core logs.

    To check your public IP, use a trusted IP lookup service and account for browser caching, reused connections, and routing rules. A toggle changing color does not prove that traffic is routed correctly. Once the connection is verified, add custom rules one at a time and repeat the same checks after each change.

OPEN SOURCE / PROJECT & CORE

Open-Source Projects and Their Scope

When choosing a client, look beyond its interface: check its source, core capabilities, and update policy. Open-source repositories provide code, licenses, and issue histories you can review—more useful evidence than download counts or ratings with no verifiable source.

Clash Verge and Rev

Clash Verge Rev is a community project continued from the original Clash Verge project. Search results may show the original project, its maintained forks, and older installers. Similar names do not mean they share the same maintenance status. Check the full client name when following a guide, and refer to the current project documentation.

Rev’s desktop interface is built with Tauri, while network traffic is handled by mihomo. The interface manages subscriptions, settings, and status displays; the core applies the configuration. This separation explains why some features require a core update, while interface issues need a fix to the client itself.

mihomo and Configuration Compatibility

mihomo builds on the Clash Meta technical approach, extending the Clash configuration ecosystem with additional protocol, routing, and DNS capabilities. Similar YAML structures do not guarantee that every core supports the same fields. Before copying a configuration, check that your core recognizes its protocol types and parameters.

Clients may also add their own overrides, scripts, or configuration merging methods. When migrating, check core-compatible settings separately from client-specific options. If an error occurs while loading the configuration, use the logs to locate the field rather than assuming that every feature is compatible just because the interface displays the nodes.

Source Code, License, and Issue History

Clash Verge Rev is released under the GPL-3.0 license. The repository’s source code, license, release notes, and issue discussions can help you assess how the project works and is maintained. No unverified star counts, contributor totals, or user numbers are shown here, and community projects are not presented as a single official team.

When reporting an issue, include your OS, client name, core details, steps to reproduce, and redacted logs. Search existing issues first, then describe the smallest reproducible case. A clear error message is usually more useful to maintainers than “all websites are down.”

Updating Clients, Subscriptions, and Databases

Client updates, core updates, subscription updates, and Geo database updates are separate operations. Updating a subscription fetches the latest configuration; it does not upgrade the desktop app. Updating a database changes the data used by some rules, but does not refresh node credentials.

Read the relevant release notes before updating, and keep a copy of your current configuration and local extensions. Afterward, check that the configuration loaded, the policy groups retain their expected selections, and the system proxy matches your previous settings. If something goes wrong, roll back or troubleshoot one update at a time rather than mixing multiple independent changes.

View Clash Verge Rev Source Code

This command only retrieves the project source code; it does not install or launch the client. To install the app, visit the download page.

git clone https://github.com/clash-verge-rev/clash-verge-rev.git

Visit the project repository →

NOTES / HOW-TO ARTICLES

Clash Configuration and Troubleshooting Guides

After your first connection, explore guides based on what you need to do: learn how policy groups select nodes, how to verify routed traffic, or how to troubleshoot timeouts from your local settings to the remote endpoint. Tackle one issue at a time and note what changes before and after.