We run no servers.
Summary
Rift is a Mac app that reviews code on your device. We — Coursion — operate no servers, run no analytics, and receive nothing from your machine. The only time data leaves your Mac is when you use an optional feature that calls a third party directly on your credentials: a deep AI review (Anthropic), or a GitHub action. Those are covered in detail below.
What we collect
Nothing. There is no Coursion server in the loop. No analytics SDK, no telemetry, no crash reporter that phones home, no account, no ads. Your code, diffs, git history, and API keys stay on your Mac unless you invoke one of the third-party features below.
On-device by default
Reading a repo, browsing diffs, blame, staging, committing, search, the editor, language intelligence, and on-device risk triage all run locally. On-device triage uses Apple's Foundation Models framework — it never sends your code anywhere.
AI deep review (optional, your key)
When you explicitly run a deep review, Rift sends the relevant diff — and any intent note you type — to Anthropic's API using your own API key, over HTTPS, directly from your Mac. Coursion is not part of that request and never sees it. Anthropic's handling of that data is governed by its own terms; see anthropic.com/legal/privacy. If you never run a deep review, nothing is ever sent.
GitHub & git
PR-review features shell out to the gh CLI and the git
you already have installed, using the credentials already on your machine. Those
talk to GitHub (or your own remote) directly — again, no Coursion server in the
middle.
Your API key
Your Anthropic API key is stored in the macOS Keychain, encrypted at rest and gated by the app's code signature — never in a plaintext preferences file. It is used only to sign your own requests to Anthropic and is never transmitted to us.
Third-party services
Rift bundles no third-party analytics, advertising, or crash-reporting SDKs. The only outbound network calls are the ones you trigger: Anthropic (deep review), GitHub (PR features), and Sparkle checking for app updates.
Updates
Rift checks for new versions via Sparkle. That request fetches a release feed and downloads a signed update when you choose to install one. It carries no personal data beyond what any HTTP request includes (such as your IP, visible to the file host).
Contact
Questions about this policy? Email kuraydev.io@gmail.com.
Changes to this policy
If this policy ever changes, we'll update the date above and describe what changed. The version that shipped with your build of Rift is the version that applies to you.