The core and the client are two things
Clash Verge is the interface. Mihomo is the core that actually moves traffic, and the two update on separate schedules. When you hit an unsupported protocol or a config field that fails to parse, the cause is almost always an old core. Updating the client alone will not fix it.
The Clash core page shows the version in use and lets you switch between the stable build and the alpha branch. Alpha gets new protocols and features first and is correspondingly less predictable.
Updating and switching
- 1
Update the core
Press check for update on the core page. When the download finishes the core restarts automatically. Existing connections drop for a moment during the restart, which is expected and recovers in seconds.
- 2
Switch branches
Click the other core. The switch restarts the core and reloads the current profile; manually selected nodes are normally preserved.
- 3
When the download stalls
Core updates are fetched from GitHub, so a blocked connection hangs the process. Switch to a working node or briefly enable TUN, then retry.
Rolling back cleanly
If a config starts failing after you move to alpha, read the first screen of the Logs page. Parse failures name the offending field explicitly. Switching back to the stable core usually restores everything, and the config file itself needs no changes.
- Write down the version that worked before you switch
- Update the core and the client separately, one change at a time
- Only stay on alpha if your provider config genuinely needs a new protocol
Common questions
TUN stopped working after a core update.
The service and the core are paired. Reinstall Service Mode and try the TUN toggle again; that resolves it in most cases.
Can I drop in a core binary myself?
You can, but it is not recommended. Manually placed files are overwritten by client upgrades, and a mismatched pair produces errors that are hard to diagnose. The built-in updater is less trouble.