Choose your operating system, then select the CPU architecture. Mac users can start with the Apple Silicon or Intel build of Clash Plus; switch platforms below for other devices. After installation, import a subscription and configure your traffic entry point.
These desktop packages are for x64 systems. Check your system type under Settings → System → About, then choose an installer. On Windows on ARM, confirm x64 app compatibility first; these downloads are not native ARM64 builds.
A good choice for a first installation. Once installed, add a subscription or import a local file on the configuration page, enable it and confirm that proxy groups are available. Then turn on the system proxy. If you need TUN mode, follow the client prompts to configure its service or permissions; there is no need to enable every network option on first launch.
For desktop users who need to manage subscriptions, proxy groups and configuration overrides. After installing, load a working configuration and check the outbound mode and mixed port. When migrating existing settings, keep the original subscription and override files; do not overwrite the new installation's data directory with another client's files.
Choose the installer or archive to suit your setup. Extract the archive fully to its own folder before running the app; do not launch it from the archive preview. Before switching clients, turn off the current system proxy and TUN routing to reduce port conflicts and routing issues.
Includes a graphical interface for configuration and runtime status. Switching clients does not guarantee that existing rules and overrides will carry over. Start by importing only your subscription and confirming a basic connection, then restore local rules one at a time. If the connection fails, check configuration parsing errors and core logs first.
Kept for migrating older setups, comparing legacy configurations and reference. This client is no longer maintained and may not recognize newer protocols or configuration fields. For new devices, choose a maintained client. If you need the legacy app, back up your configuration and check which core and subscription formats it supports.
Windows Installation Requirements
Check
Requirement / guidance
Where to check
System and architecture
64-bit Windows. Check the installer for the minimum OS version required by each client.
Settings → System → About
Runtime
Install any required runtime components as prompted. Check compatibility before using an older Windows version.
Installer prompts; app startup logs
Network permissions
System proxy and TUN service permissions are separate; grant access only when needed.
Client settings; Windows Security
If browsers connect but Store apps do not, first check whether those apps follow system proxy settings, then investigate UWP loopback restrictions. Reinstalling repeatedly will not fix a network routing issue. See the Windows installation and setup guide for detailed steps.
macOS Clients
Open About This Mac from the Apple menu to check your chip. Apple M-series chips use Apple Silicon builds; Intel processors use x64. Clash Plus offers separate packages for both. For other clients, check the architecture listed on each card rather than relying on your device name.
For a first Mac installation, choose the DMG that matches your chip. Open the disk image, copy the app to Applications, then launch it rather than running it from the mounted image long term. After importing a configuration, test the system proxy first. Grant any additional permissions required for TUN mode when prompted.
Both architecture links currently point to the same x64 package; neither is a native ARM build. Apple Silicon users should check Rosetta and app compatibility. If you need a native ARM package, choose Clash Plus above. Import your subscription and any required overrides after installation.
The current download is an AMD64 build, and the Apple Silicon link points to the same file. Check translation support before installing. When migrating, keep your original subscription URL and re-import the configuration. Check proxy group names, outbound mode and DNS behavior; client runtime state does not transfer with the files.
For users familiar with ClashX Meta or comparing older setups. Both links currently provide an x86_64 package; Apple Silicon users should check compatibility before running it. This client is no longer maintained, so do not assume it will support future macOS releases or new protocols.
macOS Installation Requirements
Check
Requirement / guidance
Where to check
Chip architecture
Use native ARM64 on Apple Silicon and x64 on Intel.
Apple menu → About This Mac
System compatibility
Minimum macOS versions vary by client; check the package and system prompts. Confirm compatibility before running an x64 app on Apple Silicon.
macOS version; app launch prompts
Installation and permissions
Move the app to Applications. Grant network extension or helper service permissions only when needed.
System Settings → Privacy & Security
If macOS says the app cannot be opened, determine whether the cause is an architecture mismatch, an unsupported OS version or a security block. Do not run Terminal commands from unknown sources to bypass restrictions. For step-by-step instructions, see the macOS installation and setup guide.
Android Clients
Most recent phones use ARM64, but a 64-bit processor does not guarantee a 64-bit system environment. Check the app ABI supported by your device before installing. If installation fails to parse, check the architecture and OS compatibility first; only then consider a universal package. Avoid trying multiple builds from unknown sources.
For Android devices that support ARM64 apps. After installation and configuration import, the first connection usually prompts for VPN permission. This allows the app to route traffic on your device; it does not mean your subscription is ready to use. Check the active configuration, proxy groups and connection status, then test your usual apps.
Choose the package for your device ABI, or try the universal build if you are unsure. After granting VPN permission, check background operation and battery optimization settings. If the connection drops when you switch apps, check whether the system is restricting background services, then check for subscription updates or an unavailable route.
Manage subscriptions and select an outbound route from your phone. Test the connection with the default configuration first, then adjust per-app routing as needed. Android usually allows only one VPN service at a time, so quit other traffic-routing tools before starting to avoid mistaking a service conflict for a node issue.
For devices using a configuration format supported by Surfboard. Its configuration syntax differs from Clash YAML, so confirm that your subscription provider offers a compatible format before downloading. Do not simply change the file extension and import it. If you already have a Clash configuration, check how to migrate it before switching clients.
Android Installation Requirements
Check
Requirement / guidance
Where to check
App architecture
Choose ARM64-v8a or armeabi-v7a based on system support. Use a universal package only when the client offers one.
Device information; system ABI
OS version
Meet the app's minimum Android version. The installer will flag compatibility issues.
Settings → About phone
Permissions
Grant installation permission only when needed. Allow VPN access when connecting, and adjust background restrictions in device settings.
App permissions; battery settings; VPN settings
iOS Clients
Install Clash Plus from the App Store; check the store listing for current compatibility details. Prepare a working configuration, import and enable it in the app, then allow VPN configuration when prompted by iOS.
The App Store listing includes device compatibility, app details and release notes. After installation, confirm that the client supports the protocols and rules in your subscription. A connected status only means the local service is running; test actual access in your apps and check your proxy selection.
Check the Clash Plus App Store listing for the minimum iOS version and supported devices.
App Store → Compatibility
Configuration source
Prepare a subscription or configuration supported by the client. Installing the app does not provide proxy routes.
In-app configuration page
Connection permission
Allow the app to add a VPN configuration when needed, and check which network service is active.
Settings → VPN
Linux GUI Clients
These packages are for AMD64 / x86_64 desktops. Choose DEB for Debian, Ubuntu and similar systems; choose RPM for distributions that use RPM packages. For headless servers and other processor architectures, see the Mihomo Core tab.
Install with your distribution's package manager so dependencies are handled automatically. After installation, launch the app in your desktop session and import a configuration. If command-line tools do not use the proxy, check their environment variables or app settings; the desktop system proxy does not necessarily affect every CLI program.
For AMD64 desktop distributions that support DEB packages. If dependencies are missing, check the package manager's report; do not copy system libraries from another distribution. Before enabling TUN, check device permissions and how routes and DNS are managed. On a remote machine, make sure you have a way to restore access.
Linux Installation Requirements
Check
Requirement / guidance
How to check
Processor
The GUI packages above are for AMD64 / x86_64 and do not support native ARM desktops.
uname -m
Distribution
The package format, system libraries and desktop environment must meet the client's requirements.
cat /etc/os-release
Permissions
TUN requires the appropriate network permissions. Run standalone services under a controlled account with an explicit configuration directory.
Client logs; system service logs
Download Mihomo Core
For users running their own services on servers or routers. Core packages do not include a desktop configuration interface; you must provide the configuration, working directory and startup method yourself. Most desktop users should choose one of the GUI clients above and do not need to download the core for their first connection.
The binary must match your operating system, instruction set and ABI.
After extracting, check the file type and that it can run before deploying the service.
Configuration and directories
Prepare a readable configuration file and any required rule sets or data files.
Set a clear working directory, test the configuration, then configure automatic startup.
Network and permissions
The listen port must be available; TUN requires the necessary network capabilities and system support.
Grant only the permissions required, and restrict listen addresses and access to the management interface.
ZIP and GZ are archive formats, not desktop installation wizards. When running the core manually, you are responsible for logs and restoring system proxy settings when it exits. Before changing the default route on a server, keep a separate management connection available to avoid losing remote access if the configuration is wrong.
Post-install configuration checks
01 / Configuration
Import and enable a subscription
Add a subscription URL from a trusted source or a local YAML file. Wait for it to parse, then enable it. Subscriptions may contain access credentials, so hide the full URL before sharing screenshots or logs. If parsing fails, check the configuration format and core compatibility before turning on the system proxy.
02 / Outbound
Check the mode and proxy groups
Start with rule mode and check the actual outbound selection for each proxy group on the proxy page. Global mode changes rule-based routing and is not a universal fix. Latency shown in the dashboard does not equal download speed; test using the target app and check the logs.
03 / Traffic entry
Test system proxy or TUN
Start by testing one traffic entry point at a time. System proxy works for apps that follow proxy settings; TUN involves a virtual network interface, routes and DNS. If changing modes causes problems, restore the previous setting and check the logs. Avoid running multiple clients that take control of network traffic at once.
Should I download the Apple Silicon or Intel build for my Mac?
Open About This Mac from the Apple menu. If Chip shows an Apple M-series chip, choose Apple Silicon; if Processor shows Intel, choose Intel. Clash Plus offers separate builds for both. Some other clients currently provide the same x64 package for both options; Apple Silicon users should first check Rosetta support and app compatibility.
Why are no proxies available after installing the client?
The client installer does not include a ready-to-use subscription configuration. Get a subscription URL from a trusted source or a local configuration file, then import and enable it on the configuration page. Check your proxy groups and outbound selection on the proxy page. Enable the system proxy or TUN mode only after the configuration loads successfully.
What should I do if a security warning appears during installation?
Verify the download source, package format and device architecture, then read the specific reason shown by the system. On macOS, check the blocking details under Privacy & Security; on Windows, review Windows Security protection history. On Android, grant temporary permission only to the app you are using to install the package. Do not leave system security protections disabled just to install a client.
What settings should I keep before upgrading a client?
Keep your subscription source, local configuration files, rule overrides and any required port settings. When switching clients, re-import the original configuration instead of copying the entire app data directory. After upgrading, check the active configuration, outbound mode and system proxy status. If anything is incompatible, review the logs before deciding whether to restore the previous configuration.
Do everyday desktop users need to download Mihomo Core separately?
Usually not. GUI clients typically manage the core and configuration for you. The standalone Mihomo package is intended for servers, routers and command-line setups where you manage the service yourself, including configuration paths, listen addresses, permissions and startup. It is a core binary, not a desktop installer with subscription management.
Should I enable system proxy or TUN mode first?
Import and enable a configuration first, then test whether apps that follow system proxy settings can connect. Enable TUN mode and grant the required permissions only if you need to route traffic from apps that ignore those settings. When troubleshooting, change one setting at a time and check the logs, DNS and routes. Avoid running multiple clients that take control of network traffic at once.