Clash Plus
A GUI client for everyday desktop use, with configuration management, policy switching, and system proxy controls.
Identify your operating system and processor architecture first, then choose a GUI client or the Mihomo core. Downloads are organized by maintenance status, file format, and use case. Version details appear only when valid manifest data is available.
Packages for the same operating system are not necessarily interchangeable. Processor architecture, file format, and maintenance status directly affect installation.
Windows and Linux systems commonly use AMD64 or x64. Apple M-series chips use ARM64, while Android devices typically use arm64-v8a. If unsure, check the system information instead of judging by the device's appearance.
GUI clients include interfaces for importing configurations, switching policies, controlling the system proxy, and viewing logs, making them suitable for personal devices. Mihomo is the core executable and requires you to provide the configuration file, startup method, and service management.
Projects marked “Discontinued” are retained for archival use and migration of older configurations. On a new device, choose a maintained client that supports current system permissions and network interfaces.
After switching platforms, review the system requirements before choosing a client from the current panel. Different clients can use the same types of Clash configuration, but interface labels, permission settings, and core update methods may differ.
Most desktop installations use 64-bit Windows. Installers suit the standard setup process, while archives are intended for users who need to manage the program directory manually. If Windows requests network access on first launch, allow the client to access the required networks.
| Check | Recommendation |
|---|---|
| System | 64-bit Windows 10 or Windows 11 |
| Architecture | x64 / AMD64 |
| Permissions | Installation, system proxy, or TUN features may require administrator approval |
A GUI client for everyday desktop use, with configuration management, policy switching, and system proxy controls.
A desktop GUI client for Windows users who need rule mode, TUN, and configuration-file management.
A cross-platform GUI client. On Windows, use the standard installer or download the archive to manage the program directory yourself.
Provides desktop interfaces for configuration, proxy modes, and connection details, suitable for users who prefer a standalone desktop experience.
An archived client for restoring older environments or migrating configurations. For a new installation, compare the currently maintained Windows clients first.
Check the chip type in About This Mac before downloading. Choose ARM64 for Apple M-series models and x64 for Intel-based models. The first time you open an app downloaded from the internet, macOS may ask you to confirm its source and grant network extension permissions.
| Mac model | Package |
|---|---|
| Apple M-series | Apple Silicon / ARM64 |
| Intel Mac | Intel / x64 |
| First launch | Follow the macOS prompts to approve app launch and network permissions |
Provides a macOS interface, configuration management, and proxy controls, with separate downloads for Apple Silicon and Intel.
Designed for macOS desktops that need a Mihomo GUI, rule mode, and system proxy controls.
A cross-platform GUI client for managing configurations, policy groups, and system proxy status on macOS.
An archived macOS client for migrating older configurations. Verify the processor type and keep a copy of the current configuration before installation.
Most recent phones and tablets use arm64-v8a. Older devices may use armeabi-v7a. If you cannot identify the architecture and the client provides a universal package, choose that package. Android will request VPN permission on the first connection; this is required to route device traffic through the client.
| Architecture label | Use case |
|---|---|
| arm64-v8a | Most recent 64-bit Android devices |
| armeabi-v7a | Some older 32-bit ARM devices |
| universal | When broad compatibility is needed and the client offers this package |
An Android GUI client with configuration import, policy selection, connection controls, and system VPN integration.
An Android client in the Clash Meta ecosystem, with packages for ARM64, ARM, and universal architectures.
The Android edition of a cross-platform client, suitable for users who want a similar configuration workflow on desktop and mobile.
An Android proxy client that supports common rules and configuration workflows. After downloading, follow the system prompts to install it and approve VPN access.
Install Clash Plus from the App Store on iOS. After installation, import a configuration and approve the system VPN permission when connecting for the first time. Configuration content, policy group names, and rule behavior depend on the imported file.
| Check | Details |
|---|---|
| Device | iPhone or iPad |
| Install from | App Store |
| First connection | Approve system VPN configuration permission |
A proxy tool for iPhone and iPad. Open its App Store listing to install it.
These downloads are AMD64 packages for desktop GUI clients. Debian, Ubuntu, and derivatives generally use DEB; distributions based on the RPM package system use RPM. If the device has no desktop environment, see the Mihomo core section below.
| Distribution type | Recommended format |
|---|---|
| Debian / Ubuntu family | AMD64 DEB |
| RPM-based distributions | x86_64 RPM |
| No desktop environment | Use the Mihomo core and configure the service manually |
A Linux desktop GUI client available as DEB and RPM packages. Verify the distribution's package system and AMD64 architecture before installation.
A cross-platform Linux GUI client available in three AMD64 formats: DEB, RPM, and AppImage.
The Mihomo core is intended for servers, routers, gateway devices, and manually managed services. For ordinary desktops and mobile devices, use one of the GUI clients above to manage the system proxy, subscriptions, policy groups, and logs.
| System | Processor architecture | Format | Intended use | Download |
|---|---|---|---|---|
| Windows | AMD64 | ZIP | Common 64-bit Windows servers or command-line environments | Download |
| Windows | ARM64 | ZIP | Windows on ARM devices | Download |
| macOS | Intel x64 | GZ | Command-line deployment on an Intel-based Mac | Download |
| macOS | Apple Silicon | GZ | Command-line deployment on an Apple M-series Mac | Download |
| Linux | AMD64 | DEB | 64-bit devices using the Debian package system | Download |
| Linux | AMD64 | GZ | Generic compressed core; configure the working directory manually | Download |
| Linux | ARM64 | GZ | 64-bit ARM servers, development boards, and routing devices | Download |
| Linux | ARMv7 | GZ | Some 32-bit ARMv7 routers and development boards | Download |
| Linux | MIPS softfloat | GZ | Routing devices in soft-float MIPS environments | Download |
The command-line core reads a YAML configuration. Before deployment, define the configuration path, data directory, and log output location so the service can find its configuration and write to the required directories.
For continuous operation, use the operating system's service manager and specify the service user, working directory, and restart policy. After changing the configuration, run the core once in the foreground and observe it before returning control to the service manager.
Installing the client is only the preparation stage. On first launch, complete configuration import, policy selection, system network integration, and connection verification in sequence.
On first launch, a desktop client may request network access, background operation, or administrator privileges; a mobile client will request permission to create a VPN configuration. Grant the permissions required by the features you plan to use. If TUN is not needed yet, verify basic connectivity with the system proxy first.
If macOS blocks the app on first launch, approve it through the security settings provided by the system. If a Linux GUI client does not start after installation, run it once from a terminal and review any dependency or permission messages.
Paste a working subscription URL on the configuration or subscription page, or select a local YAML file. After the import completes, set the new entry as the active configuration. Its presence in the list does not mean it is enabled.
If no nodes or policy groups appear, check for download errors and confirm that the imported content uses a configuration format recognized by Clash or Mihomo. Do not repeatedly toggle the system proxy to hide a problem in the configuration itself.
When getting started, use rule mode so each connection is routed directly or through a proxy according to the configuration rules. Global mode sends more connections through one proxy policy, while direct mode bypasses proxy rules. Neither should be used as an ambiguous long-term troubleshooting switch.
On desktop systems, enable the system proxy first. If you need to capture traffic from more applications, review the client's TUN permissions and DNS settings. Mobile clients route device traffic through the system VPN interface.
After connecting, open a specific test destination while watching the connections or logs page. A useful test confirms the target domain, matched rule, final policy, and selected node—not merely whether a client toggle changed color.
If the destination is unreachable, first determine whether the connection entered the client, then isolate DNS, rule, node, and system proxy issues. Change only one variable at a time and retest so you can identify which change had an effect.
These questions cover package formats, processor architectures, and initial setup. When troubleshooting a connection, check the client installation, configuration validity, and system network interface separately.
For everyday desktop and mobile use, choose a GUI client. It provides interfaces for subscription imports, policy groups, the system proxy, TUN or VPN permissions, and logs, making it easier to complete setup through the UI.
The Mihomo core is better suited to servers, routers, gateway devices, and automated deployments. It requires manual management of the YAML configuration, startup arguments, service permissions, and update process. If you only want to import a subscription and switch nodes on a personal computer, there is no need to start with the command-line core.
For a standard installation, choose the EXE installer. It places program files and creates launch entries using the client's predefined setup process. A ZIP must be extracted manually to a stable directory; moving or deleting that directory can prevent the client from launching later, so this format is better suited to users familiar with manual directory management.
Whichever format you choose, verify the client name and processor architecture first. Do not overwrite one client's directory with configuration files from an older client; import them or follow the documented migration process instead.
Choose Apple Silicon or ARM64 for a Mac with an M-series chip. Choose Intel or x64 for an older model listed as having an Intel processor. You can check the Chip field in About This Mac or System Information.
Choosing the wrong architecture may prevent the app from opening or make it depend on a compatibility translation layer. Using the installer that matches the processor usually avoids startup issues caused by an extra compatibility layer.
arm64-v8a is used by most recent 64-bit Android phones and tablets. armeabi-v7a targets some older 32-bit ARM devices. A universal package supports more architectures but is usually larger.
If the device settings do not show the architecture, look up the processor specifications or choose universal when the client provides it. An installation failure is not always caused by architecture; also check the Android version, available storage, and installation permissions.
First verify that the new configuration is active, not merely downloaded. Then open the policy groups and select a specific node or automatic policy. Finally, check that the system proxy, TUN, or mobile VPN is enabled.
Keep the connection log open and request a specific domain. If no connection appears in the log, focus on the system network interface. If a connection appears but reports resolution or handshake errors, check DNS, node status, and configuration rules. Following this order avoids changing multiple settings at once.
An archived client may still run on some older systems and can help read or migrate old configurations. However, system network interfaces, certificate requirements, core behavior, and subscription formats continue to change, and a discontinued client will not receive ongoing compatibility fixes.
For a new installation, choose a client that is still maintained. Before migrating, record the subscription sources, policy group selections, and custom rules, then keep a restorable copy of the configuration. Remove the old environment only after confirming that the new client connects correctly.