File Locations (macOS)

Where Chute Mac keeps its data, what each file is for, and what is safe to delete. Nothing here needs to be read to use Chute — it is for the moment a support request asks for a file, disk space becomes a question, or you want to know what a diagnostic bundle is drawn from.

On macOS the proxy engine runs inside the Chute Mac application itself, so everything below is written by the app under your own user account. The PacketTunnel system extension used by Enhanced Mode only moves packets and keeps no data of its own.

The data folder: ~/Chute

Created the first time the engine starts. It has three subfolders with three different lifetimes.

Content/ — kept across runs

Path What it holds
GeoLite2-Country.mmdb The GeoIP database behind GEOIP rules. Chute Mac ships a copy inside the app and uses that when this file is absent; a file placed here replaces it.
GeoLite2-ASN.mmdb The ASN database behind IP-ASN rules. Chute Mac does not ship one — place a MaxMind GeoLite2 ASN database here to use those rules.
tailscale/ This device's Tailscale node state, created only when a [Tailscale] section is used, with owner-only permissions. Deleting it makes the device join the tailnet as a new node next time.

Tmp/ — scratch space

Rebuilt whenever it is missing; safe to delete while the engine is stopped.

Path What it holds
rule_sets/ Downloaded RULE-SET files. Refetched on the ruleset's update-interval, or on the next start when the cache is gone.
ICON/ Icons of the applications shown in the process and traffic views.
db.connect The local socket the menu bar, the main window and Chute Dashboard use to talk to the running engine. Exists only while the engine runs.

A second cache, for proxy-provider subscriptions, lives under the system temporary directory as kl_proxy_providers/.

Share/ — what each run produced

Path What it holds
control-token The token the HTTP control API generated when the configuration names no external-http-secret. Owner-only permissions; reused across restarts. Delete it to have a new one generated.
last-run.json The run marker: written when the engine starts, refreshed every 30 seconds with the current memory footprint, deleted by a clean stop. Finding it at the next start is how Chute knows the previous run was killed — this is what the console's Previous exit card and last_exit report.
<run id>/ One folder per engine start, named by an 8-character run id. The Log and Traffic windows and the web console read from the current one. The most recent 10 are kept; older run folders are deleted when the engine starts.

Inside a run folder:

Path What it holds
<start time>.log, <start time>.1.log, … The session log, split into shards of 8 MiB. At most 8 shards are kept, so a long session holds its last 64 MiB; the first line of every shard says which run and shard it is. This is what Share Log and the diagnostic bundle collect.
tunnel.db An SQLite database of the run's connections — request and response headers, timing, the rule and policy that handled each, rewrite attribution — plus the events table. The console's History tab, /api/connections/history and the HAR export read it.
DUMP/ Request and response bodies, present only while [Replica] recording is on: <connection id>_send.dump, <connection id>_receive.dump, and a .idx frame index beside each.

Application files

Path What it holds
~/Library/Application Support/com.R3Studio.Chute-Mac/Profiles/ Profiles imported from a subscription URL or a share link, and converted profiles. A configuration file imported from disk is referenced where it is, not copied here — see Getting Started.
~/Library/Preferences/com.R3Studio.Chute-Mac.plist The app's settings: the active configuration, the outbound mode, window state, the list of recent run ids.
/Library/PrivilegedHelperTools/com.R3Studio.ChuteHelper, /Library/LaunchDaemons/com.R3Studio.ChuteHelper.plist The privileged helper and its launchd job, installed on demand for the Helper utun flavour of Enhanced Mode.
/Library/Application Support/Chute/ChuteMac_Proxy_Helper The helper that changes the system proxy settings on your behalf.

What is safe to delete

  • Tmp/ entirely, while the engine is stopped. Rulesets and icons are fetched again as needed.
  • Any Share/<run id>/ folder except the one the running engine is writing to. Deleting a run removes its log, its connection history and its recorded bodies together.
  • Share/control-token, if you want a fresh token; bookmarks and saved console sessions stop working.
  • Content/GeoLite2-Country.mmdb: the copy inside the app takes over. Removing GeoLite2-ASN.mmdb leaves IP-ASN rules with nothing to look up.

Do not delete ~/Chute while the engine is running: the log, the connection database and the control socket of the current run live there.

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-09-01 13:16:36

results matching ""

    No results matching ""