Privacy

Context awareness

Corivo gets useful by quietly remembering what you work on, so you don't have to brief every new chat. This page walks through what that means in practice — what it notices, what it never sees, and the controls that put both in your hands.

The short version

On privacy, here's how it actually works today, including the parts that aren't perfect yet:

  1. It never captures raw screenshots. It reads your operating system's accessibility APIs (macOS Accessibility on Mac, UI Automation on Windows) to turn screen content into structured text — no pixels or visual data are stored.
  2. That text lives only on your computer. A local SQLite database under your application support folder. Nothing goes to a Corivo server.
  3. You can manually exclude specific apps from ever being captured.
  4. The part that actually calls the AI model does send context to the model provider. To keep that honest, we run a local privacy-filter model first — sensitive snippets get scrubbed on your machine before anything leaves it.
  5. The desktop app source is public. You can inspect the capture and local storage pipeline in the Corivo desktop repository, published under Apache-2.0.

How it works in one paragraph

Corivo reads the foreground app's accessibility tree — the same metadata your screen reader would see — and saves a small structured record of it: the app, the window title, the visible text. Those records live encrypted on your computer. When you later ask Corivo a question, the relevant slices get pulled through a local privacy filter and sent to your configured model provider; nothing is uploaded in the background, and no images ever leave (or enter) the pipeline.

What Corivo notices

When context awareness is on, Corivo records:

  • The frontmost app — its bundle id (e.g. com.apple.Notes) and its display name.
  • The window you're looking at — its title and, when the app is a browser, the URL of the active tab.
  • The text on screen— read through your operating system's accessibility APIs (macOS Accessibility on Mac, UI Automation on Windows). No screenshots are captured or stored; the structured text the API returns is the entire record.

Records are written every few seconds and only when something on screen has actually changed. Two readings of the same window are stored as one entry with an extended duration, not duplicated.

What Corivo never sees

Some surfaces are off-limits by design, not by configuration:

  • Password fields and secure inputs. Your operating system marks these as secure at the OS level — Accessibility (Mac) and UI Automation (Windows) won't return their contents and Corivo has no way to override that.
  • Incognito and private browser windows. Browsers strip accessibility metadata from private sessions, so there is nothing for Corivo to read.
  • Anything in apps you've excluded. The exclusion list ships with banking, password managers, and secure messengers turned on by default; you can add anything else from Settings → Privacy controls → Excluded apps. A parallel website-level exclusion list is wired up end-to-end but waiting on browser URL extraction — the tab is visible in Settings, marked "Coming soon", and will activate automatically once that lands.
  • Anything while context awareness is paused. The bottom-left indicator in the desktop app lets you pause for 5 minutes, 15, 30, an hour, or a full day with two clicks.
  • Anything on your screen before you grant Accessibility permission. Corivo asks once at onboarding; if you decline, the pipeline stays inert.

Where the data lives

Everything Corivo notices is written to an encrypted SQLite database under your Mac's application support directory. It stays on your machine; nothing syncs to a Corivo server by default.

When you connect a model — Anthropic, OpenAI, or your own — Corivo first runs the slices it's about to send through a local privacy-filter model that scrubs the obvious sensitive bits (secrets, identifiers, anything that doesn't need to be in the prompt) on your machine. Only the filtered snippets relevant to the question you asked leave your computer. Your full context is never shipped wholesale. The model provider sees those snippets under whatever data policy they publish; Corivo doesn't add another layer of retention on top.

Local data is pruned automatically after 90 days unless you've pinned the conversation it belongs to. You can change that cutoff or wipe everything from Settings → General → Hard delete.

Your controls, one by one

  • Pause. Click the bottom-left badge in the app, choose a duration (5 min through 1 day). The badge flips to "Paused" and the pipeline freezes — no new records are written, existing ones stay searchable.
  • Delete the last N minutes. Same badge → Delete data → 5 min, 15 min, or Custom. The custom option asks you to type "delete" before it runs; nothing is recoverable afterwards.
  • Exclude apps. Drop a bundle id into Settings → Privacy controls → Excluded apps. Corivo writes a "skipped" entry instead of a content entry, so your timeline still shows that you were in the app — just not what was on screen.
  • Exclude websites (coming soon). Patterns like notion.so or *.notion.so will be skipped whenever the active browser tab matches. The interface is visible in Settings today; the matching engine activates as soon as Corivo can read URLs from your browser via the accessibility tree — a small remaining piece of the permission story on each platform.
  • Wipe everything. Settings → General → Hard delete drops every record and every saved conversation. The pipeline stops first so an in-flight write doesn't sneak through.

A few questions we get

Does Corivo see my passwords?
No. Password fields are flagged secure by your operating system, and the accessibility APIs (macOS Accessibility, Windows UI Automation) refuse to return their contents. Corivo doesn't bypass that.

Is my context used to train any model?
No. We don't run a model ourselves; we route to whichever one you've configured. Whether that provider uses prompts for training is governed by their data policy — Anthropic and OpenAI default to "no" for paid API usage, which is the path Corivo uses.

What if I uninstall the app?
Remove the app (drag Corivo.app to the Trash on Mac, or uninstall from Apps & features on Windows) and the encrypted local database goes with it. Nothing lingers in the cloud, nothing waits on a server.

Can I run Corivo without granting accessibility access?
Yes — you just won't get context-aware answers, which is most of why the app exists. The setting is a single toggle in System Settings (Mac) or Settings › Privacy (Windows) whenever you want to reconsider.

If anything here doesn't match your experience

Email [email protected] and we'll dig in. Privacy claims are only as good as the bug reports that surface their edges, so we read these closely.

You can also review the desktop source on GitHub or file an issue if the behavior you see does not match this page.