Verify downloads against SHA256SUMS (minisign-signed: .minisig).
curl -fsSL https://nemu-x.github.io/SlothClash/apt/key.gpg | sudo tee /usr/share/keyrings/slothclash.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/slothclash.gpg] https://nemu-x.github.io/SlothClash/apt ./" | sudo tee /etc/apt/sources.list.d/slothclash.list sudo apt update && sudo apt install sloth-clash
sudo dnf config-manager --add-repo https://nemu-x.github.io/SlothClash/rpm/slothclash.repo sudo dnf install sloth-clash
yay -S sloth-clash-bin # or: paru -S sloth-clash-bin
Or a one-off install without an AUR helper:
sudo pacman -U https://github.com/Nemu-x/SlothClash/releases/latest/download/sloth-clash-linux-amd64.pkg.tar.zst
> ℹ️ You may be asked once to reinstall the helper service after this update. The privileged service only spawns cores whose hash it has pinned, and the core changed — on Windows the installer re-pins it silently, on macOS/Linux click the banner and accept the prompt.
✨ JavaScript config override — the escape hatch the other editors can't cover
function main(config, ctx) that rewrites its generated configuration before the core sees it. It is for everything the extend-config / proxy-groups / rules editors cannot express, because they are declarative and this is not: rename every node matching a pattern, build one group per country, drop nodes by name, apply a tweak only in TUN mode. Open it from a profile's context menu → Script (JS).console.log. It writes nothing and does not touch the running connection, so it is safe to press while connected.docs/SCRIPT_OVERRIDE.md.🐛 Sites felt slower than they should — dead IPv6 addresses handed to apps, fixed
fc00::/7 — a very common default), the IPv6 addresses we handed out for every domain had no route into the tunnel. Apps still tried them first: the browser burned a full connection timeout on the IPv6 attempt of every dual-stack site before falling back to IPv4, which showed up as pages (YouTube, Google Fonts and friends) taking seconds to pull assets, with nothing in the logs. Measured: curl -6 hung for 21 s where curl -4 finished in 0.27 s. We now drop the IPv6 fake-address pool whenever the profile's own routing rules would leave it unreachable, so apps go straight to the working path. IPv6 itself stays enabled and still travels inside the tunnel — nothing leaks.🐛 A broken dns: section in a hand-edited profile was silently swallowed
v1.19.30. Brings a security fix in the core's Go TLS stack (CVE-2026-56862) and a TUN fix where hijacked DNS replies could be sent zero-filled or stale. New protocol coverage lands with it: ZeroTier outbound, AmneziaWG 3.0/3.1, an ip-stack option for WireGuard/OpenVPN/MASQUE/ZeroTier, H2C and QUICv2 sniffing, handshake-timeout for Hysteria2, client-metadata for AnyTLS and rate-limit for the restls listener. Config generation and the runtime pipeline were verified against the new core.Full Changelog: https://github.com/Nemu-x/SlothClash/compare/v0.9.1...v0.9.2
🐛 Auto-connect on startup could hang on "connecting" — fixed
Full Changelog: https://github.com/Nemu-x/SlothClash/compare/v0.9.0...v0.9.1
> ⚠️ After updating you'll be asked once to reinstall the helper service (this release needs helper service 2.5.0, which powers the new Corporate VPN and the latest fixes). Click the banner, accept the UAC prompt — it won't come back.
🏢 Corporate VPN (OpenConnect) alongside your tunnel — new
🛡️ IPv6 leak closed
🚀 Auto-connect on startup (opt-in) — reliable on a cold boot
🐛 Switching Proxy ↔ TUN no longer strands you
🩹 Clearer TUN adapter errors
🔒 Lock the proxy port
127.0.0.1:<port> manually keep working. If the pinned port is busy, we fall back to a random one for that session and note it in diagnostics.🔁 Rule toggles apply to live traffic immediately
🎨 Proxy group icons
icon from your subscription (as many providers set) next to the group name. Broken image URLs are hidden gracefully; emoji icons are supported too.🐛 Rules can target a proxy node directly
IP-CIDR,…,HK-FL-Mieru, no longer fails validation with *"references unknown policy"*. mihomo accepts it, so we do too now.🐛 First Connect after launch is reliable
🛡️ A crash in one screen no longer blanks the whole app
🐛 Update button on macOS/Linux opens the release page
.exe); it now opens the release page, where the right build lives. Direct download+install stays Windows-only.Full Changelog: https://github.com/Nemu-x/SlothClash/compare/v0.8.1...v0.9.0
> ⚠️ After updating you'll be asked once to reinstall the helper service (requires helper service 2.4.2+, which powers the TUN recovery below). Click the banner, accept the UAC prompt — it won't come back.
🛠️ TUN "Access was denied creating the TUN adapter" — fixed for good
A force-killed core (an in-app update, a crash, Task-Manager) never deleted its wintun adapter, and the leftover registered adapter made every later connect fail with *"access is denied"* — a state that survived both a reboot and a service reinstall, because a registered network device is untouched by either. Now:
DELETE /tun/remove) — the one thing the unprivileged app could never do itself.SlothClash) instead of the generic Meta, so a fresh adapter never collides with a stale one or a co-installed Clash client. A subscription- or user-set device name still wins; macOS/Linux are unchanged.✅ Rules — enable/disable individual rules from the dashboard
🌐 Proxies — reveal hidden groups
hidden are collapsed by default. A "Show hidden" toggle in the Proxies header reveals them (badged), and only appears when there's something to reveal.🔒 Security & dependencies
Full Changelog: https://github.com/Nemu-x/SlothClash/compare/v0.8.0...v0.8.1
> ⚠️ After updating you will be asked once to reinstall the helper service. This release moves the service binary out of a temporary folder into an admin-only location next to the app — a security fix (below). Click the button on the banner, accept the UAC prompt, and it won't come back.
The helper service no longer runs from a temporary folder. The privileged service — which runs as SYSTEM on Windows and root on macOS/Linux — was registered from a per-user temp directory. A non-admin user could replace that binary while the service was stopped and get code execution as SYSTEM.
It is now copied into an admin-only location and registered against *that* path:
| Platform | Location |
|---|---|
| Windows | %ProgramFiles%\Nemu-x\Sloth Clash\service |
| Linux | /usr/local/lib/sloth-clash |
| macOS | /Library/PrivilegedHelperTools (already correct) |
Requires helper service 2.4.0+. The installer also re-pins the service in place during an upgrade, and both "reinstall service" conditions now surface an actionable banner instead of a raw error.
X-Brand-Desktop-*): name, logo, accent colour, greeting and links. A button in the Home header opens an operator dialog showing subscription traffic and expiry, device slots, provider links, and a one-click "copy info for support" block. Providers can also hide non-critical UI — Global mode, Proxy mode, local configs, Advanced. Full protocol: wiki → Branding.allow-lan (rewriting a loopback bind-address so LAN access really works), dns.ipv6 and dns.respect-rules.fake-ip-range6 to both config paths.Mihomo v1.19.29 · Helper service 2.4.1
Full changelog: https://github.com/Nemu-x/SlothClash/compare/v0.7.0...v0.8.0
Full Changelog: https://github.com/Nemu-x/SlothClash/compare/v0.7.0...v0.8.0