CLI
below is the detailed cli reference for screenpipe’s core functionality.
core options
- fps (
\-f, --fps <FLOAT>
): frames per second for continuous recording- default:
1.0
(non-macos),0.5
(macos) - storage impact:
1 FPS ≈ 30 GB/month
,5 FPS ≈ 150 GB/month
- default:
- port (
\-p, --port <INT>
): port to run the server on- default:
3030
- default:
- data-dir (
--data-dir <PATH>
): data directory- default:
$HOME/.screenpipe
- default:
- debug (
--debug
): enable debug logging- default:
false
- default:
audio options
- audio-chunk-duration (
\-d, --audio-chunk-duration <INT>
): audio chunk duration in seconds- default:
30
- default:
- disable-audio (
--disable-audio
): disable audio recording- default:
false
- default:
- audio-device (
\-i, --audio-device <STRING>
): audio devices to use (can specify multiple) - realtime-audio-device (
\-r, --realtime-audio-device <STRING>
): devices for realtime transcription - list-audio-devices (
--list-audio-devices
): list available audio devices - audio-transcription-engine (
\-a, --audio-transcription-engine <ENGINE>
): transcription engine- options:
deepgram
: cloud-based, high quality (free tier available)whisper-tiny
: local, lightweight, privacy-focusedwhisper-large
: local, higher quality than tinywhisper-large-v3-turbo
: local, highest quality
- default:
whisper-large-v3-turbo
- options:
- enable-realtime-audio-transcription (
--enable-realtime-audio-transcription
): enable realtime transcription- default:
false
- default:
vision options
- disable-vision (
--disable-vision
): disable vision recording- default:
false
- default:
- list-monitors (
--list-monitors
): list available monitors - monitor-id (
\-m, --monitor-id <INT>
): monitor IDs to record (can specify multiple) - ignored-windows (
--ignored-windows <STRING>
): windows to ignore by title- example:
--ignored-windows "Spotify" --ignored-windows "Chrome"
- example:
- included-windows (
--included-windows <STRING>
): windows to include by title- example:
--included-windows "Code" --included-windows "Terminal"
- example:
- video-chunk-duration (
--video-chunk-duration <INT>
): video chunk duration in seconds- default:
60
- default:
- ocr-engine (
\-o, --ocr-engine <ENGINE>
): OCR engine selection- options:
apple-native
: default for macoswindows-native
: default for windowstesseract
: default for linuxunstructured
: cloud-based (free tier available)custom
: configurable viaSCREENPIPE_CUSTOM_OCR_CONFIG
- options:
custom ocr engine example
language & privacy
- language (
\-l, --language <LANG>
): languages to support (can specify multiple) - use-pii-removal (
--use-pii-removal
): enable PII removal from OCR text- default:
false
- default:
voice activity detection
- vad-engine (
--vad-engine <ENGINE>
): voice activity detection engine- options:
silero
,webrtc
- default:
silero
- options:
- vad-sensitivity (
--vad-sensitivity <LEVEL>
): VAD sensitivity level- options:
low
,medium
,high
- default:
high
- options:
experimental features
- enable-llm (
--enable-llm
): enable local LLM API- default:
false
- default:
- enable-ui-monitoring (
--enable-ui-monitoring
): enable UI monitoring (macos only)- default:
false
- default:
- enable-frame-cache (
--enable-frame-cache
): enable experimental video frame cache- default:
false
- default:
- capture-unfocused-windows (
--capture-unfocused-windows
): capture unfocused windows- default:
false
- default:
- enable-realtime-audio-transcription (
--enable-realtime-audio-transcription
): enable realtime transcription- default:
false
- requires: at least one
--realtime-audio-device
- note: experimental feature, may impact system performance
- default:
subcommands
pipe management
add external data to screenpipe (OCR only)
allows you to add external screen recordings to screenpipe, for example it could be your iphone screen recordings, your physical journal photos, etc.
companies use this to index their product’s screen recordings, for example.
by default, screenpipe extracts metadata (fps, duration, creation time) directly from video files. however, you can override these with a metadata file:
metadata override example
note: if you don’t provide a metadata override file, screenpipe will automatically extract metadata from the video files. use overrides when you need to specify custom metadata or when the automatic extraction fails.
database
Shell Completions
The screenpipe
CLI supports generating shell completions for popular shells. Follow the steps below to enable autocompletion for your shell:
Bash
- Add the following to your
.bashrc
profile:
- Reload your profile:
Zsh
- Add the following to your
.zshrc
profile:
- Reload your profile:
Fish
- Create
\~/.config/fish/conf.d/screenpipe.fish
and add this line to it:
PowerShell
- Add the following to the end of your profile file:
- For macOS/Linux, the profile is located at
\~/.config/powershell/Microsoft.PowerShell_profile.ps1
- For Windows location is either:
%userprofile%\\Documents\\WindowsPowerShell\\Microsoft.PowerShell_profile.ps1
Powershell 5%userprofile%\\Documents\\PowerShell\\Microsoft.PowerShell_profile.ps1
Powershell 6+
- To create the profile file you can run this in PowerShell:
- To edit your profile run this in PowerShell:
- Reload your profile:
LLM links
paste these links into your Cursor chat for context:
Was this page helpful?