mrkeyoor.com_
Tue 08 Sept 16:08 UTC
Self-Hostedevaluationupdated 08 Sept 2026

FlClash review

FlClash is a Chinese-first open-source proxy client based on Clash Meta, with an English README alongside Simplified Chinese documentation. It runs on Android, Windows, macOS, and Linux, importing subscription links and applying routing rules through a Material You interface. WebDAV can sync its data between devices.

Verdict

Our FlClash install stopped after 17 seconds because core/Clash.Meta/go.mod was absent, so a source trial must begin with the recursive submodule step before any Go work. The release packages are the sensible route for people who already have a proxy subscription and want the same client on Android and desktop. Check the open report for your exact OS first, especially Ubuntu 20.04, Windows 11, or KDE TUN mode, and keep a rollback copy before enabling WebDAV sync.

We ran it

Lab card: what happened when we ran FlClashScreenshot of FlClash (github.com/chen08209/FlClash)
Install✗ · 17s
Build
Repo769 files~11,497 lines of source · 55.9 MB · 1 CI workflows · tests dir

Answers from our run

Does FlClash build from source?

The dependency install failed, and the project has no separate build step. We cloned commit 62addf7 into a clean Debian container with 3 CPUs and no project-specific setup.

Who should not use FlClash?

iPhone and iPad users: the README lists Android, Windows, macOS, and Linux, while iOS support remains open request 1132.

What are the alternatives to FlClash?

