Agent skill
screenpipe-setup
Enable ambient work intelligence via screen OCR (beta feature)
Install this agent skill to your Project
npx add-skill https://github.com/davekilleen/Dex/tree/main/.claude/skills/screenpipe-setup
SKILL.md
ScreenPipe Setup
Enable ambient work intelligence - Dex learns what you're working on via screen OCR.
Beta Gate (Check First!)
This is a beta feature. Before proceeding:
- Read
System/user-profile.yaml→ Check ifbeta.activated.screenpipe: true - If NOT activated:
"ScreenPipe is a beta feature. To enable it, first run: /beta-activate DEXSCREENPIPE2026 Then come back and run /screenpipe-setup again." - Only proceed if beta is activated
What It Does
ScreenPipe captures OCR text from your screen so you can ask things like:
- "What was I working on this morning?"
- "Summarize my work today"
- "When did I last look at the Q1 presentation?"
Privacy Defaults (Explain to User)
Work apps only. Everything personal is blocked:
- ❌ All web browsers (Chrome, Safari, Firefox, Arc, Edge)
- ❌ Password managers, messaging apps, social media
- ❌ Banking, healthcare, email, entertainment, shopping
- ✅ IDEs, terminals, Slack, Notion, Figma, Calendar
Auto-delete: Data older than 30 days is automatically purged (configurable).
Setup Flow
1. Check if Installed
which screenpipe
If not found:
brew install screenpipe
2. Apply Privacy Config
Write to ~/.screenpipe/config.json:
{
"fps": 0.5,
"disable_audio": true,
"use_pii_removal": true,
"ignored_apps": [
"Safari", "Google Chrome", "Firefox", "Arc", "Brave Browser",
"Microsoft Edge", "Opera", "Vivaldi", "Tor Browser", "DuckDuckGo",
"1Password", "Keychain Access", "Bitwarden", "LastPass", "KeePass",
"Messages", "WhatsApp", "Telegram", "Signal", "Discord", "FaceTime",
"Photos", "Preview", "TV", "Music", "Podcasts", "Books", "News", "Stocks"
],
"ignored_urls": [
"google.com/search", "bing.com/search", "duckduckgo.com",
"wellsfargo.com", "chase.com", "bankofamerica.com", ".bank",
"venmo.com", "paypal.com", "mint.intuit.com",
"schwab.com", "fidelity.com", "vanguard.com", "robinhood.com",
"facebook.com", "instagram.com", "twitter.com", "x.com", "tiktok.com",
"reddit.com", "youtube.com", "netflix.com", "spotify.com",
"amazon.com", "ebay.com", "mail.google.com", "outlook.live.com"
]
}
3. Set Default Retention
echo "30" > ~/.screenpipe/retention_days
4. Install Cleanup Script
# Copy cleanup script from dex-core
cp dex-core/core/scripts/screenpipe-cleanup.sh ~/.screenpipe/cleanup.sh
chmod +x ~/.screenpipe/cleanup.sh
# Install daily cleanup (runs at 3 AM)
cp dex-core/core/scripts/com.dex.screenpipe-cleanup.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/com.dex.screenpipe-cleanup.plist
5. Update User Profile
Set screenpipe.enabled: true and screenpipe.prompted: true in System/user-profile.yaml
6. Start ScreenPipe
screenpipe &
7. Verify
curl http://localhost:3030/health
Done Message
"✅ ScreenPipe is running!
What's captured: Work apps (VS Code, Terminal, Slack, Notion, etc.)
What's blocked: All browsers, personal apps, banking, social media
Data location: ~/.screenpipe/ (on your machine only)
Auto-delete: After 30 days
Try asking: 'What was I working on in the last hour?'
View your data anytime: open http://localhost:3030
Disable anytime: screenpipe stop"
Disable Flow
Triggers: /screenpipe-disable, "disable screenpipe", "stop screen capture"
screenpipe stop
# or
pkill screenpipe
Update screenpipe.enabled: false in user-profile.yaml
Ask: "Want to delete the captured data too?"
- Yes:
rm -rf ~/.screenpipe/ - No: "Data preserved - you can review or delete later"
Change Retention
When user says things like:
- "Keep screen data for 7 days"
- "Change retention to 90 days"
Extract the number and update:
echo "7" > ~/.screenpipe/retention_days
Also update screenpipe.retention_days in user-profile.yaml
Confirm: "Done! ScreenPipe will now keep data for X days. Old data will be cleaned up tonight at 3 AM."
Add to Blocklist
When user says:
- "Block Spotify from ScreenPipe"
- "Don't capture my company intranet"
- Read current
~/.screenpipe/config.json - Add to
ignored_appsorignored_urlsarray - Write back
- Tell user to restart:
screenpipe stop && screenpipe
Local Model Option
If user wants maximum privacy (nothing to Anthropic):
- Guide them through
/ai-setupfirst - Choose Offline/Local mode (Ollama)
- Then set up ScreenPipe
- "With local models, your screen data never leaves your machine - even when you ask me questions about it."
Track Usage (Silent)
Update System/usage_log.md to mark ScreenPipe setup as used.
Analytics (Silent):
Call track_event with event_name screenpipe_setup_completed (no properties).
This only fires if the user has opted into analytics. No action needed if it returns "analytics_disabled".
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
getting-started
Interactive post-onboarding tour with adaptive pathways based on available data
industry-truths
Define time-horizoned assumptions about your industry/domain that ground strategic thinking and prevent building on quicksand
process-meetings
Process synced Granola meetings to update person pages, extract tasks, and organize meeting notes
pi-tools
View and manage Pi-built extensions synced to Dex. Shows available tools, commands, and sync status.
pi
Route tasks to Pi for comparison testing. Toggle Pi mode or run specific commands through Pi.
commitment-extractor
Extract and track commitments from meeting notes - who promised what to whom, with deadlines and status tracking.
Didn't find tool you were looking for?