v1.0 — Initial Release

Know who's watching.
Before they do.

Guard monitors your Mac's camera and freezes any process that tries to access it — until you explicitly approve. Open source. Fully local. No data leaves your machine.

Download for macOS View on GitHub
macOS 14+ Apple Silicon & Intel ~250 KB MIT License

Camera Access Blocked

"zoom.us" (PID: 4821) wants to use your camera.
The process is suspended until you decide.

Allow
Block
Camera: Active (FaceTime)
Recent activity
18:04:12  FaceTime — Allowed
17:58:41  Chrome — Blocked
17:32:09  Discord — Auto-blocked
~500
ms detection
0
data collected
100%
local processing
~250
KB binary size
Features

Built for privacy, not paranoia.

Guard sits quietly in your menu bar until something tries to access your camera. Then it acts — instantly.

Block-first architecture

Processes are frozen with SIGSTOP the instant they touch the camera. Nothing gets through until you say so.

Real-time monitoring

CoreMediaIO polling at 500ms intervals. Camera access is detected before the process can read a single frame.

Permanent block list

Apps you don't trust get auto-blocked on every future attempt. No prompts, no interruptions — just silent protection.

Full activity log

Every camera access attempt is recorded — process name, PID, bundle ID, timestamp, and whether it was allowed or blocked.

Fully local

No network calls, no telemetry, no accounts. Guard runs entirely on your Mac. Your data never leaves your machine.

Open source

Every line of code is auditable. No trust required — read it, build it, verify it yourself. MIT licensed.

How it works

Three steps. Zero trust.

Guard uses macOS CoreMediaIO APIs to detect camera hardware activation, then freezes the responsible process before it can read any frames.

01

Detect

Guard polls CoreMediaIO's kCMIODevicePropertyDeviceIsRunningSomewhere every 500ms. The moment any process activates the camera hardware, Guard knows.

02

Freeze

The offending process is immediately sent SIGSTOP — a kernel-level signal that cannot be caught or ignored. The process is completely suspended. No frames are read.

03

Decide

A modal alert shows you exactly which process tried to access your camera. Choose Allow (SIGCONT resumes it), Block (SIGTERM kills it), or Always Block (adds to permanent list).

I always wondered which apps were secretly using my camera. Now I don't have to wonder — I just get asked. — The reason Guard exists

Get started in
30 seconds.

Download the pre-built app or build from source. No dependencies, no frameworks, no Xcode required.

Recommended
Download DMG
Build from source
git clone https://github.com/FaisalFehad/Guard.git cd Guard ./build.sh open build/Guard.app
Requires: swiftc (included with Xcode Command Line Tools).
Run xcode-select --install if you don't have it.