← Spotlit

Privacy

Spotlit has no telemetry and no analytics, and makes no network connection unless you start a live stream. Nothing is sent anywhere otherwise.

Diagnostic log

Plugins

Spotlit loads third-party plugins only from the plugin folder (%LOCALAPPDATA%\spotlit\plugins on Windows, ~/.config/spotlit/plugins on Linux; set SPOTLIT_PLUGIN_DIR to use another). It never downloads plugins. A plugin is native code that runs with this app's permissions and can do anything the app can, so install only plugins you trust. Plugins that fail to load are skipped and noted in Diagnostics. A saved scene can only create sources that an installed plugin registered, never arbitrary built-in sources.

Camera

A camera source is added only when you add one. Spotlit asks the system for the camera you choose (Windows and macOS may show a Camera privacy permission); video goes into the recording or stream you start, with nothing stored or sent anywhere else. The preview may show it while the preview is on. There is no camera access until a camera source exists in the live scene.

Cursor effects

Off by default. Turning them on starts a pointer-tracking session that the desktop asks you to approve (a screen-share dialog on Linux/Wayland; choose the screen you record; Windows and macOS need no dialog for the pointer position). Spotlit reads only the pointer position from that session: never keys, clicks or screen contents (frame data is not mapped). Positions are used for drawing and are not stored or logged. On Linux/Wayland a saved permission token (in ~/.config/spotlit/cursor_tracker.json) lets it resume without asking; delete the file, or revoke the permission in your desktop's settings, to withdraw consent.

Auto-zoom

Uses the same screen-share permission as the cursor highlight (one permission). The pointer position is used for the zoom and is not stored or logged. Zoom is part of the recorded video.

"Also zoom where I type" (on by default once auto-zoom is on; separate switch) cannot see your keys: no platform lets ordinary apps do that without extra permissions, and Spotlit does not use them. It notices which small area of the screen is changing. Spotlit's own video engine, which already renders the screen it records, makes a small copy of that picture about 10 times a second and reduces it at once to a 64 x 36 grid of average brightness. Only that grid is held, in memory, only for the latest frame; nothing is saved, logged or sent anywhere, and it contains no readable text. With the switch off (or auto-zoom off) it does not run. On Linux/Wayland the pointer-tracking connection still carries cursor metadata only: its frame data is never read.

Scene-change effects

On by default (separate switch under Effects). To notice that you switched windows or a new page opened, Spotlit's video engine uses the same 64 x 36 brightness grid described above: it only compares successive grids and asks whether most of the screen changed at once after a calm moment. Scrolling and video change the screen all the time, so they do not count. No pixels, text or screenshots are kept, and the log records only the *kind* of effect that played ("scene change: flash"), never what was on screen. It does not read window titles or application names. With the switch off (and typing-zoom off) the grid is not computed at all.

Live captions

Off by default. When on, the microphone is analysed by a speech model on this computer (whisper.cpp, English); no audio or text leaves it. What you say is shown on screen (and in the video, if you choose to include captions in the recording) and is never saved or written to the log: the diagnostic log records only that captions started or stopped. Muting or hiding the microphone source pauses captions immediately. The model file (about 140 MB) is downloaded once, only when you press "Download speech model" in Effects > Live captions (or with scripts/fetch_whisper_model.sh). The app fetches it over https from huggingface.co, checks its SHA-1, and discards it if the check fails. After that, captions work fully offline.

Keystroke display

Off by default, and typed letters, numbers and punctuation stay hidden even when it is on (a separate switch, with a warning). It shows shortcuts such as Ctrl + Shift + P, function keys, arrows and Enter/Tab/Esc as keycaps.

Hiding private windows

Live streaming