Documentation

From installation to precise routing.

Learn how to install ClashFX, manage configurations, enable Enhanced Mode, and integrate it with macOS workflows.

Overview

What is ClashFX?

ClashFX is an open-source, rule-based proxy client for macOS powered by the mihomo core. It supports HTTP/HTTPS, SOCKS, VMess, VLESS, Trojan, Shadowsocks, Hysteria2, and other modern protocols.

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

Core capabilities

  • System-wide traffic capture through Enhanced Mode (TUN)
  • Domain, IP-CIDR, GeoIP, and process routing
  • Fake-IP mode and configurable DNS policies
  • Stable and Lab update channels
Install

Install ClashFX

  1. Download the latest build from GitHub Releases.
  2. Open the downloaded image and move ClashFX into Applications.
  3. Launch the app and follow the macOS security prompt.
Only download ClashFX from the official Clash-FX GitHub repository.
Configuration

Configuration files

The default configuration directory is:

$HOME/.config/clashfx

The default file is config.yaml. You can keep multiple configurations and switch between them from the Config menu.

Remote configurations

Use Config → Remote Config Management to add a subscription URL. ClashFX is a client and does not provide proxy nodes or subscription services.

Enhanced Mode

System-wide capture

Enhanced Mode creates a TUN interface and captures TCP/UDP traffic from all apps, including software that ignores the macOS system proxy.

  1. Open the ClashFX menu bar item.
  2. Select Enhanced Mode → Enable.
  3. Grant administrator permission on first use.
Turn Enhanced Mode off to stop system-wide capture at any time.
Rule routing

Send each connection the right way

Rules are evaluated from top to bottom. The first match wins. You can route by domain, IP range, geographic database, or process name.

Direct routing for common Chinese apps

The built-in bypass option uses the community-maintained cn-apps-direct list and refreshes it every 24 hours.

Updates

Stable and Lab

Stable is the default channel and batches tested fixes. Lab ships fixes sooner and may include experimental features. Switch under ClashFX → Settings → Debug → Update Channel.

Integration

URL schemes

Import a remote configuration

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

Reload the current configuration

clash://update-config
Developers

Build from source

Requires macOS 10.14+, Xcode 15+, Python 3, and Go 1.21+.

brew install golang bash install_dependency.sh open ClashFX.xcworkspace