CLIENT PACKAGES / CORE BUILDS

Clash Downloads and Platform Installers

Choose a client by operating system and CPU architecture. Desktop and mobile users should generally choose a graphical client; servers, software routers, and command-line environments can select the Mihomo core below.

Free forever Open source Multi-platform clients Chinese configuration docs

PLATFORM SWITCH

Choose a client by platform

The tag syncs to the current URL anchor. Share a link with a platform anchor so visitors can open the installer list for that operating system directly.

Windows clients

For standard desktop use, choose an installer. For portability, use the FlClash ZIP package; the discontinued Clash for Windows is intended only for legacy configuration compatibility and migration.

WIN / X64
Clash Verge Rev

Clash Verge Rev

Recommended

A Mihomo-based desktop client for managing multiple subscriptions, policy groups, and override configurations.

Clash Nyanpasu

Clash Nyanpasu

Provides a graphical desktop interface for Windows users who need subscription management, proxy-group switching, and configuration editing.

Clash for Windows

Discontinued

An archived client for reading configurations from legacy environments and completing migrations. For new installations, choose a client that is still maintained.

Windows system requirements

Check Recommendation Details
System version Windows 10 or later Keep system components and the WebView runtime available and up to date.
Processor architecture x64 The Windows graphical clients on this page provide x64 installers.
Installation permissions Apps installable for the current user Administrator confirmation may be required to enable TUN or register a system service.
Configuration format Subscription URL or YAML Before importing, verify the configuration source and compatibility with the client's core.

MIHOMO CORE

Mihomo Core Downloads

Core binaries are primarily intended for servers, routers, containers, and command-line environments. Prepare the YAML configuration, startup arguments, log directory, and service management yourself. Regular desktop and mobile users should choose a graphical client above.

Operating system Architecture Format Typical environment File
Windows AMD64 ZIP 64-bit Intel / AMD devices Download AMD64
Windows ARM64 ZIP Windows on ARM devices Download ARM64
macOS Intel GZ Intel processor Mac Download Intel
macOS Apple Silicon GZ Apple M-series chip Download Apple Silicon
Linux AMD64 DEB Debian / Ubuntu server Download DEB
Linux AMD64 GZ Generic x86_64 environment Download GZ
Linux ARM64 GZ 64-bit ARM servers and routers Download ARM64
Linux ARMv7 GZ 32-bit ARMv7 devices Download ARMv7
Linux MIPS soft-float GZ Some older routers Download MIPS

Prepare before starting the core

Extract the archive, create a dedicated configuration directory, and save the main configuration as config.yaml. It should include at least a listening port, proxy nodes or providers, policy groups, and rules. For the first launch, run it in the foreground to watch field parsing, port conflicts, and DNS initialization logs.

Run as a service

On Linux servers, use systemd to manage the process and explicitly set the working directory, configuration directory, and run user. Before updating the core, stop the service, replace the binary, run a configuration test, then restart and check the logs to prevent an old process from retaining the port.

INSTALL NOTES

Post-download installation and configuration order

Installing the package deploys the client, but a valid configuration is still required to establish a connection. Follow the sequence below to reduce port conflicts, configuration syntax errors, and inactive system proxy settings.

01

Confirm the package matches your device

First check the file extension and processor architecture. Windows uses EXE or ZIP, macOS uses DMG, Android uses APK, and Linux uses DEB or RPM according to the distribution. Architecture labels such as Apple Silicon, ARM64, and x64 cannot be inferred from the operating system name alone; use the device information.

02

Import a subscription or YAML configuration

Open the client's configuration or subscription page, paste the complete subscription URL, and update it, or import a local YAML file. If the client reports a format error, check indentation, spaces after colons, list nesting, and whether the current core supports the fields used. Do not alter large numbers of rules at once.

03

Choose a policy and enable the network entry point

After the configuration loads successfully, choose the required node or an automatic policy in the policy group. Desktop browsers can usually start with the system proxy; apps that do not follow system proxy settings may need TUN mode. On mobile, create a local VPN connection when prompted.

04

Check logs, ports, and rule matches

When a connection fails, check the client logs before reinstalling. Focus on whether the subscription request succeeded, the configuration loaded, the listening port is available, DNS initialized, and whether the final connection matched DIRECT, a proxy policy, or a blocking rule.

DOWNLOAD FAQ

Common download and installation questions

These questions cover platform selection, architecture checks, first-time configuration, and version display. For more connection and subscription issues, continue troubleshooting on the FAQ page.

Which Clash client should you choose for Windows?

Clash Plus is the preferred choice. For different desktop workflows, compare Clash Verge Rev, FlClash, and Clash Nyanpasu. Clash for Windows is no longer maintained and is provided only for archive compatibility, making it suitable for reading legacy configurations and completing migrations, not for new long-term installations.

How do you choose between Apple Silicon and Intel packages on macOS?

Open the Apple menu in the top-left corner and choose About This Mac or System Information. If the Chip field shows an Apple M-series chip, choose Apple Silicon or ARM64; if the Processor field shows Intel, choose Intel or x64. The wrong architecture may prevent startup or require a translation environment.

What is the difference between ARM64, ARM, and Universal Android packages?

ARM64 is for mainstream 64-bit Android devices; ARM is for older 32-bit ARM devices; Universal covers a wider range of architectures and is useful when the device type cannot yet be confirmed. If the device clearly supports ARM64, download that package first.

Why can't I connect immediately after downloading?

The installer deploys only the client and does not include a ready-to-use proxy configuration. After launching the client, import a valid subscription or YAML file, wait for it to parse, choose a policy group, and enable the system proxy, TUN, or mobile network connection. If import fails, first check the subscription URL and format messages in the logs.

Should Linux desktop users download a client or the Mihomo core?

Personal computers with a graphical desktop usually choose Clash Verge Rev or FlClash, where configuration import, proxy-group switching, and log viewing are more intuitive. Servers, gateway devices, and routers without a desktop are better suited to running the Mihomo core directly, managed by systemd or the device's own service manager.

Does a missing client version affect the download?

No. The page loads the version list at runtime and displays the version slot only when it receives a valid version string. If version data is temporarily unavailable, the slot stays hidden, while the download buttons retain complete fallback URLs so you can continue choosing files by platform and architecture.