DocumentationDOC / 01

From first launch
to precise routing.

Follow a practical path through installation and configuration, then explore Enhanced Mode, routing rules, and system integration.

01 / OVERVIEW

What is ClashFX?

ClashFX is an open-source rule-based proxy client for macOS powered by mihomo. It supports HTTP/HTTPS, SOCKS, VMess, VLESS, Trojan, Shadowsocks, Hysteria2, and other protocols. Your configuration determines how each connection is handled.

System supportClashFX supports macOS 10.14 and later, with native Apple Silicon support.

Core capabilities

  • System-wide TCP and UDP capture with Enhanced Mode (TUN)
  • Domain, IP-CIDR, GeoIP, and process-based routing
  • Fake-IP and secure DNS policies
  • gVisor userspace network stack
  • Stable and Lab release channels

02 / INSTALL

Install ClashFX

  1. Download the latest release from the official GitHub repository.
  2. Open the package and move ClashFX to Applications.
  3. Confirm the macOS security prompt on first launch.
SecurityOnly download from the official Clash-FX GitHub repository. Avoid repackaged third-party builds.

03 / CONFIGURATION

Configuration files

The default configuration directory is shown below. The default file is config.yaml, and you can switch between custom files inside ClashFX.

$HOME/.config/clashfx

Import a remote configuration

Open the configuration import screen and paste the subscription URL supplied by your provider. ClashFX is a client and does not provide proxy servers or subscriptions.

04 / ENHANCED MODE

Capture system traffic

Enhanced Mode uses a TUN interface to capture TCP and UDP traffic, including traffic from apps that ignore macOS system proxy settings.

  1. Click the ClashFX menu bar icon.
  2. Find Enhanced Mode and enable it.
  3. Grant administrator access on first use.
ReversibleQuit ClashFX or disable Enhanced Mode to stop system-wide traffic capture.

05 / ROUTING

Send each connection the right way

mihomo rules can match domains, IP ranges, locations, and process names. Rules run from top to bottom, and the first match wins.

Direct routing for mainland China apps

The built-in option uses the community-maintained cn-apps-direct process list, updated every 24 hours. Read the full guide.

06 / RELEASE CHANNELS

Stable and Lab

Stable is the recommended default, with fixes grouped and tested before release. Lab delivers fixes sooner and may include experimental features.

Settings pathClashFX → Settings → Debug → Update Channel

07 / URL SCHEMES

System integration

Import a remote configuration

clashfx://install-config?url=http%3A%2F%2Fexample.com&name=example clash://install-config?url=http%3A%2F%2Fexample.com&name=example

Reload the active configuration

clash://update-config

08 / BUILD

Build from source

You need macOS 10.14+, Xcode 15.0+, Python 3, and Go 1.21+.

brew install golang bash install_dependency.sh open ClashFX.xcworkspace

Select a target in Xcode and press Cmd + R to build and run.