The three buttons on the Clash Verge home screen — Rule, Global, Direct — are something most people click once and never revisit. Their behaviour differs a lot though, and picking wrong produces things like "I have nodes but everything is slow" or "my bank site won't load".
What each one does
Rule mode
The core takes each connection's destination and walks the rules list top to bottom. The first rule that matches decides where it goes.
A typical config's rules look roughly like this:
rules:
- DOMAIN-SUFFIX,example-local.com,DIRECT # local domains go direct
- DOMAIN-SUFFIX,openai.com,PROXY # via a node
- IP-CIDR,192.168.0.0/16,DIRECT # LAN direct
- GEOIP,CN,DIRECT # IPs in a given region direct
- MATCH,PROXY # everything else via a nodeThat last MATCH is the catch-all: anything that reached it without matching goes wherever it says.
Global mode
Skips rules entirely. Every connection is handed to whichever node you have selected — including local sites, which take a round trip through a foreign server to come back.
Direct mode
Everything leaves through your normal connection, as if the proxy were off. Note that the system proxy switch is still on in this state; traffic still passes through the core, the core just chooses not to forward it.
Use Rule mode day to day
Three concrete reasons.
That third point deserves emphasis: accessing online banking or a payment platform from a foreign IP very often trips an "unusual location" check — at best an SMS verification, at worst a temporary lock. Rule mode routes them direct, which sidesteps the problem entirely.
When Global is the right call
Not often, but there are cases:
| Situation | Why |
|---|---|
| Testing whether a node works | Removes rule interference, tells you if the line is up |
| A site is judged direct but is unreachable that way | Switch to Global to get through, fix the rule later |
| Your subscription ships an old, sloppy ruleset | A stopgap; long term, get a subscription with maintained rules |
| A service that requires all requests from one exit IP | Guarantees a single origin |
Correcting one site without changing modes
More precise than flipping to Global. Say example.com is being treated as direct but you want it proxied.
Option A: a rule override (recommended)
In Clash Verge, open Profiles → Global Extended Config (called Merge in some builds) and add:
prepend-rules:
- DOMAIN-SUFFIX,example.com,PROXYprepend-rules inserts at the very top of the rules list, so it takes priority over everything. Crucially, this change survives subscription updates, unlike editing the downloaded config directly.
The reverse — forcing a domain direct:
prepend-rules:
- DOMAIN-SUFFIX,internal.company.com,DIRECTOption B: temporarily switch to Global
Fastest when you need it right now. Just remember to switch back.
A point that often confuses people: modes and node groups are different things
People ask: "If I'm in Rule mode, does the node I picked on the Proxies page still matter?"
It does. The rule decides which policy group a connection is handed to; the node you selected inside that group decides which line it actually leaves by.
So switching nodes in Rule mode still works. It simply only affects the traffic that rules sent to a proxy; the direct portion is unaffected.
In short
- Use Rule mode daily. It is the only sensible default.
- Global mode is a diagnostic tool. Switch back when you are done.
- Direct mode is for comparison tests.
- When one site routes wrong, fix it with
prepend-rulesinstead of changing the global mode.
To see how rules are actually being applied, read reading the logs and connections pages — you can watch which rule each connection matched.