# Privacy

> What Katchy sees, what stays on your Mac, what — if anything — leaves the device.

Katchy was designed with one principle: your screen stays on your Mac. This page is the long version of that promise.

## On-device by default

- Audio is captured by macOS CoreAudio and transcribed on-device when possible.
- Screen frames come from ScreenCaptureKit at 60 fps. They're never written to disk, never uploaded.
- The vision model that labels UI elements ("this is a button", "this is a tab") runs locally.
- Conversation history lives in `~/Library/Application Support/Katchy`. Local only.
- API keys live in your macOS Keychain. The Katchy team has no access to them.

## What leaves the Mac

Only one thing, only when needed: the abstracted task description Katchy generates after looking at your screen. Frontier models (Claude, GPT, Gemini) receive this short text — not the raw pixels.

Example: you ask "what does this error mean?" while looking at an Xcode panel. Katchy locally extracts the error string + the surrounding function name + the file path, then sends just `"What does this Swift compilation error mean: 'cannot convert value of type X to expected argument type Y'?"` to the chosen model. The model never sees the screenshot.

## Marketing-site analytics

This website (heyyykatchy.com) uses Firebase Analytics to count page views and conversion events (download click, sign-up, plan upgrade). It does not store IP addresses, it does not fingerprint you, and the events it captures are listed in the typed registry under `src/lib/analytics.ts`. The macOS app does not phone home for analytics at all.

## Stopping everything

Quitting Katchy stops every in-flight agent and clears in-memory state. To wipe everything Katchy has ever stored, delete `~/Library/Application Support/Katchy`. To revoke macOS permissions, open System Settings → Privacy & Security and toggle Katchy off under Accessibility + Screen Recording.

---

- Full docs index: <https://heyyykatchy.com/docs>