Clash Verge Rev, ClashMetaForAndroid, Hiddify App. Our FlClash install stopped after 17 seconds because `core/Clash.

Setup2/5Install stopped in 17 seconds on the missing Clash.Meta submodule
Docs3/5English quick start covers platforms but leaves build details thin
Community5/551,380 stars, current issue activity, and an August 2026 release
Maturity3/5v0.8.96 is active, with several current OS-specific regressions

Who it’s for

People who already have a compatible proxy subscription and want one interface across desktop and Android.
Clash Meta users who prefer a graphical client with profiles, themes, and traffic controls.
Multi-device users willing to configure WebDAV for shared data.
Developers prepared to fetch Git submodules and install Flutter, Go, and platform-specific build tools.

Who it’s NOT for

iPhone and iPad users: the README lists Android, Windows, macOS, and Linux, while iOS support remains open request 1132.
People looking for a proxy provider or included server list: FlClash is a client that consumes subscription links.
Ubuntu 20.04 users relying on the current Linux binary: issue 2144 reports that it needs GLIBC 2.34 while that system has 2.31.
Windows 11 users unwilling to install or repair runtime prerequisites: issue 2370 reports v0.8.96 failing at launch because three Microsoft Visual C++ runtime DLLs were missing.
KDE users who need TUN mode with no network configuration work: issue 1966 documents NetworkManager taking over the interface on Fedora 44 KDE 6.6.4.
Source builders using a checkout without recursive submodules: our install stopped because core/Clash.Meta/go.mod did not exist.

Setup reality

Our sandbox install failed with exit 1 after 17 seconds. The Go module in core/ replaces mihomo with ./Clash.Meta, but that submodule was absent, so Go could not open core/Clash.Meta/go.mod. The run stopped there; it records no build or test step.

The README's first build instruction is git submodule update --init --recursive, followed by Flutter, Go, and OS tooling. The submodule URL uses GitHub SSH. Linux builds add two indicator and key-binding development libraries; Android needs its SDK and NDK, while Windows needs GCC and Inno Setup.

Using a release is much shorter, with F-Droid, Homebrew, and downloadable packages. FlClash still needs a subscription or profile to do useful routing, and WebDAV sync needs a server plus its credentials. Platform integration varies: Android exposes start, stop, and toggle actions, while desktop TUN and system-tray behavior depend on the host.

FlClash v0.8.96 covers Android and three desktop systems

FlClash v0.8.96 is a graphical client for Clash Meta on Android, Windows, macOS, and Linux. It imports subscription links, switches proxy policies, supports dark mode and multiple themes, and can sync data through WebDAV. The interface adapts between desktop and mobile rather than forcing a desktop window onto a phone. Android also exposes start, stop, and toggle actions for system automation. Users still need their own compatible subscription or configuration; the repository supplies the client, not a proxy service.

The project is Chinese-first in practice. Its default README is in English and links a Simplified Chinese version, while most recent issue titles and discussions are Chinese. That is workable for installation because the README's commands are short. Troubleshooting an OS-specific failure may require translation. Our reviewed checkout contained 769 files and about 11,497 source lines, with 55.9 MB on disk before dependency setup. Dart drives the application, while the routing core lives in a Go subproject.

What happened when we ran it

Our sandbox entered the Go project under core/ and failed installation after 17 seconds with exit code 1. Its go.mod replaces github.com/metacubex/mihomo with the local directory ./Clash.Meta. Go then tried to read /work/repo/core/Clash.Meta/go.mod and reported that the file did not exist. That is the entire recorded failure. The log does not show a compiler error, network error, or incompatible Go version.

Because installation stopped at the missing directory, the lab run did not reach a build or a test command. It would be wrong to call either one failed or passed. The checkout at commit 62addf7 had 1 CI workflow file, no Dockerfile, and a tests directory. Those repository signals do not change the measured outcome: the first dependency step could not resolve the local Clash Meta replacement in our fresh unprivileged Debian container with 3 CPUs and 8 GB of RAM.

Recursive submodules are required before Go can resolve

The README puts git submodule update --init --recursive at step 1 of the source build. That command matters because core/Clash.Meta is a Git submodule, and the Go module refers to it through a local replacement. The .gitmodules entry uses an SSH URL at GitHub. Builders need working SSH access for that remote or must adjust the submodule transport. A normal archive download or a clone without submodules leaves the exact hole our 17-second run found.

After submodules, the toolchain splits by platform. Every build needs Flutter and Go. Android adds the Android SDK, Android NDK, and an ANDROID_NDK environment value. Windows requires a Windows machine, GCC, and Inno Setup. Linux requires a Linux machine plus libayatana-appindicator3-dev and libkeybinder-3.0-dev; the setup script can install those packages. macOS builds must run on macOS. This is one codebase with 4 native packaging jobs, not a single portable compile command.

v0.8.96 binaries have host-specific failures

Open issue 2144 describes the current Linux package failing on Ubuntu 20.04.6 because the binary needs GLIBC 2.34 and a plugin needs 2.33, while that release provides 2.31. The request asks for a compatible build. That is a specific boundary for older long-term-support machines, and replacing system glibc by hand would be a bad workaround. Ubuntu 20.04 users should test an older compatible FlClash release or choose another client built against an older baseline.

Windows has its own v0.8.96 report. Issue 2370 says the application would not open on Windows 11 25H2 because MSVCP140.dll, VCRUNTIME140.dll, and VCRUNTIME140_1.dll were missing. Another report, issue 2391, covers a white or invisible window while the VPN can remain active; it traces one case to saved window coordinates or damaged nested JSON preferences. These are user reports rather than universal failures, but they justify testing startup, tray recovery, and shutdown before depending on the tunnel.

KDE 6 TUN mode may need a NetworkManager exception

Issue 1966 documents TUN mode failing on Fedora 44 with KDE 6.6.4 because NetworkManager creates and controls a profile for the FlClash interface. The report includes a workaround that marks the interface unmanaged, then reloads NetworkManager. That changes host network configuration and deserves deliberate review. A proxy client can appear connected while routing is wrong, so validation should include DNS, the public exit address, local-network access, and behavior after suspend rather than relying only on the app's status label.

WebDAV synchronization adds another failure domain. FlClash can move its data between devices, which is useful when 4 supported operating systems share profiles. It also means a restore can overwrite local state, a concern visible in current issue 2389 about script association and enablement settings. Use a dedicated WebDAV location, restrict its account, and keep an export outside the sync folder before the first restore. A routing profile and its scripts should receive the same care as other executable network configuration.

The queue has 432 issues and 88 pull requests

GitHub showed 51,380 stars, 432 open issues, and 88 open pull requests in the same fetch window. The repository's last-push field was September 7, 2026, and issue activity continued on September 8. Release v0.8.96 was published on August 17 with fixes for a Windows delay test plus package-icon and connection-polling work. Those dates show active maintenance and an active support burden. The large queue makes an issue search by OS, version, desktop environment, and routing mode part of setup.

Clash Verge Rev is the cleaner comparison for a desktop-only Clash client. ClashMetaForAndroid narrows the decision to Android, while Hiddify App changes the engine choice to sing-box and supports a different protocol set. FlClash is worth trying when cross-device familiarity and WebDAV sync matter. Start with a release package, verify its checksum, import a disposable profile, and prove traffic behavior. Source contributors should clone recursively before judging anything beyond the missing submodule our 17-second run exposed.

Alternatives

ProjectWhat it isPick it when
Clash Verge Rev gh↗A Tauri-based Clash desktop client for Windows, macOS, and Linux.pick this instead when the target is desktop only and a Tauri interface suits your operating systems.
ClashMetaForAndroidAn Android-focused rule-based tunnel from the MetaCubeX organization.pick this instead when Android is the only target and desktop synchronization is unnecessary.
Hiddify AppA multi-platform proxy client based on sing-box with several protocol families.pick this instead when sing-box support and its protocol set fit your provider better than Clash Meta.

What people are saying

  1. [velocity-scout] chen08209/FlClash

Sources

  1. FlClash README
  2. FlClash v0.8.96 release
  3. FlClash submodule configuration
  4. Issue 2144: Ubuntu 20.04 glibc compatibility
  5. Issue 2370: missing Windows runtime DLLs
  6. Issue 1966: KDE NetworkManager TUN conflict
  7. Issue 1132: iOS support request

More self-hosted reviews

zulip · mediamtx · toolhive · HAMi · filebrowser · remux · the whole board →