Hello everyone.
Earlier this month we released Chute for Android. This is the tour we promised — what you can actually do with it once it is installed, and a few of the decisions hiding inside.
A Configuration Editor, Not a Text Area
Every section of a Chute configuration has its own structured editor: policies and policy groups, rules and logical rules, DNS and Local DNS Mapping, proxy and rule providers, modules, header and body rewrites, mock responses, scripts, MitM and CA, plus the advanced options. You edit fields, not syntax — pick a rule type and the form shows exactly the fields that type understands; pick a policy’s type and the TLS, WebSocket or SSH options appear only where they belong. Lists support search and drag-to-reorder (FINAL politely pins itself to the bottom, where it must stay to work), and the policy pickers list your policies, your groups, plus DIRECT and REJECT.
Underneath the forms sits a simple promise: a configuration that would fail to run cannot be saved. Every item is validated as you edit it, and before anything is written, the complete file is re-parsed by the same parser the tunnel itself runs. If the engine would reject it, the editor rejects it — with the exact field and reason, and a copyable error report when you need to show it to someone. And if you are editing the configuration that is currently running, saving hot-reloads it; the tunnel keeps its connections.
For people who prefer the raw file, the text mode has syntax highlighting and the same live validation.
Getting a configuration in works however your configuration exists today:
- File and URL imports, including YAML and JSON
- QR code — the fastest way to move a config from a desktop screen to the phone
- Wi-Fi upload — open a browser on the same network, send the file over, done
- Remote repository — for configurations you maintain centrally and want refreshed automatically
Clash and sing-box configurations convert automatically on import — the same migration machinery covered in Coming From Another Client and Part Two. Subscription configurations open read-only — you can browse everything inside one — because a subscription refresh would silently overwrite your edits; one tap on Make Local forks it into a configuration you own.
Routing That Follows Your Rules
Rule, Direct and Global outbound modes, switchable while connected. Underneath them are 30 match-rule types — domain, suffix, keyword, wildcard and regex matches, IP-CIDR, GEOIP, IP-ASN, Wi-Fi SSID and router subnet, source IP, destination and source ports, URL regex, rule sets and domain sets, script rules — plus AND / OR / NOT compound rules with their own editor, for the “only when this and that” cases.
Two of them deserve a closer look on Android specifically. PROCESS-NAME rules are not guessing: the app maps every live connection back to the application that opened it, so “this app’s traffic goes direct” is a fact, not a heuristic. And if you would rather decide app-by-app outright, per-app routing picks which installed apps enter the tunnel and which bypass it entirely — no splitting the system VPN by hand.
Policy groups cover select, URL-test, fallback, load balance (round robin, consistent hashing, sticky sessions), SSID-based and external. Proxy chains — a policy riding another policy as its upstream, introduced in Proxy Chains and Relay Groups — are editable in the UI too: every policy type has a front-proxy field, and a policy’s detail view shows the whole chain path. Shadowsocks policies also gained a UDP-over-TCP option for networks hostile to UDP.
Seeing What It Is Actually Doing
The runtime dashboard opens with a live throughput chart and per-policy traffic, so “is anything even flowing” is a one-glance question. The TCP and UDP tunnel lists answer the next one — why — per connection: the host, the process that opened it, the policy it took, and the rule that matched. One of them is misbehaving? Close that single connection straight from the list, without touching the rest of the tunnel.
The DNS views go just as deep: the system hosts file, your Local DNS Mapping, the runtime cache and the fake-IP mappings are all visible — and purgeable — from inside the app. Session history and runtime logs can be filtered and exported, and when nothing on screen explains what you are seeing, the diagnostics section does network, proxy and route-table inspection plus TCP and UDP reachability tests; everything rolls into a diagnostics bundle you can hand to support. If the packet engine itself ever dies, the app restarts it automatically with a short back-off rather than leaving you quietly disconnected — and if it truly cannot start, you get a visible failure, never a pretend connection.
Debugging Your Own Traffic (Pro)
Two Pro tools exist for one job: debugging traffic you own. The traffic recorder captures what your apps send, with filters for the noise — you can hide specific system requests, drop UDP, or narrow by keywords. HTTPS inspection decrypts only the hostnames you configure, using a CA certificate you create yourself, and exports to HAR or CSV for analysis elsewhere.
For everything else, the rule stands as on every platform: Chute does not log, inspect or retain the contents of your tunneled traffic.
Made for Android
This build gets the integration points of the platform, not just a port of the screens:
- A Quick Settings tile, launcher shortcuts, and a home-screen widget bound to the policy group you choose — flipping from “Work” to “Home” without opening the app
- Always-on VPN support, start on boot, and auto-pause on cellular with auto-resume on Wi-Fi
- Automation: start, stop and toggle actions for Tasker, Locale or any automation app — plus
adbbroadcasts — andchute://links that import a configuration outright - Bio Pass: a biometric or device-credential lock on opening the app and on editing configurations
- An HTTP control API and a Web Console, on when you need them — the same remote view the other platforms offer
- A guided setup wizard, an in-app manual, and eight interface languages — Material design, light and dark, with every screen change animated rather than snapped
Where to Get It
Google Play, or the download page on chute.life. Same app, same signature — you can upgrade across channels in place. Free with a one-time Pro upgrade; existing Chute licenses activate with your license e-mail and key. Questions: support@chute.life.
Thanks.
Chute Devs