Clash Verge has two version numbers, and people routinely conflate them:
- The client version (2.5.2, say) — the interface program
- The core version (Mihomo 1.19.29, say) — the thing actually doing the work
They update independently, and when something breaks the one you need to update is often not the one you assumed.
When to update the client
There is no need to chase releases. These are the cases that justify it:
How to update the client
Option A: install over the top (recommended)
Get the new installer from the download page and run it without uninstalling first.
Configuration lives in your user directory, separate from the program, so installing over the top does not lose anything:
| Platform | Config location |
|---|---|
| Windows | %APPDATA%\io.github.clash-verge-rev.clash-verge-rev |
| macOS | ~/Library/Application Support/io.github.clash-verge-rev.clash-verge-rev |
| Linux | ~/.local/share/io.github.clash-verge-rev.clash-verge-rev |
Quit Clash Verge properly from the tray before installing, so files are not locked.
Option B: update from inside the app
Some builds offer Settings → Check for updates and can download and install directly. Convenient, but it often stalls on slow connections since the update source is GitHub.
If it stalls, use option A and take the installer from our download page instead.
How to update the core
Settings → Clash Core shows the current core version with an update button next to it.
Core updates download in-app. If that will not work, replace it by hand:
On Windows the core file is typically at:
%APPDATA%\io.github.clash-verge-rev.clash-verge-rev\sidecar\or under resources\ in the install directory. Searching for verge-mihomo.exe is the fastest way to find it.
When to update the core
Core updates deliver far more visible benefit:
| Symptom | Is it the core? |
|---|---|
Log shows unsupported proxy type | ✅ Yes — the subscription uses a newer protocol |
| Certain nodes never connect while others work | ✅ Very likely |
| New rule syntax has no effect | ✅ Yes |
| Subscription import fails | ❌ Client or network |
| A button does nothing | ❌ Client |
| Everything is slow | ⚠️ Almost always the line, not the core |
When an update breaks something
The client updated and the interface is odd or settings are gone
Try resetting the interface state first: quit completely, delete verge.yaml in the config directory (that file holds interface settings, not subscriptions), and reopen — a fresh one is generated with defaults. Your subscriptions live in profiles/ and are untouched.
If that does not help, uninstall and reinstall, backing up the config directory beforehand.
The core updated and nodes stopped connecting
Roll back. Take the older binary — from our download page, or the upstream releases page for a specific historical version — and follow the manual replacement steps above.
Our download page carries the current stable version; the footer links to each upstream project if you need something older.
TUN stopped working after an update
The service mode version and the core version no longer match. Settings → Service Mode → uninstall, then install again and approve the prompt.
A useful habit: read the log before updating anything
When you are not sure where a problem lives, the Logs page beats guessing:
unsupported proxy type: xxx→ update the coreunmarshal error→ a config syntax problem, or a core that is too olddial tcp ... i/o timeout→ the node itself is unreachable; nothing to do with versions- The interface reports an error but the log is clean → a client problem
A third version people forget: rule sets
If your subscription uses remote rule sets (rule-providers), those files have their own update cycle.
A site that suddenly routes the wrong way may be neither the client nor the core — just a stale domain list in a rule set.
Subscription settings show the rule-set update interval, usually 24 hours by default. You rarely need to intervene.
In short
- Two version numbers, considered separately: interface problems → client, connection problems → core
- Installing over the top does not lose your config, but back it up anyway if it matters
- Leave working versions alone, especially the core
- Read the log first — far faster than trial and error
Related: reading the logs and connections pages and verifying downloads.