Project history: check older guides against the current implementation
Early Clash projects established a workflow built around YAML configuration, proxy groups, and ordered rules. The community later developed different core forks and graphical clients, and mihomo continued and expanded some of those configuration capabilities. When you find an older article, first check which core and client it covers and whether that client is still maintained. Fields that look identical may differ in support or default behavior. If parsing fails, refer to the current core documentation and the actual error message rather than relying on old screenshots.
Open-source ecosystem: source code, release notes, and issue trackers
Open-source repositories let you browse code, read release notes, and follow issue discussions. Downloads, stars, and comments cannot replace compatibility testing on your own device, so this site does not use those numbers to recommend a client. To check whether a feature is supported, consult the upstream documentation for the field and then look for known limitations in the issue tracker. This site collects download links and Chinese-language setup references; it is not an official organization for any upstream project. Licensing, distribution, and features are determined by each client project's own documentation.
The core handles connections, not the interface buttons
The core handles protocol connections, rule matching, DNS, and other network tasks. The graphical client manages configuration imports, mode switches, system integration, and log display. Two clients built on similar cores may still have different interfaces and override workflows. Likewise, a client starting successfully does not prove that the underlying configuration loaded correctly. When troubleshooting, note which configuration is active, then check the core logs. Before migrating, move subscription sources, local overrides, and system settings separately; do not assume one configuration file contains all your preferences.
Updates: maintain the app and subscriptions separately
App updates fix or improve the client or core itself; subscription updates fetch nodes, proxy groups, or rules. They are not the same thing. Before updating the app, read the release notes and back up local changes. After updating a subscription, check whether your customizations remain. Some clients merge subscription content with local overrides before passing it to the core, so the effective configuration may differ from the original subscription file. If something breaks after an update, compare what changed before deciding whether to roll back the configuration or adjust client settings. Avoid changing the app, subscription, and DNS all at once, or you will lose useful troubleshooting clues.