macOS app

EAM Capture is a menu bar app that captures screen text, speech and clipboard and sends it to your EAM account.

Download and requirements

  • eam.thundera.eu/download/macos redirects (302) to a presigned link for the latest signed build, or returns 404 if none is published.
  • Requires macOS 14 (Sonoma) or later on Apple Silicon.
  • Release manifest: GET /api/v1/app/release → {"available":false} or {available:true, version, key, sha256, size, published_at, min_macos}.

What it captures

InputHowNotes
ScreenScreenCaptureKit and Vision OCR10 s while active, 30 s when idle. Long text is summarized on-device; text with nothing memorable is dropped.
AudioWhisperKit (on-device, offline)Language is auto-detected; never translated.
ClipboardPasteboard pollingContent upload is opt-in. By default only app, length and type are logged locally.

Permissions

macOS asks for Screen Recording (screen text), Microphone (audio) and, as applicable, Accessibility. Grant them in System Settings → Privacy & Security. Without a permission that input is simply not captured.

Privacy controls

  • Deny-list (on by default): password managers (1Password, Keychain Access, Passwords, Bitwarden) and some employer sites are skipped; frames are discarded in memory, never stored or uploaded. Edit it in Settings → Capture.
  • Adaptive rate: pauses when idle (5 min), under CPU pressure (>80%) or memory pressure.
  • Account guard: the menu bar shows which EAM account it uploads to. If the credential maps to a different account than before, uploads pause until you confirm.
  • Upload log at ~/Library/Logs/EAMCapture/uploads.log lists endpoint, status and counts only, never content or tokens.
  • Secrets and PII are filtered on the device before upload and again on the server.

Sign-in

The app signs in with Thundera (OIDC with PKCE, public client eam-capture) through /app/native-auth and a eu.thundera.eam:// callback. You can also use an API token. To keep web, app and MCP in one memory, link identities with POST /api/v1/auth/link-identity.

Captured screen text goes through a quality gate (see Memories) and, as RECENT-tier data, is consolidated by DREAM.