minutes

Security & Privacy

Nothing to trust. Nothing to breach. Nothing to subpoena.

Cloud notetakers answer the security question with policies: encryption in transit, deletion windows, SOC 2 reports, BAAs. Minutes answers it with architecture. Your conversations are captured, transcribed, diarized, and stored on your own machine — so the promises those policies exist to make are simply not needed. “We delete your audio after processing” is a policy. “We never had your audio” is an architecture.

The Pipeline

Every step, on your device

Stays on device
  1. Captureon-device

    Mic (cpal) and system audio (native macOS capture in the desktop app, or a loopback device), recorded on your machine

  2. Transcribeon-device

    whisper.cpp or parakeet.cpp, running on your CPU/GPU

  3. Diarizeon-device

    pyannote ONNX models, local — speaker labels never computed in a cloud

  4. Storeon-device

    Markdown + YAML frontmatter on your own disk, 0600 owner-only permissions

What That Buys You

No audio upload, ever

There is no code path that sends your recordings to a server. Transcription is not 'private-by-policy' — the cloud client simply doesn't exist.

Files you own outright

The durable record is plain markdown in ~/meetings on your disk, written with 0600 permissions. Grep it, back it up, delete it — no export button between you and your data.

No account, no vendor database

There's nothing to sign up for, so there's no server-side profile of your conversations to breach or subpoena.

Open source, MIT

Every claim on this page is verifiable in the repository — capture, transcription, and storage are readable Rust, not a trust-center PDF.

What Does Touch The Network

A security page you can trust has to be honest about the exceptions, so here is the complete list. Minutes downloads transcription and diarization models once, at setup. If you install updates, those come over the network too. And if you enable automated summarization — it is off by default — your transcript text goes wherever you point it: a local model via Ollama, an agent CLI you’ve signed into (claude, codex, gemini — which round-trips through that provider’s cloud), or a cloud API if you supply a key.

What is never in that traffic: your audio and your transcripts, unless you yourself configured a summarizer to receive them. Out of the box, Minutes needs no API key and sends conversation content nowhere. When Claude summarizes a meeting through MCP, it reads local files through tools you granted — visible in your agent’s tool log, not a background sync — and what it reads travels to your agent’s model provider as conversation context, like anything else you show your agent.

For Regulated Work

Healthcare.HIPAA’s business-associate machinery exists because vendors receive PHI. On-device processing means no vendor receives anything — there is no business associate, so there is no BAA to negotiate. Your own obligations (disk encryption, access control, recording consent) remain, exactly as they do for the workstation your EHR runs on. See our full analysis: Is Otter.ai HIPAA compliant?

Legal.Privilege analyses get harder every time a third party touches client communications. A transcript that never leaves the attorney’s machine involves no third-party disclosure to argue about. (Informational, not legal advice — run it past your ethics counsel.)

EU / GDPR.Cloud notetakers make you evaluate a processor, sign a DPA, and check data-residency maps. With on-device processing there is no processor and no transfer — the data never leaves the controller’s machine.

Verify It Yourself

Minutes is MIT-licensed and the entire pipeline is readable Rust. Audio capture lives in crates/core/src/capture.rs, transcription in crates/core/src/transcribe.rs, and output permissions where files are written. Don’t take an SEO page’s word for an architecture claim — read the code, or have your security team do it. That’s the point of shipping it open.

Next step

Related