IOS · MACOS · MIHOMO CORE

Clash for AppleDownload & Setup Guides

Choose a client for your device, then set up subscription imports, rule-based routing, and system permissions. Finally, verify which proxy endpoint your connection uses.

  • CONFIGYAML configuration
  • ROUTERules & proxy groups
  • GUIDEDocumentation in Chinese

CONFIGURATION INDEX

Rules, proxy groups & network routing

In a Clash configuration, proxies define connection endpoints, proxy groups select among them, and rules match connections. First make sure the active kernel can parse the configuration, then adjust how it handles system traffic. This helps distinguish configuration errors from permission issues. On Apple platforms, check the client's supported features rather than assuming fields are compatible based on similar interface labels.

RULES / FIRST MATCH

Choose an endpoint for each destination

Rules are checked from top to bottom, and the first match selects a proxy group. Put rules for specific domains before catch-all rules. Select rule mode in the client, then check the connection log to see which rule matched. Editing a file without reloading it won't change the running configuration. On Apple platforms, routing also depends on whether the connection reaches the client; apps outside the system proxy won't be matched by these rules. Unlike global mode, rule mode can keep local network traffic and selected sites on a direct connection. If your subscription already includes rules, add your own through the client's override feature to avoid losing them on the next update.

config.yaml · Rule snippet
# This snippet uses built-in policies only
mode: rule
rules:
  - DOMAIN-SUFFIX,example.com,DIRECT
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - MATCH,REJECT

The example uses REJECT as a catch-all to illustrate rule order. In practice, replace it with a defined proxy group.

CLIENT SHELF

Choose a client for your OS and processor

Check your operating system first, then your processor architecture, and finally the client's kernel and configuration format. You can import the same subscription on multiple devices, but system permissions, proxy ports, and traffic-routing settings aren't interchangeable. The download page lists installers by platform, along with archive status and compatibility requirements. Check each client listing for version details.

Windows

Compare Clash Plus, Clash Verge Rev, and FlClash for your Windows version. Browsers usually follow the system proxy; games and store apps may need TUN, loopback access, or firewall setup.

Go to downloads

macOS

Check About This Mac for Apple silicon or Intel, then choose the matching installer. Approve required permissions on first launch. System proxy settings, background services, and network extensions have different roles.

Go to downloads

Android

Choose Clash Plus or Clash Meta for Android to match your configuration and processor architecture. After connecting, check battery and background restrictions: screen-off disconnections may come from Android rather than an expired subscription.

Go to downloads

iOS

Find Clash Plus on the App Store and verify details at clashplus.io. Import a supported subscription, approve the iOS VPN configuration, then connect. Check mobile support before reusing desktop settings.

Go to downloads

Linux

Choose Clash Verge Rev or FlClash in your distribution's package format, or standalone mihomo for servers and routers. Configure services and firewall routing separately; a GUI installation alone does not proxy terminal traffic.

Go to downloads

QUICKSTART / THREE CHECKPOINTS

Import a subscription, connect, and verify

For your first setup, leave the client's network settings at their defaults and check in this order: configuration is valid → proxy endpoint works → app traffic reaches the proxy. Change one thing at a time and check the logs; this makes problems easier to isolate than changing DNS, rules, and TUN together. Before you begin, prepare a supported configuration file or subscription link. Downloading a client doesn't provide a proxy service.

  1. 01 / IMPORT

    Import and select a configuration

    Open the configuration or subscription page, add a remote configuration, and paste the full URL. Wait for the client to confirm a successful update, then select it as the active configuration. Next, open the Proxies page and check that proxy groups and candidate nodes appear. If the import fails, check whether the link has expired, whether it returns a supported configuration format, and whether your network can reach it. A webpage URL or login page isn't a subscription link.

  2. 02 / CONNECT

    Choose rule mode and a proxy endpoint

    Choose an available node in a proxy group, then enable the system proxy or the client's VPN connection. The first time you enable a service on macOS or add a VPN configuration on iOS, approve the system prompt and return to the client to check its connection status. If another VPN or proxy tool is running, disable one first to avoid route or port conflicts. Rule mode lets you keep selected traffic on a direct connection; use global mode only for a brief comparison test.

  3. 03 / VERIFY

    Check rule matches with a new connection

    Open a site you can access and check the client's connection log for the destination domain, matching rule, and actual proxy endpoint. If the connection appears but the request fails, check the node and DNS resolution. If there's no connection in the log, first check whether the app uses the system proxy or enters the tunnel. Reopen the page or start a new connection to test your changes; existing long-lived connections may keep using the previous endpoint and don't confirm that new settings are working.

OPEN SOURCE / PROJECT BOUNDARIES

The Clash ecosystem, mihomo, and client interfaces

The original project and community-maintained successors

After the original Clash project was discontinued, community projects continued to use its configuration formats and established workflows. To decide whether a client is still suitable, check its maintenance status, the kernel it uses, and current OS compatibility notes—not just whether its name includes Clash. Archived clients can help you understand older configurations, but don't expect them to support new protocols or changes to system networking automatically.

What the mihomo kernel does

mihomo evolved from the Clash Meta fork and handles protocol support, rule matching, proxy groups, and networking. GUI clients build on the kernel to provide configuration management, system proxy settings, permission prompts, and logs. A kernel's support for a field doesn't mean every GUI client exposes that option, and a client update doesn't necessarily replace its bundled kernel. When reading configuration docs, keep these two layers separate.

What Apple platforms support

macOS desktop clients can route different types of traffic through the system proxy, a background service, or a network extension. iOS is subject to restrictions on apps and system tunnels. Implementations vary by product: support for Clash configurations doesn't automatically mean a client uses the mihomo kernel. Before choosing a client, check its subscription format, required protocols, and routing features, then confirm the system permission steps for your device. This helps avoid situations where a configuration imports successfully but the features you need aren't available.

Use release notes to guide updates

Before updating, save a restorable copy of your configuration and note any custom rules, ports, and network settings. Read the client and kernel release notes for changes to deprecated fields, default behavior, and permission flows. After updating, retest rule matches and proxy endpoints with the same destinations. Source code, release history, and issue discussions can help confirm how something works, but they can't replace testing on your network or guarantee that any third-party subscription will work.

terminal · Clone the mihomo source
git clone https://github.com/MetaCubeX/mihomo.git

This command downloads the source code only; you'll need to set up a development environment separately to build and run it.

READING / RECENT NOTES

Client guides and platform troubleshooting

Once your basic connection works, find a guide for the issue you're facing. Interface guides help you locate settings, ecosystem explainers clarify which component provides a feature, and platform troubleshooting covers OS-specific network restrictions. Note your current settings before making changes, and check each guide's requirements rather than applying instructions for another platform to your device.

Download clients