Skip to main content
Melvin
Security

How we handle your data.

Melvin executes on your Mac and uses account-scoped services only when a requested task needs them. Here is how that boundary works.

Architecture at a glance

Local-first execution

The Melvin app runs on macOS. Observation, app control, workflows, and local learning stay on your Mac.

Per-step model calls

When a step needs a language model, Melvin sends the prompt and limited context needed for that step through an authenticated proxy.

No background telemetry

Raw screen frames, clipboard content, email bodies, and tool arguments are not sent as background analytics.

Auditable logs

Tool progress and outcomes are recorded locally in the Activity tab so you can inspect what ran.

Authentication & accounts

  • Desktop accounts use email one-time codes through Supabase Auth.
  • Desktop session tokens and Gmail refresh tokens are protected by the macOS Keychain.
  • Backend search and model requests require the signed-in user's short-lived access token.
  • Per-user rate and monthly quotas limit abuse and provider spend.

Encryption

  • Traffic between Melvin, account services, Google, search, and model providers uses HTTPS.
  • Local cache is stored under ~/Library/Application Support/Melvin and is protected by the macOS keychain for credentials.
  • Production provider keys stay in server-side secrets and are not bundled in the desktop app.

Permissions Melvin asks for

Screen Recording

Required so Melvin can read what is on your screen when you ask.

Accessibility

Required so Melvin can drive other apps with the keyboard.

Automation

Required to send AppleEvents to Mail, Calendar, and Finder.

Microphone (optional)

Only requested if you turn on voice direction.

Reporting a vulnerability

If you find a security issue, please email security@trymelvin.com. We acknowledge within 48 hours and aim to land a fix within 7 business days for critical issues. See the privacy policy for how we handle personal data.