← Back to blog

Private by design

A menu bar utility watches your machine all day. That’s a lot of trust. SpinCat is built so you don’t have to think about where your data goes — because it doesn’t go anywhere.

Local APIs, nothing else

Every system reading comes from a first-party macOS API:

  • CPU from Mach host_processor_info tick deltas
  • GPU from IOKit IOAccelerator utilization keys
  • Memory from host_statistics64 with pressure and swap
  • Disk from volume capacity and IOKit byte counters
  • Network from the primary interface via getifaddrs

There’s no shelling out, no powermetrics, no sudo, no PTY probing, and no arbitrary subprocesses. Ever.

No analytics, no telemetry

SpinCat collects no usage data and has no tracking of any kind. There’s no crash-reporting SDK phoning home, no “anonymous metrics” toggle buried in settings. The app simply doesn’t do it.

Network is opt-in

The single exception is AI usage monitoring, and it’s off by default. A quota request only runs when you’ve enabled AI usage and switched on a specific provider. Credentials stay in app-managed local files or the macOS Keychain — never in the display cache, which only keeps token-free snapshots and restores them marked as stale.

Sandboxed and declared

SpinCat runs inside the App Sandbox with a minimal entitlement set: a network client for optional AI quota and OAuth, plus a localhost server for OAuth callbacks. It ships with a privacy manifest and declares that it uses no non-exempt encryption.

Privacy isn’t a setting in SpinCat. It’s the default.