On this page
Before trying a pre-release, make sure you can preserve your original configuration and leave the test safely. Portable-directory migration and networking changes affect recovery, and Windows services have separate security requirements. A higher version number is not enough reason to overwrite your everyday setup, and an old service is not a default backup option.
Release Status of v2.5.4-rc and Windows Service Risks
This article covers the prerelease version from 9/17. Official advisory GHSA-99qg-xv7m-jf4v lists Windows service versions <= 2.5.4 as affected and identifies v2.5.4+autobuild.0908.bbab52d as the fixed build. Windows users must not use the v2.5.2 service as a safe rollback option.
Clash Verge Rev v2.5.4-rc was released at 19:36 on 9/17/2026 (Asia/Shanghai), and the GitHub Release is explicitly marked Pre-release. At that time, the project's Latest stable version was still v2.5.2; seeing the v2.5.4 version number does not mean it has replaced the stable release.
When reviewing this RC and rolling AutoBuild, record changes to the system proxy, service mode, subscription editing, node selection, port avoidance, and TUN, as well as the removal of portable mode and migration to the system app-data directory. Test only with a full backup, the ability to verify desktop networking, and immediate recovery available; do not overwrite your only everyday setup.
If you are troubleshooting an incorrect system-proxy state, a service-mode timeout, Windows system/mixed TUN not taking over traffic, or a portable-mode migration, check the current official Release and security advisory before testing with a backup.
As of 9/17/2026, v2.5.4-rc and AutoBuild were prereleases and v2.5.2 was then the Latest stable release. That was a historical release state, not today's installation advice. A stable v2.5.5 was published on 9/22; Windows service risk must still be checked against the GHSA's patched build.
Which changes to system proxy, TUN, and portable mode are worth testing?
The release notes list many fixes, but before upgrading, choose only one target you can reproduce. If the interface shows the wrong state after a system proxy toggle fails, record the toggle state, the actual system proxy value, and one real request. If a service-mode operation times out, record the first error and whether later operations remain abnormal.
The recent issue #7915 has a narrow scope: a specific v2.5.4 AutoBuild in Windows service mode carried no traffic with the system or mixed TUN stack, while gVisor worked and rolling back to v2.5.2 restored traffic.
Service IPC later added firewall rules for the core temporarily stored in %ProgramData%, and the v2.5.4-rc release notes include this fix. The Cargo.toml at that tag uses the Service IPC dependency v2.7.1. This is a backend component dependency version, not a client version to install.
This does not mean every case of TUN carrying no traffic is caused by the firewall, nor should users disable Windows Firewall manually. Treat it as a reason to test the RC only when the version, Windows service mode, stack-specific behavior, and no-traffic symptom all match.
For portable-mode users, the first goal is not network validation but confirming where the configuration is read from. v2.5.4 explicitly removes portable mode and standardizes on the system app data directory. If the old installation stored data beside the program, in a Scoop directory, or in a custom location, find that old directory and save it separately first.
Scoop is a community-maintained distribution listed in the official documentation, which notes that it can support a changed configuration directory or portable use. The project also explicitly does not support issues caused by downstream channels. That is not the same assurance as v2.5.4 removing portable mode inside the app; Scoop users must also verify Scoop's own persistence directory and upgrade behavior.
The older version works; you only want to try the newer release
First check whether the Windows service is installed. Disable an affected service, then verify the official security advisory and an update you can authenticate.
You use a portable build or custom data directory
Record the old data location and launch method, then back up both the old directory and the system data directory.
The system proxy toggle disagrees with the actual system state
Save a pre-upgrade baseline, then validate only the system proxy after upgrading without changing TUN and ports at the same time.
The system/mixed stack for Windows TUN does not capture traffic
Record the stack, service state, and test target. Test only after the complete build and actual service have evidence of the GHSA fix; if unverified, use only the system proxy.
The app, core, or all subscriptions fail to start
Restore the existing stable environment first instead of attributing every startup failure to this release.
Release Channels and Recommended Actions
| Version Shown | Project Status | Recommendation |
|---|---|---|
| v2.5.2 | Latest as of 9/17; the Windows service is now in the GHSA's affected range | Disable the old service on Windows; do not use it for a security rollback |
| v2.5.4-rc / AutoBuild | Pre-release | Test only after backing up and confirming you can roll back |
| Only an in-app update prompt is visible | Channel not yet confirmed | Open the official Release first and verify the tag, date, and asset filename |
| Third-party package or extracted build | Not covered by the official release assurances | Do not use it to judge the v2.5.4 migration result |
Back up the system data directory and old portable directory
Exit Clash Verge Rev completely, confirm that the tray process and service operations have ended, and then copy the app data directory.
The verge.yaml, config.yaml, profiles.yaml, and profiles/ entries in the directory are essential for restoring settings, subscriptions, and the Profile. logs/, service-logs/, cache.db, and Geo data can also help with comparison, but do not save only the logs and omit the configuration.
Store the backup outside the app's working directory and label it with the system, architecture, original version, and time. verge.yaml may store a WebDAV address, username, and password in plain text, while the Profile may contain a subscription token, node password, and UUID. Do not upload the raw backup to a public cloud drive or attach it directly to an Issue.
Official Data Directories
| Platforms | App Data Directory | What to Back Up |
|---|---|---|
| Windows | %APPDATA%\io.github.clash-verge-rev.clash-verge-rev | verge.yaml、profiles.yaml、profiles/、config.yaml |
| macOS | ~/Library/Application Support/io.github.clash-verge-rev.clash-verge-rev | The complete directory and current app version |
| Linux | $XDG_DATA_HOME/io.github.clash-verge-rev.clash-verge-rev | Usually under ~/.local/share; also record the actual XDG_DATA_HOME |
Backup Completion Checklist
- Clash Verge Rev is fully closed and is not writing configuration while the copy is made
- The entire system app data directory has been copied to a separate location
- The old portable or custom data directory has also been saved separately
- The original version, system architecture, installation source, and backup time have been recorded
- The raw backup remains private, and token, password, UUID, and accessed domain details have been removed from public evidence
While the old version still opens, record the current Profile name, subscription source, overrides and scripts, system proxy, TUN, service mode, and ports. Keep both the data directory beside the old program and the official system application data directory.
Install the RC from the official package, then migrate portable settings
The official Clash Verge Rev documentation says the project currently publishes only through GitHub Release. To test v2.5.4-rc, open the official Release for that RC, confirm that the page is marked Pre-release and targets commit c7ffb212, record the publication time and asset filename, and then choose the asset for your system and architecture.
Most Windows devices use x64; Windows on ARM uses arm64. Consider the larger package with fixed_webview2 in its filename only if WebView2 is missing and cannot be installed, or the normal package cannot open the interface.
On macOS, distinguish Apple silicon from Intel. On Linux, match both the distribution package format and CPU architecture.
Before installing, save the asset filename and download time. Avoid third-party portable repacks and installers from search ads, and do not mix stable and RC resource directories. If you have only one production environment, prepare a full data backup and a way to get online without the affected Windows service.
Exit the old version completely so that two interfaces or cores cannot modify the same data directory at once.
The v2.5.4 release notes confirm only that portable mode is removed and the system app data directory is used consistently. They do not promise to discover every third-party portable package or custom directory automatically. Do not delete the old files first, and do not extract the new program directly into the old program directory expecting it to read the old configuration automatically.
If manual restoration is the only option, close the new version, preserve a copy of the directory it just created, and then copy the complete backed-up configuration set in one operation. Do not select only profiles.yaml, copy only profiles/, or mix old and new verge.yaml files; references and current selections across these files may fall out of sync.
Migrate from the Old Portable Environment
Let the New Version Create Its Directory
Install the official v2.5.4-rc, launch it once, confirm that it uses the system app data directory, and then exit completely.
Restore from the Complete Backup
Prefer the in-app restore function. For a manual restore, keep the file set consistent and preserve a copy of the new version's initial directory.
Verify Profile and Available Proxy Methods
After confirming the subscription, policy groups, and nodes, test the system proxy. On Windows, verify service mode and TUN only when both the complete build and actual service component have evidence of the GHSA fix; otherwise keep the service disabled. On macOS and Linux, follow their respective authorization procedures.
Do Not Edit Cached Copies in Service Mode
The v2.5.4 Release leads with an important warning: in service mode, rule-set and proxy-set files in the configuration directory are only cached copies, so editing them manually does not affect the running core. Files you maintain yourself should use type: file in the configuration instead of editing service-generated caches.
This AutoBuild also adds multi-user isolation in service mode and migration for upgrades from the old service, and fixes continuing errors or abnormal state after an operation times out. After upgrading, confirm the service installation status and current user in the interface, then inspect the app logs and service-logs. The continued presence of an old cache does not prove that the new core loaded a manual edit.
If the original configuration relies on manually edited provider caches, restore the backup first and convert the rule sets or proxy sets you actually maintain into explicit local file providers. Migrate only one file at a time, then reload and verify it through connection records or rule matches. Do not perform the service migration, provider migration, and subscription update simultaneously.
Test Real Requests Separately Through System Proxy and TUN
After restoring the Profile, turn off TUN and enable only the system proxy. Complete one real HTTPS request through the same node, then confirm its target, rule, and outbound in Connections. Next, turn off the system proxy and confirm that the operating system's proxy state is restored in sync. This step validates the system-proxy state and restoration fixes from the release notes.
On Windows, test service mode and TUN only when the complete build, installation source, and actual service component have evidence of the GHSA fix. Otherwise keep the service disabled and verify only the system proxy. If the original problem affected the system or mixed stack, retest that original stack after the safety conditions are met.
Keep the same node and target during testing; do not change gVisor, DNS, ports, and overrides together. On macOS and Linux, follow the original authorization process to confirm bypass rules and service logs, which should no longer show the old permission errors.
v2.5.4 adds the Mips stack option for TUN, and the Release explicitly requires Mihomo v1.19.31 or later. If you do not have that core version or a specific test objective, do not switch stacks merely because the option is new.
Check Results for Each Feature
| Feature | What to Verify | What to Do if It Fails |
|---|---|---|
| App and Profile | Subscriptions, policy groups, selected nodes, and overrides are all present | Resolve the app and Profile issue first; do not continue proxy testing. Restore the complete backup. |
| System proxy | The toggle matches the actual system state, and a real HTTPS request appears in Connections | Turn off the toggle, restore the system proxy, and then inspect the logs |
| Service mode | On Windows, verify installation, startup, and operations for the current user only when the complete build and actual service have evidence of the GHSA fix. On macOS and Linux, check authorization and service-logs, with no continuing errors. | Disable the service and use the system proxy; do not restart it on Windows if the fix is unverified. |
| TUN | Test on Windows after the service safety conditions are met. On macOS and Linux, follow authorization procedures and verify target capture, DNS, routes, and network recovery after disabling capture. | Disable TUN and do not switch through multiple stacks in succession |
| Mips | The core is at least v1.19.31, with a separate traffic-capture test | Restore the pre-upgrade stack |
Recheck the configuration and proxy after restarting; use the Windows service only with evidence that it has been fixed
Restart the system and Clash Verge Rev, then use the same pre-upgrade Profile, node, and HTTPS target to verify startup and the system proxy. Verify Windows service mode and TUN only when the complete build and actual service both have evidence of the GHSA fix; otherwise keep them disabled. On macOS and Linux, follow the original authorization process.
Also verify that the system app data directory actually saved the new changes and that the Profile, selected node, overrides, and ports do not revert after restart. When using a local rule set or proxy set with type: file, confirm that the runtime configuration references the source file rather than a service cache copy.
Do not delete the old portable directory or pre-upgrade backup during testing, and do not re-enable the affected old Windows service. Restart at least once and confirm direct connectivity after switching off the proxy before deciding whether to keep the current build.
v2.5.4-rc Acceptance Checklist
- The actual complete build number, commit, and asset filename are recorded; permission to enable the Windows service is checked separately against evidence of the GHSA fix.
- Services permitted to run complete their operations with no continuing errors after timeouts; on Windows, the complete build and actual service must have evidence of the GHSA fix.
- The configuration persists after restarting the system and app, and two instances are not running at once
- The full data backup works; rollback on Windows will not re-enable the old service affected by the GHSA
After successful AutoBuild testing, recheck migration and network recovery under the same conditions in the stable release.
If you need to report an issue, provide the system, architecture, installation channel, old and new versions, old data directory and new system directory, first relevant log entry, and minimal reproduction steps. Before posting publicly, remove the subscription token, node credentials, WebDAV details, accessed domains, and complete local paths.
Restore connectivity after trouble without reverting to an affected service
If the RC will not start, configuration migration is incomplete, or the system proxy or TUN develops a new regression, disable TUN and the system proxy first, exit the app completely, and confirm that the operating system has recovered direct connectivity. Do not keep updating subscriptions or repeatedly overwrite the data directory while the system is in an abnormal state.
After saving a copy of the data directory as it was when the failure occurred, keep a trusted full configuration backup, but do not reinstall or enable the old <= 2.5.4 service on Windows. Restore essential connectivity using a system proxy that does not depend on that service, or another trusted client, then check the fixed builds explicitly listed in the GHSA.
After basic connectivity returns, confirm the Profile and make a real HTTPS request. Re-enable and test service mode and TUN separately only when the installation source, full build string, and actual service component all have patch evidence. If evidence is insufficient, leave them off and report the error to maintainers.
Safe Rollback
Restore Direct Connectivity
Disable TUN and the system proxy, exit the RC completely, and confirm that normal networking works without a local proxy.
Save the data directory as it was when the failure occurred
Copy the current v2.5.4 data directory and redacted logs without overwriting the pre-upgrade backup.
Restore basic connectivity
Use only a system proxy or another trusted method that does not depend on the affected service; do not copy service files from the old backup.
Restore trusted configuration
Restore the Profile from the full pre-upgrade backup; do not mix individual files from old and new installations.
Verify Proxy Methods That Are Safe to Use
After confirming Profile and a real HTTPS request, verify service mode and TUN on Windows only when the complete build and actual service both have evidence of the GHSA fix. Other platforms follow their permission procedures.
References
- Clash Verge RevClash Verge Rev v2.5.4-rc Pre-release Notes
- Clash Verge RevHistorical Clash Verge Rev v2.5.2 release notes
- Clash Verge RevWindows service privilege-escalation advisory GHSA-99qg-xv7m-jf4v
- Clash Verge RevOfficial Clash Verge Rev v2.5.5 release notes
- Clash Verge RevWindows Service-Mode system/mixed TUN No-Traffic Report #7915
- Clash Verge Rev DocsOfficial Data Directory, Credentials, and Logging Documentation
