Project origins and maintenance status
Clash, Clash Meta, and mihomo: what's the difference?
Separate the client interface, proxy core, and subscription source to find out what needs updating.
This site organizes download links and guides in English; it does not develop every client or provide proxy nodes. Follow the upstream project and your device's requirements when using downloads and troubleshooting instructions. If a config field is unsupported, a service won't start, or a subscription returns an error, identify which component is responsible first. That will point you toward the right fix.
Project history: similar names, different maintenance paths
The original Clash established a way of working centered on YAML configs, proxy groups, and rule-based routing. Multiple derivative cores and graphical clients followed. mihomo continues the Clash Meta development line, so Clash Meta in older guides and mihomo in current documentation often refer to the same project lineage. Always check the documentation for the core you're actually using to confirm specific fields.
Some older clients are no longer maintained; their download links are marked as archived. An archived app may still launch, but that doesn't mean it supports new protocols or current operating systems. For new installations, prefer actively maintained clients. When migrating an older device, back up your config and check protocol and rule compatibility rather than choosing based on a familiar name alone.
Open-source ecosystem: verify behavior against code and docs
You can find mihomo's source code, issue discussions, and release history in its public repository. The project is licensed under GPL-3.0. Public source code can help explain config and runtime behavior, but graphical clients may have different menus, permission requirements, and release schedules. Check each client's own license and documentation in its project.
If you suspect a bug, save a minimal config that reproduces it, your system details, and the relevant logs. Remove subscription URLs, credentials, and other private data before sharing. Clear reproduction steps are more useful than simply saying “connection failed,” and help distinguish a server-side problem from a client bug.
How the core works: the interface handles controls; the core processes the config
Graphical clients such as Clash Verge Rev and FlClash offer subscription management, controls, and log windows. The core parses configs, matches rules, and establishes outbound connections. Clients may merge or override config settings, so after editing a local file, verify the final effective config rather than checking just one line in the original subscription.
If the interface says Connected but requests still fail, check whether the target request appears in the connection log, which rule it matched, and which policy was used. If the request never reached the core, check the system proxy or TUN routes. If it did, investigate DNS and outbound errors. This narrows troubleshooting to a specific part of the connection path.
Updates: clients and subscriptions are maintained separately
Client updates usually affect the interface, system integration, and core capabilities. Subscription updates change the proxies, policies, or rule sources in a config. These are separate operations: a successful subscription refresh doesn't update the client, and installing a new client won't restore an expired subscription. Read the release notes before updating and keep a working config as a backup.
After upgrading, test basic web access, LAN access, and your usual apps before restoring complex overrides. If something breaks, record what changed and how behavior differs; revert to a known working setup if needed. Keep brief notes on long-term changes, especially DNS, TUN, and custom rules, so you can restore your setup after future updates.