|
774
|
19
|
5
|
2026-04-11T12:19:59.593870+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775909999593_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshO ₴6Sat 11 Apr 15:19:59-zsh181X7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
3457003340597606923
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshO ₴6Sat 11 Apr 15:19:59-zsh181X7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
|
775
|
19
|
6
|
2026-04-11T12:20:00.742149+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910000742_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-6431438662058337885
|
5648665543644016292
|
click
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
774
|
|
776
|
19
|
7
|
2026-04-11T12:20:03.379112+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910003379_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshS$86Sat 11 Apr 15:20:02-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-6211664272414387783
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshS$86Sat 11 Apr 15:20:02-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
|
777
|
19
|
8
|
2026-04-11T12:20:05.593303+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910005593_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshSat 11 Apr 15:20:05-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-5843879653536761032
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh17:0017:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1ClaudeUserNotificationCenterFinderControl CentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)8 frames4 frames1 frames1 frames55 frames4 frames4 frames2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshSat 11 Apr 15:20:05-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe-- прх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
776
|
|
778
|
19
|
9
|
2026-04-11T12:20:06.323054+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910006323_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-6431438662058337885
|
5648665543644016292
|
clipboard
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
779
|
19
|
10
|
2026-04-11T12:20:09.115613+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910009115_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditView17:0017:0017:0018:0018:0018:001 iTerm2ShellEditView17:0017:0017:0018:0018:0018:0018:00••DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaSessionScriptsProfilesWindowHelp-zshDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesO ₴2APP (-zsh)• *3-zsh• 84-zshlhl• 85-zsh100% C• ÷6Sat 11 Apr 15:20:08-zshT81*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addi stcioscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
7873937351387249250
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditView17:0017:0017:0018:0018:0018:001 iTerm2ShellEditView17:0017:0017:0018:0018:0018:0018:00••DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaSessionScriptsProfilesWindowHelp-zshDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesO ₴2APP (-zsh)• *3-zsh• 84-zshlhl• 85-zsh100% C• ÷6Sat 11 Apr 15:20:08-zshT81*7DiaDiaDiaDiaDiaDiaiTerm2{claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addi stcioscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
778
|
|
780
|
19
|
11
|
2026-04-11T12:20:09.703496+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910009703_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp-zsh(ahl• ₴5100% <7Sat 11 Apr 15:20:09-zsh181*717:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesО 882APP (-zsh)• ₴з-zsh• 84-zsh-zsh• ₴6DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g ®anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $||...
|
NULL
|
7361914754182480844
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp-zsh(ahl• ₴5100% <7Sat 11 Apr 15:20:09-zsh181*717:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesО 882APP (-zsh)• ₴з-zsh• 84-zsh-zsh• ₴6DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g ®anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $||...
|
NULL
|
|
781
|
19
|
12
|
2026-04-11T12:20:13.708991+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910013708_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp-zsh(ahl• ₴5100% <7Sat 11 Apr 15:20:13-zsh181*717:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesО 882APP (-zsh)• ₴з-zsh• 84-zsh-zsh• ₴6DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g ®anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $||...
|
NULL
|
1999439713174973040
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp-zsh(ahl• ₴5100% <7Sat 11 Apr 15:20:13-zsh181*717:0017:0017:0018:0018:0018:0018:00DOCKERO ₴1UserNotificationCenterFinderControlCentreiTerm2DiaClaudeSlackCLIPBOARD ACTIVITYiTerm2DiaDEV (-zsh)4 frames1 frames1 frames55 frames4 frames4 frames2 framesО 882APP (-zsh)• ₴з-zsh• 84-zsh-zsh• ₴6DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe-- nрх-Yscreenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install -g ®anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp add screenpipe--transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ § sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $||...
|
780
|
|
782
|
19
|
13
|
2026-04-11T12:20:15.470221+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910015470_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
5831419128070011902
|
5648665543644016292
|
click
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
783
|
19
|
14
|
2026-04-11T12:20:16.227334+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910016227_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-3187445132333914215
|
5648665612363492004
|
clipboard
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
782
|
|
784
|
19
|
15
|
2026-04-11T12:20:24.634944+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910024634_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell••18:00DOCKERSlackCLIPBOARD ACTIVITYiTe iTerm2Shell••18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaEditViewSession• ₴1ScriptsProfilesWindowHelplhl100% C-zshDEV (-zsh)2 framesO $2APP (-zsh)• *3-zsh• 84-zsh• 85-zsh• ÷6Sat 11 Apr 15:20:24-zshT81X7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -ylukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -ynpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe--transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $|...
|
NULL
|
-7848954432585761880
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell••18:00DOCKERSlackCLIPBOARD ACTIVITYiTe iTerm2Shell••18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaEditViewSession• ₴1ScriptsProfilesWindowHelplhl100% C-zshDEV (-zsh)2 framesO $2APP (-zsh)• *3-zsh• 84-zsh• 85-zsh• ÷6Sat 11 Apr 15:20:24-zshT81X7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -ylukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -ynpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe--transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install -g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $|...
|
NULL
|
|
785
|
19
|
16
|
2026-04-11T12:20:25.340983+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910025340_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaO ₴1DEV (-zsh)2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshO ₴6Sat 11 Apr 15:20:24-zsh181X7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install-g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
NULL
|
6877536316968894114
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaO ₴1DEV (-zsh)2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshO ₴6Sat 11 Apr 15:20:24-zsh181X7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install-g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
784
|
|
786
|
19
|
17
|
2026-04-11T12:20:26.948088+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910026948_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaO ₴1DEV (-zsh)2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshSat 11 Apr 15:20:26-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install-g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
NULL
|
-3863770007676133371
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zsh18:00DOCKERSlackCLIPBOARD ACTIVITYiTerm2DiaO ₴1DEV (-zsh)2 framesO $2APP (-zsh)• ₴з-zsh• 84-zsh• ₴5-zshSat 11 Apr 15:20:26-zsh181*7DiaDiaDiaDiaDiaDiaiTerm2claude mcp addscreenpipe -- npx-y screenpipe-mcplukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уclaude mcp addscreenpipe--transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user-- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcpaddscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npх -уnpm install-g @anthropic-ai/claude-codenpm install-g @anthropic-ai/claude-codeclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ S sqlite3~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1/1locr|blockliTerm21|010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1l311locr|blocklEdit|1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|blocklSession|1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
NULL
|
|
787
|
19
|
18
|
2026-04-11T12:20:27.760987+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910027760_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-1725556644437600667
|
5648665543644016292
|
clipboard
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
786
|
|
788
|
19
|
19
|
2026-04-11T12:20:35.328795+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910035328_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-8744299132617807326
|
5648665543644016292
|
click
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
789
|
19
|
20
|
2026-04-11T12:20:39.296778+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910039296_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
•iTerm2ShellEditView•DOCKERSessionScriptsProfilesW •iTerm2ShellEditView•DOCKERSessionScriptsProfilesWindowHelplhl100% C-zshDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O 882APP (-zsh)• *3-zsh• 84npm install@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• 85-zshX- 886Sat 11 Apr 15:20:38-zshT81X7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements 134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
5710352231768824736
|
NULL
|
click
|
ocr
|
NULL
|
•iTerm2ShellEditView•DOCKERSessionScriptsProfilesW •iTerm2ShellEditView•DOCKERSessionScriptsProfilesWindowHelplhl100% C-zshDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O 882APP (-zsh)• *3-zsh• 84npm install@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• 85-zshX- 886Sat 11 Apr 15:20:38-zshT81X7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements 134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
788
|
|
790
|
19
|
21
|
2026-04-11T12:20:40.351726+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910040351_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh2866Sat 11 Apr 15:20:39-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-1169454000205905735
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh2866Sat 11 Apr 15:20:39-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
|
791
|
19
|
22
|
2026-04-11T12:20:46.992158+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910046992_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh• ₴6Sat 11 Apr 15:20:46-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-8593343564963741519
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh• ₴6Sat 11 Apr 15:20:46-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
790
|
|
792
|
19
|
23
|
2026-04-11T12:20:49.999915+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910049999_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh• *6Sat 11 Apr 15:20:49-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-340860306090487745
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zsh• *6Sat 11 Apr 15:20:49-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elementsI34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
|
793
|
19
|
24
|
2026-04-11T12:21:05.980533+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910065980_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zshO 886Sat 11 Apr 15:21:05-zsh181X7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-3154699542442602452
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zshO 886Sat 11 Apr 15:21:05-zsh181X7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
792
|
|
794
|
19
|
25
|
2026-04-11T12:21:08.274240+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910068274_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zshO 886Sat 11 Apr 15:21:07-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
-4546070589986472412
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <7-zshDOCKERDiaDiaDiaDiaDiaDiaiTerm2{O ₴1DEV (-zsh)O $2APP (-zsh)• *3-zsh• 84npm install-g@anthropic-ai/claude-codelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -yclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transport stdio --scope user -- npx -y screenpipe-mclukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- пpх -уnpm install -g @anthropic-ai/claude-codenpm install -g @anthropic-ai/claude-codeclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcclaude mcp addscreenpipe --transportstdio --scope user -- npx -y screenpipe-mccurl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl http://localhost:3030/health-zsh• ₴5-zshO 886Sat 11 Apr 15:21:07-zsh181*7@ OCR TEXT SAMPLES PER APPiTerm2ShellEditViewSessionScriptsProfilesWindowHelp(10]100% C8Thu 9 Apr 19:53:14TOTALSFrames:523UI Events: 1305OCR texts: 271lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"1|1locr|block|iTerm2l1010.03633720919248210.0069767446842882210.033430231942070910.[CREDIT_CARD]|1.0101211locr|block|Shell||010.082848837470976810.006976744800567210.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|113|1locr|blocklEditl1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.0|214|1locr|block|Viewl|010.14825581445741110.006976744800567210.021802324718899210.[CREDIT_CARD]|1.0131511locrIblock|Session 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT 'memories'as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements', COUNT(*) FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"memorieslomeetings10elements134220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $...
|
NULL
|
|
795
|
19
|
26
|
2026-04-11T12:21:11.195152+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910071195_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear","depth":4,"value":")\n/* frames_fts(full_text,app_name,window_name,browser_url,id) */;\nCREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;\nCREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);\nCREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);\nCREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;\nCREATE TRIGGER frames_ai AFTER INSERT ON frames\nWHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''\nBEGIN\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n VALUES (\n NEW.id,\n NEW.full_text,\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n );\nEND;\nCREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\n INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)\n SELECT\n NEW.id,\n COALESCE(NEW.full_text, ''),\n COALESCE(NEW.app_name, ''),\n COALESCE(NEW.window_name, ''),\n COALESCE(NEW.browser_url, '')\n WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';\nEND;\nCREATE TRIGGER frames_ad AFTER DELETE ON frames\nBEGIN\n DELETE FROM frames_fts WHERE id = OLD.id;\nEND;\nCREATE INDEX idx_memories_frame_id ON memories(frame_id);\nCREATE INDEX idx_elements_source_role_text\n ON elements(source, role, frame_id)\n WHERE text IS NOT NULL;\nCREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;\nCREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);\"\n2026-04-09|523\n2026-04-11|197\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name\nORDER BY frames DESC;\n\"\niTerm2|185|13.9\nDia|31|2.3\nSafari|20|1.5\nClaude|12|0.9\nUserNotificationCenter|4|0.3\nControl Centre|3|0.2\nSlack|2|0.1\nActivity Monitor|2|0.1\nFinder|1|0.1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT browser_url, COUNT(*) as frames\nFROM frames\nWHERE date(timestamp) = date('now', '-2 day')\nAND browser_url IS NOT NULL\nGROUP BY browser_url\nORDER BY frames DESC\nLIMIT 20;\n\"\nhttps://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21|13\nhttps://location-tracker.lakylak.xyz/dashboard|4\nhttps://nas.lakylak.xyz/desktop/?os=ugospro#/|2\nhttps://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT app_name, event_type, COUNT(*) as events\nFROM ui_events\nWHERE date(timestamp) = date('now', '-2 day')\nAND app_name IS NOT NULL\nGROUP BY app_name, event_type\nORDER BY events DESC\nLIMIT 30;\n\"\niTerm2|click|283\nDia|click|171\niTerm2|key|122\nDia|key|56\nSafari|click|56\nClaude|click|50\niTerm2|app_switch|34\nDia|clipboard|17\nSafari|key|11\nClaude|app_switch|9\nDia|app_switch|9\nUserNotificationCenter|click|8\nClaude|key|6\niTerm2|clipboard|6\nUserNotificationCenter|app_switch|4\nSafari|app_switch|3\nSlack|app_switch|1\nSlack|click|1\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >.... \nWHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL\nGROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;\"\n\necho \"\\n🕐\u0000 HOURLY TIMELINE\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))\nFROM frames\nWHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL\nGROUP BY strftime('%H', timestamp), app_name\nORDER BY strftime('%H', timestamp), COUNT(*) DESC;\"\n\necho \"\\n📋\u0000 CLIPBOARD ACTIVITY\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))\nFROM ui_events\nWHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL\nORDER BY timestamp LIMIT 20;\"\n\necho \"\\n💬\u0000 OCR TEXT SAMPLES PER APP\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))\nFROM ocr_text o\nJOIN frames f ON o.frame_id = f.id\nWHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''\nGROUP BY o.app_name\nORDER BY o.app_name LIMIT 15;\"\n\necho \"\\n🔢\u0000 TOTALS\"\necho \"───────────────────────────────────────\"\nsqlite3 \"$DB\" \"\nSELECT\n 'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';\n\"\nsqlite3 \"$DB\" \"\nSELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';\n\"\nEOF\nchmod +x ~/screenpipe-day.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll \ntotal 162888\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 ..\n-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json\ndrwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data\n-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite\n-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal\ndrwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls\nApplications\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDocuments\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMovies\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPublic\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tjiminny\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tscreenpipe-day.sh\nCascadeProjects\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tDownloads\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tMusic\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUntitled 4.spf\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tnode_modules\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tyarn.lock\nDEV\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tKeychron_Screen\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPictures\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tUsers\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\traycast\nDesktop\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tLibrary\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tPostman\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0000\u0000\u0000\tiCloud Drive (Archive)\u0000\tresponse.bin\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll\ntotal 1272\ndrwx------+ 89 lukas staff 2848 11 Apr 15:16 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store\ndrwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude\n-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 9 Apr 18:24 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 9 lukas staff 288 11 Apr 14:52 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc\ndrwx------@ 9 lukas staff 288 9 Apr 20:08 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV\ndrwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 11:35 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09\n═══════════════════════════════════════\n SCREENPIPE REPORT — 2026-04-09\n═══════════════════════════════════════\n\n📱\u0000 APP USAGE (frames + estimated time)\n───────────────────────────────────────\niTerm2 185 frames ~ 13.9 min\nDia 31 frames ~ 2.3 min\nSafari 20 frames ~ 1.5 min\nClaude 12 frames ~ 0.9 min\nUserNotificationCenter 4 frames ~ 0.3 min\nControl Centre 3 frames ~ 0.2 min\nSlack 2 frames ~ 0.1 min\nActivity Monitor 2 frames ~ 0.1 min\nFinder 1 frames ~ 0.1 min\n\n⌨️\u0000 ACTIVITY TYPE PER APP (clicks / keys / switches)\n───────────────────────────────────────\niTerm2 clicks:283 keys:122 switches:34 \nDia clicks:171 keys:56 switches:9 \nSafari clicks:56 keys:11 switches:3 \nClaude clicks:50 keys:6 switches:9 \nUserNotificationCenter clicks:8 keys:0 switches:4 \nSlack clicks:1 keys:0 switches:1 \n\n🌐\u0000 BROWSER URLS VISITED\n───────────────────────────────────────\n 13 frames https://play.hbomax.com/video/watch/16b35e6c-e745-4416-bc16-0ef5092ba4e0/07b58730-24cb-419c-b5a0-1e258a77cd21\n 4 frames https://location-tracker.lakylak.xyz/dashboard\n 2 frames https://nas.lakylak.xyz/desktop/?os=ugospro#/\n 1 frames https://play.hbomax.com/show/06f986dd-dd6a-4596-9a0a-f473ef99c64b\n\n🪟\u0000 WINDOW TITLES (top 20)\n───────────────────────────────────────\niTerm2 93 -zsh\niTerm2 34 screenpipe\"\nSafari 13 Order Room Service • HBO Max\nClaude 12 Claude\niTerm2 8 ✳ Find cheapest WD Red Plus 6TB price\nDia 7 Personal: New Tab\niTerm2 7 ✳ Claude Code\niTerm2 7 ⠂ Find cheapest WD Red Plus 6TB price\niTerm2 7 ⠂ Research Western Digital Red Plus pricing\niTerm2 7 ⠐ Research Western Digital Red Plus pricing\nDia 6 Personal: GitHub - scree…\niTerm2 5 ✳ Research Western Digital Red Plus pricing\nSafari 4 Location Logger\nUserNotificationCenter 4 \niTerm2 4 nano\niTerm2 4 ⠐ Find cheapest WD Red Plus 6TB price\nControl Centre 3 Control Centre\nDia 3 Personal: Western Digita…\niTerm2 3 ✳ Check today's app usage\nActivity Monitor 2 Activity Monitor – All Processes\n\n🕐\u0000 HOURLY TIMELINE\n───────────────────────────────────────\n16:00 iTerm2 14 frames\n16:00 Safari 4 frames\n16:00 Dia 3 frames\n16:00 Control Centre 2 frames\n16:00 Activity Monitor 2 frames\n17:00 iTerm2 116 frames\n17:00 Dia 24 frames\n17:00 Safari 16 frames\n17:00 Claude 8 frames\n17:00 UserNotificationCenter 4 frames\n17:00 Finder 1 frames\n17:00 Control Centre 1 frames\n18:00 iTerm2 55 frames\n18:00 Dia 4 frames\n18:00 Claude 4 frames\n18:00 Slack 2 frames\n\n📋\u0000 CLIPBOARD ACTIVITY\n───────────────────────────────────────\niTerm2 claude mcp add screenpipe -- npx -y screenpipe-mcp\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\nDia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-6883981401558721013
|
5648665543644016292
|
visual_change
|
accessibility
|
NULL
|
)
/* frames_fts(full_text,app_name,window_name,bro )
/* frames_fts(full_text,app_name,window_name,browser_url,id) */;
CREATE TABLE IF NOT EXISTS 'frames_fts_data'(id INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_idx'(segid, term, pgno, PRIMARY KEY(segid, term)) WITHOUT ROWID;
CREATE TABLE IF NOT EXISTS 'frames_fts_content'(id INTEGER PRIMARY KEY, c0, c1, c2, c3, c4);
CREATE TABLE IF NOT EXISTS 'frames_fts_docsize'(id INTEGER PRIMARY KEY, sz BLOB);
CREATE TABLE IF NOT EXISTS 'frames_fts_config'(k PRIMARY KEY, v) WITHOUT ROWID;
CREATE TRIGGER frames_ai AFTER INSERT ON frames
WHEN NEW.full_text IS NOT NULL AND NEW.full_text != ''
BEGIN
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
VALUES (
NEW.id,
NEW.full_text,
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
);
END;
CREATE TRIGGER frames_au AFTER UPDATE OF full_text, app_name, window_name, browser_url ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
INSERT INTO frames_fts(id, full_text, app_name, window_name, browser_url)
SELECT
NEW.id,
COALESCE(NEW.full_text, ''),
COALESCE(NEW.app_name, ''),
COALESCE(NEW.window_name, ''),
COALESCE(NEW.browser_url, '')
WHERE NEW.full_text IS NOT NULL AND NEW.full_text != '';
END;
CREATE TRIGGER frames_ad AFTER DELETE ON frames
BEGIN
DELETE FROM frames_fts WHERE id = OLD.id;
END;
CREATE INDEX idx_memories_frame_id ON memories(frame_id);
CREATE INDEX idx_elements_source_role_text
ON elements(source, role, frame_id)
WHERE text IS NOT NULL;
CREATE INDEX idx_frames_sync_id ON frames(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_ocr_text_sync_id ON ocr_text(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_audio_transcriptions_sync_id ON audio_transcriptions(sync_id) WHERE sync_id IS NOT NULL;
CREATE INDEX idx_elements_frame_source_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT date(timestamp), COUNT(*) as frames FROM frames GROUP BY date(timestamp) ORDER BY date(timestamp);"
2026-04-09|523
2026-04-11|197
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, COUNT(*) as frames, ROUND(COUNT(*) * 4.5 / 60.0, 1) as est_minutes
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name
ORDER BY frames DESC;
"
iTerm2|185|13.9
Dia|31|2.3
Safari|20|1.5
Claude|12|0.9
UserNotificationCenter|4|0.3
Control Centre|3|0.2
Slack|2|0.1
Activity Monitor|2|0.1
Finder|1|0.1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT browser_url, COUNT(*) as frames
FROM frames
WHERE date(timestamp) = date('now', '-2 day')
AND browser_url IS NOT NULL
GROUP BY browser_url
ORDER BY frames DESC
LIMIT 20;
"
[URL_WITH_CREDENTIALS] ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT app_name, event_type, COUNT(*) as events
FROM ui_events
WHERE date(timestamp) = date('now', '-2 day')
AND app_name IS NOT NULL
GROUP BY app_name, event_type
ORDER BY events DESC
LIMIT 30;
"
iTerm2|click|283
Dia|click|171
iTerm2|key|122
Dia|key|56
Safari|click|56
Claude|click|50
iTerm2|app_switch|34
Dia|clipboard|17
Safari|key|11
Claude|app_switch|9
Dia|app_switch|9
UserNotificationCenter|click|8
Claude|key|6
iTerm2|clipboard|6
UserNotificationCenter|app_switch|4
Safari|app_switch|3
Slack|app_switch|1
Slack|click|1
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ >....
WHERE date(timestamp) = '$DATE' AND window_name IS NOT NULL AND app_name IS NOT NULL
GROUP BY app_name, window_name ORDER BY COUNT(*) DESC LIMIT 20;"
echo "\n🕐 HOURLY TIMELINE"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%s %-20s %3d frames', strftime('%H:00', timestamp), app_name, COUNT(*))
FROM frames
WHERE date(timestamp) = '$DATE' AND app_name IS NOT NULL
GROUP BY strftime('%H', timestamp), app_name
ORDER BY strftime('%H', timestamp), COUNT(*) DESC;"
echo "\n📋 CLIPBOARD ACTIVITY"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-20s %s', app_name, SUBSTR(text_content, 1, 80))
FROM ui_events
WHERE date(timestamp) = '$DATE' AND event_type = 'clipboard' AND text_content IS NOT NULL
ORDER BY timestamp LIMIT 20;"
echo "\n💬 OCR TEXT SAMPLES PER APP"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT printf('%-15s %s', o.app_name, SUBSTR(o.text, 1, 80))
FROM ocr_text o
JOIN frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$DATE' AND o.app_name IS NOT NULL AND o.text != ''
GROUP BY o.app_name
ORDER BY o.app_name LIMIT 15;"
echo "\n🔢 TOTALS"
echo "───────────────────────────────────────"
sqlite3 "$DB" "
SELECT
'Frames: ' || COUNT(*) FROM frames WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'UI Events: ' || COUNT(*) FROM ui_events WHERE date(timestamp) = '$DATE';
"
sqlite3 "$DB" "
SELECT 'OCR texts: ' || COUNT(*) FROM ocr_text o JOIN frames f ON o.frame_id = f.id WHERE date(f.timestamp) = '$DATE';
"
EOF
chmod +x ~/screenpipe-day.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 162888
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .
drwx------+ 89 lukas staff 2848 11 Apr 15:16 ..
-rw-r--r-- 1 lukas staff 270 9 Apr 20:27 config.json
drwxr-xr-x 5 lukas staff 160 11 Apr 15:03 data
-rw-r--r-- 1 lukas staff 73764864 11 Apr 15:12 db.sqlite
-rw-r--r-- 1 lukas staff 32768 11 Apr 14:52 db.sqlite-shm
-rw-r--r-- 1 lukas staff 8742672 11 Apr 15:16 db.sqlite-wal
drwxr-xr-x 8 lukas staff 256 9 Apr 19:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 17246 11 Apr 15:16 screenpipe.2026-04-11.0.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ls
Applications Documents Movies Public jiminny screenpipe-day.sh
CascadeProjects Downloads Music Untitled 4.spf node_modules yarn.lock
DEV Keychron_Screen Pictures Users raycast
Desktop Library Postman iCloud Drive (Archive) response.bin
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 1272
drwx------+ 89 lukas staff 2848 11 Apr 15:16 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 22532 11 Apr 11:15 .DS_Store
drwx------+ 2 lukas staff 64 11 Apr 11:15 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 9 Apr 21:21 .claude
-rw------- 1 lukas staff 24973 9 Apr 21:24 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 9 Apr 18:24 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 31 Mar 18:32 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 9 lukas staff 288 11 Apr 14:52 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 10 lukas staff 320 11 Apr 14:52 .screenpipe
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12183 8 Apr 19:14 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r--@ 1 lukas staff 49518 6 Apr 14:31 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 20:34 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 5641 9 Apr 20:30 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 28813 11 Apr 11:12 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 362 25 Jul 2025 .zshrc
drwx------@ 9 lukas staff 288 9 Apr 20:08 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 09:35 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 09:24 DEV
drwx------@ 5 lukas staff 160 11 Apr 14:53 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 41 lukas staff 1312 8 Apr 20:46 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 11:35 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 18:15 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ~/screenpipe-day.sh 2026-04-09
═══════════════════════════════════════
SCREENPIPE REPORT — 2026-04-09
═══════════════════════════════════════
📱 APP USAGE (frames + estimated time)
───────────────────────────────────────
iTerm2 185 frames ~ 13.9 min
Dia 31 frames ~ 2.3 min
Safari 20 frames ~ 1.5 min
Claude 12 frames ~ 0.9 min
UserNotificationCenter 4 frames ~ 0.3 min
Control Centre 3 frames ~ 0.2 min
Slack 2 frames ~ 0.1 min
Activity Monitor 2 frames ~ 0.1 min
Finder 1 frames ~ 0.1 min
⌨️ ACTIVITY TYPE PER APP (clicks / keys / switches)
───────────────────────────────────────
iTerm2 clicks:283 keys:122 switches:34
Dia clicks:171 keys:56 switches:9
Safari clicks:56 keys:11 switches:3
Claude clicks:50 keys:6 switches:9
UserNotificationCenter clicks:8 keys:0 switches:4
Slack clicks:1 keys:0 switches:1
🌐 BROWSER URLS VISITED
───────────────────────────────────────
13 frames [URL_WITH_CREDENTIALS] ~ $ claude mcp add screenpipe -- npx -y
Dia lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
794
|
|
796
|
19
|
27
|
2026-04-11T12:21:12.732109+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910072732_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-1441934453800214163
|
6658597508763200175
|
clipboard
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
797
|
19
|
28
|
2026-04-11T12:21:14.241026+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910074241_m1.jpg...
|
iTerm2
|
sqlite3
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
sqlite3
Close Tab
⌥⌘1
sqlite3...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"sqlite3","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"sqlite3","depth":1,"bounds":{"left":0.4826389,"top":0.033333335,"width":0.034027778,"height":0.017777778},"role_description":"text"}]...
|
8315006965312361648
|
6730654965363223212
|
visual_change
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
sqlite3
Close Tab
⌥⌘1
sqlite3...
|
796
|
|
798
|
19
|
29
|
2026-04-11T12:21:18.310037+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910078310_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpDOCKER• ₴1DEV (-zsh)O $2APP (-zsh)• *зlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT f.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) asframesFROMelements eJOINframes f ONe.frame_id = f.idWHERE e.text IS NOT NULLGROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884117iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $|-zsh-zsh• 8440lhl-zsh• 85-zsh100% CSat 11 Apr 15:21:17T81• *6-zsh*7...
|
NULL
|
6673681919030703419
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpDOCKER• ₴1DEV (-zsh)O $2APP (-zsh)• *зlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT f.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) asframesFROMelements eJOINframes f ONe.frame_id = f.idWHERE e.text IS NOT NULLGROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884117iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $|-zsh-zsh• 8440lhl-zsh• 85-zsh100% CSat 11 Apr 15:21:17T81• *6-zsh*7...
|
NULL
|
|
799
|
19
|
30
|
2026-04-11T12:21:20.305435+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910080305_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionlScriptsProfilesWindowHe iTerm2ShellEditViewSessionlScriptsProfilesWindowHelpDOCKERO ₴1DEV (-zsh)О 882APP (-zsh)• ₴зlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) asframesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884117iTerm2120871136CLaude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U-zsh-zsh• 84$0(ahl-zsh• ₴5-zsh100% <7Sat 11 Apr 15:21:19181O 886-zsh*7...
|
NULL
|
-5640477703785582694
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionlScriptsProfilesWindowHe iTerm2ShellEditViewSessionlScriptsProfilesWindowHelpDOCKERO ₴1DEV (-zsh)О 882APP (-zsh)• ₴зlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) asframesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884117iTerm2120871136CLaude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U-zsh-zsh• 84$0(ahl-zsh• ₴5-zsh100% <7Sat 11 Apr 15:21:19181O 886-zsh*7...
|
798
|
|
800
|
19
|
31
|
2026-04-11T12:21:20.749473+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910080749_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
6654558723145318115
|
6730654965362174639
|
click
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
801
|
19
|
32
|
2026-04-11T12:21:21.142421+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910081142_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-2874204950340210378
|
6730655102801128111
|
clipboard
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
800
|
|
802
|
19
|
33
|
2026-04-11T12:21:25.247888+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910085247_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelplhl100% C-zshDOCKERO ₴1DEV (-zsh)-O $2APP (-zsh)• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementsJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• 85-zsh• *6Sat 11 Apr 15:21:24-zshT81*7...
|
NULL
|
5253162369191389529
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelplhl100% C-zshDOCKERO ₴1DEV (-zsh)-O $2APP (-zsh)• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementsJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• 85-zsh• *6Sat 11 Apr 15:21:24-zshT81*7...
|
NULL
|
|
803
|
19
|
34
|
2026-04-11T12:21:26.336012+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910086336_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHe iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHelp$0(ahl100% <7•• 0-zsh|DOCKERO ₴1DEV (-zsh)-О 882APP (-zsh)|• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementseJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ П-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:25-zsh181X7...
|
NULL
|
2221855361542388760
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHe iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHelp$0(ahl100% <7•• 0-zsh|DOCKERO ₴1DEV (-zsh)-О 882APP (-zsh)|• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementseJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ П-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:25-zsh181X7...
|
802
|
|
804
|
19
|
35
|
2026-04-11T12:21:27.089580+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910087089_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHe iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHelp$0(ahl100% <7•• 0-zsh|DOCKERO ₴1DEV (-zsh)-О 882APP (-zsh)|• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementseJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ П-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:26-zsh181X7...
|
NULL
|
5164026862691397463
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHe iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHelp$0(ahl100% <7•• 0-zsh|DOCKERO ₴1DEV (-zsh)-О 882APP (-zsh)|• *3lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~Ssqlite3~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframes f ONe.frame_id = f.idWHEREe.text IS NOT NULLGROUPBY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementseJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ П-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:26-zsh181X7...
|
NULL
|
|
805
|
19
|
36
|
2026-04-11T12:21:27.573521+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910087573_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
543137638070975888
|
6730725471545306026
|
click
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
804
|
|
806
|
19
|
37
|
2026-04-11T12:21:27.826612+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910087826_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-4121554977823788588
|
6730725471545306026
|
clipboard
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
807
|
19
|
38
|
2026-04-11T12:21:29.374019+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910089374_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-1610790630866244402
|
6730725469397822378
|
visual_change
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
806
|
|
808
|
19
|
39
|
2026-04-11T12:21:32.409072+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910092409_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-2155183469395643749
|
5693765216978349033
|
visual_change
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
809
|
19
|
40
|
2026-04-11T12:21:48.580089+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910108580_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelplhl100% C-zshDOCKERO ₴1DEV (-zsh)-O 882APP (-zsh)•*зGROUP BY f.app_nameORDER BYelements DESC;"1246041206Dial2884117iTerm2120871136CLaude|204018Safaril1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ Ssqlite3~/.screenpipe/db.sqlite "SELECTe.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elementseJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max IBackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|UkoncitprehrávanieOrder Room Service • HBO Max|RozbalitEpizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO Max|Celá obrazovkaOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBOMax| FavouritesOrder Room Service • HBOMax|Tab Group FavouritesOrder Room Service • HBO Max|NASOrder Room Service • HBO Max| HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• 85-zsh• *6Sat 11 Apr 15:21:48-zshT81*7...
|
NULL
|
8299091789282763233
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelplhl100% C-zshDOCKERO ₴1DEV (-zsh)-O 882APP (-zsh)•*зGROUP BY f.app_nameORDER BYelements DESC;"1246041206Dial2884117iTerm2120871136CLaude|204018Safaril1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ Ssqlite3~/.screenpipe/db.sqlite "SELECTe.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elementseJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max IBackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|UkoncitprehrávanieOrder Room Service • HBO Max|RozbalitEpizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO Max|Celá obrazovkaOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBOMax| FavouritesOrder Room Service • HBOMax|Tab Group FavouritesOrder Room Service • HBO Max|NASOrder Room Service • HBO Max| HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• 85-zsh• *6Sat 11 Apr 15:21:48-zshT81*7...
|
808
|
|
810
|
19
|
41
|
2026-04-11T12:21:49.844435+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910109844_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahl100% <7-zshDOCKERO ₴1DEV (-zsh)О 882APP (-zsh)• ₴зGROUPBY f.app_nameORDER BYelements DESC;"1246041206Dial2884117iTerm2120871136CLaude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECTe.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max IBackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|UkoncitprehrávanieOrder Room Service • HBO Max|RozbalitEpizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO Max|Celá obrazovkaOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max| FavouritesOrder Room Service • HB0Max|Tab Group FavouritesOrder Room Service • HBO Max|NASOrder Room Service • HBO Max| HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:49-zsh181X7...
|
NULL
|
64628468849409068
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahl100% <7-zshDOCKERO ₴1DEV (-zsh)О 882APP (-zsh)• ₴зGROUPBY f.app_nameORDER BYelements DESC;"1246041206Dial2884117iTerm2120871136CLaude|204018Safaril1248110Firefox|45411Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECTe.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max IBackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|UkoncitprehrávanieOrder Room Service • HBO Max|RozbalitEpizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO Max|Celá obrazovkaOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max| FavouritesOrder Room Service • HB0Max|Tab Group FavouritesOrder Room Service • HBO Max|NASOrder Room Service • HBO Max| HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• 84-zsh• ₴5-zshO 886Sat 11 Apr 15:21:49-zsh181X7...
|
NULL
|
|
811
|
19
|
42
|
2026-04-11T12:22:20.206341+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910140206_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <7-zshDOCKERO ₴1DEV (-zsh)O $2APP (-zsh)• ₴з-zsh• 84311locr|blocklEdit/1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|block|Session| 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~Ssqlite3SELECT"memories'~/.screenpipe/db.sqlite"as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements'.COUNT(*)FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*)FROM ocr_text;"memories10meetings10elements/34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $clearlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~5sqlites~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframesfONe. frame_id = f.idWHEREe.textIS NOT NULLGROUP BY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude |204018Safaril1248110Firefox|454|1Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementsJOIN frames f ON e. frame_id = f.idWHERE f.app_name ='iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max|BackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|Ukoncit prehrávanie-zsh• ₴5-zsh• ₴6Sat 11 Apr 15:22:20-zsh181*7...
|
NULL
|
9206875911778196304
|
NULL
|
idle
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <7-zshDOCKERO ₴1DEV (-zsh)O $2APP (-zsh)• ₴з-zsh• 84311locr|blocklEdit/1010.11773255890768610.0069767444129703610.017441859510209810.[CREDIT_CARD]|1.01214|1locr|blocklViewl 1010.14825581445741110.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0131511locr|block|Session| 1010.18157913831779510.00625754295475710.035097538100348610.[CREDIT_CARD]|1.0141lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~Ssqlite3SELECT"memories'~/.screenpipe/db.sqlite"as tbl, COUNT(*) FROM memoriesUNION ALL SELECT 'meetings', COUNT(*) FROM meetingsUNION ALL SELECT 'elements'.COUNT(*)FROM elementsUNION ALL SELECT 'ocr_text', COUNT(*)FROM ocr_text;"memories10meetings10elements/34220ocr_text|448lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $clearlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~5sqlites~/.screenpipe/db.sqlite"SELECTf.app_name,COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as framesFROMelementsJOINframesfONe. frame_id = f.idWHEREe.textIS NOT NULLGROUP BY f.app_nameORDER BYelements DESC;"124604|206Dial 2884|17iTerm2120871136Claude |204018Safaril1248110Firefox|454|1Activity Monitor|38012Slack|23411Control Centrel17811UserNotificationCenter|2014lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite"SELECT e.textFROM elementsJOIN frames f ON e. frame_id = f.idWHERE f.app_name ='iTerm2' AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S sqlite3~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max|BackOrder Room Service • HBO Max|SearchOrder Room Service • HBO Max|Ukoncit prehrávanie-zsh• ₴5-zsh• ₴6Sat 11 Apr 15:22:20-zsh181*7...
|
810
|
|
812
|
19
|
43
|
2026-04-11T12:22:22.891394+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910142891_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-2155183469395643749
|
5693765216978349033
|
click
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
813
|
19
|
44
|
2026-04-11T12:22:27.971764+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910147971_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp100% <47-zshDOCKER0 ₴1DEV (-zsh)O $2APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• *4-zsh• *5-zsh186Sat 11 Apr 15:22:27-zshT81X7...
|
NULL
|
-6765662976551022262
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp100% <47-zshDOCKER0 ₴1DEV (-zsh)O $2APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $-zsh• *4-zsh• *5-zsh186Sat 11 Apr 15:22:27-zshT81X7...
|
812
|
|
814
|
19
|
45
|
2026-04-11T12:22:28.957994+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910148957_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% (-zsh-zsh• *4-zsh• *5-zsh-₴6Sat 11 Apr 15:22:28-zshT81X7...
|
NULL
|
6688757446448206917
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% (-zsh-zsh• *4-zsh• *5-zsh-₴6Sat 11 Apr 15:22:28-zshT81X7...
|
NULL
|
|
815
|
19
|
46
|
2026-04-11T12:22:45.189738+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910165189_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $100% C-zshSat 11 Apr 15:22:45T81-zsh• *4-zsh• 25-zshO 886-zshX7...
|
NULL
|
3631139111191140805
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $100% C-zshSat 11 Apr 15:22:45T81-zsh• *4-zsh• 25-zshO 886-zshX7...
|
814
|
|
816
|
19
|
47
|
2026-04-11T12:22:48.227825+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910168227_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• 25-zshO 886Sat 11 Apr 15:22:48-zshT81X7...
|
NULL
|
5153973352737788875
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• 25-zshO 886Sat 11 Apr 15:22:48-zshT81X7...
|
NULL
|
|
817
|
19
|
48
|
2026-04-11T12:23:13.989229+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910193989_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• x5-zshO 886Sat 11 Apr 15:23:13-zshT81X7...
|
NULL
|
-1358792894965699850
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• x5-zshO 886Sat 11 Apr 15:23:13-zshT81X7...
|
816
|
|
818
|
19
|
49
|
2026-04-11T12:23:17.724423+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910197724_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER• ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• x5-zshO 886Sat 11 Apr 15:23:17-zshT81*7...
|
NULL
|
1778239528528334413
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER• ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $C$Ш OOA100% C-zsh-zsh• *4-zsh• x5-zshO 886Sat 11 Apr 15:23:17-zshT81*7...
|
NULL
|
|
819
|
19
|
50
|
2026-04-11T12:23:22.380001+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910202380_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $100% C-zshSat 11 Apr 15:23:22T81-zsh• *4-zsh• 25-zshO 886-zshX7...
|
NULL
|
-5644191924573083133
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell Edit ViewSessionScriptsProfilesWindowH iTerm2Shell Edit ViewSessionScriptsProfilesWindowHelp• 0DOCKER0 ₴1DEV (-zsh)О 882APP (-zsh)• *3GROUP BY f.app_nameORDER BY elements DESC;"124604|206Dial2884|17iTerm2120871136Claude|204018Safari |1248|10Firefox|45411Activity Monitor|38012Slack|23411Control Centrel178|1UserNotificationCenter|2014Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT e.textFROM elements eJOIN frames f ON e.frame_id = f.idWHERE f.app_name = 'iTerm2'AND e.role = 'block' AND e.text NOT NULLLIMIT 30;"Lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT f.window_name, e.textFROM elements eJOIN frames f ON e. frame_id = f.idWHERE f.app_name = 'Safari' AND e.text IS NOT NULLLIMIT 20;"Order Room Service • HBO Max |BackOrder Room Service • HBO Max | SearchOrder Room Service • HBO Max|Ukoncit prehrávanieOrder Room Service • HBO Max|Rozbalit Epizód, 1 z 2Order Room Service • HBO Max|Rozbalit Tiez by sa vám mohlo pácit, 2 z 2Order Room Service • HBO Max|Preskocit dozadu o 10 sOrder Room Service • HBO Max|PozastavitOrder Room Service • HBO Max|Preskocit dopredu o 10 sekúndOrder Room Service • HBO Max|Hlasitost 100 %Order Room Service • HBO Max|Nastavenia zvuku a titulkovOrder Room Service • HBO MaxICelá obrazovkaOrder Room Service • HBO Max|close tabOrder Room Service • HBO Max|close tabOrder Room Service • HBO MaxIclose tabOrder Room Service • HBO Max|FavouritesOrder Room Service • HBO Max|Tab Group FavouritesOrder Room Service • HBO Max | NASOrder Room Service • HBO Max | HomeOrder Room Service • HBO Max|PortainerOrder Room Service • HBO Max|Nginx Proxy Managerlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $100% C-zshSat 11 Apr 15:23:22T81-zsh• *4-zsh• 25-zshO 886-zshX7...
|
818
|
|
820
|
19
|
51
|
2026-04-11T12:23:23.355286+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910203355_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-2155183469395643749
|
5693765216978349033
|
click
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
821
|
19
|
52
|
2026-04-11T12:23:24.548795+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910204548_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clea
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clea","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y\n npm install -g @anthropic-ai/claude-code\nDia npm install -g @anthropic-ai/claude-code\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\n claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\nDia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc\niTerm2 curl http://localhost:3030/health\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ curl http://localhost:3030/health\n{\n\n💬\u0000 OCR TEXT SAMPLES PER APP\n───────────────────────────────────────\n iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(io]100% C8Thu 9 Apr 19:53:14\n\n🔢\u0000 TOTALS\n───────────────────────────────────────\nFrames: 523\nUI Events: 1305\nOCR texts: 271\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM memories LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM meetings LIMIT 5;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT * FROM elements LIMIT 5;\"\n1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.0334302319420709|0.0139534876081678|1.0|0|\n2|1|ocr|block|Shell||0|0.0828488374709768|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|1|\n3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.0174418595102098|0.0139534876081678|1.0|2|\n4|1|ocr|block|View||0|0.148255814457411|0.0069767448005672|0.0218023247188992|0.0139534876081678|1.0|3|\n5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.0350975381003486|0.0153918912675646|1.0|4|\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT 'memories' as tbl, COUNT(*) FROM memories\nUNION ALL SELECT 'meetings', COUNT(*) FROM meetings\nUNION ALL SELECT 'elements', COUNT(*) FROM elements\nUNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;\"\nmemories|0\nmeetings|0\nelements|34220\nocr_text|448\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE e.text IS NOT NULL\nGROUP BY f.app_name\nORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clea","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
2774038436661058009
|
5693765216978349033
|
visual_change
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claud lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ claude mcp add screenpipe -- npx -y
npm install -g @anthropic-ai/claude-code
Dia npm install -g @anthropic-ai/claude-code
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
Dia claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mc
iTerm2 curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ curl [URL_WITH_CREDENTIALS] ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM memories LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM meetings LIMIT 5;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT * FROM elements LIMIT 5;"
1|1|ocr|block|iTerm2||0|0.036337209192482|0.00697674468428822|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|0|
2|1|ocr|block|Shell||0|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|1|
3|1|ocr|block|Edit||0|0.117732558907686|0.00697674441297036|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|2|
4|1|ocr|block|View||0|0.148255814457411|0.[CREDIT_CARD]|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|3|
5|1|ocr|block|Session||0|0.181579138317795|0.006257542954757|0.[CREDIT_CARD]|0.[CREDIT_CARD]|1.0|4|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT 'memories' as tbl, COUNT(*) FROM memories
UNION ALL SELECT 'meetings', COUNT(*) FROM meetings
UNION ALL SELECT 'elements', COUNT(*) FROM elements
UNION ALL SELECT 'ocr_text', COUNT(*) FROM ocr_text;"
memories|0
meetings|0
elements|34220
ocr_text|448
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.app_name, COUNT(*) as elements, COUNT(DISTINCT e.frame_id) as frames
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE e.text IS NOT NULL
GROUP BY f.app_name
ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clea
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
820
|
|
822
|
19
|
53
|
2026-04-11T12:23:26.995460+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910206995_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ORDER BY elements DESC;"
|24604|206
Dia|2884|1 ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?
sqlite3 ~/.screenpipe/db.sqlite "SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;"
# What are those 24k elements with no app_name?
sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, COUNT(*) as cnt
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name IS NULL AND e.text IS NOT NULL
GROUP BY f.window_name
ORDER BY cnt DESC
LIMIT 10;"
# iTerm2 elements with any role
sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.role, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL
LIMIT 20;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?\nsqlite3 ~/.screenpipe/db.sqlite \"SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;\"\n\n# What are those 24k elements with no app_name?\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, COUNT(*) as cnt\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name IS NULL AND e.text IS NOT NULL\nGROUP BY f.window_name\nORDER BY cnt DESC\nLIMIT 10;\"\n\n# iTerm2 elements with any role\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.role, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL\nLIMIT 20;\"","depth":4,"value":"ORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?\nsqlite3 ~/.screenpipe/db.sqlite \"SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;\"\n\n# What are those 24k elements with no app_name?\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, COUNT(*) as cnt\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name IS NULL AND e.text IS NOT NULL\nGROUP BY f.window_name\nORDER BY cnt DESC\nLIMIT 10;\"\n\n# iTerm2 elements with any role\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.role, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL\nLIMIT 20;\"","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-6918525387471082492
|
5694749881180760521
|
clipboard
|
accessibility
|
NULL
|
ORDER BY elements DESC;"
|24604|206
Dia|2884|1 ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?
sqlite3 ~/.screenpipe/db.sqlite "SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;"
# What are those 24k elements with no app_name?
sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, COUNT(*) as cnt
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name IS NULL AND e.text IS NOT NULL
GROUP BY f.window_name
ORDER BY cnt DESC
LIMIT 10;"
# iTerm2 elements with any role
sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.role, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL
LIMIT 20;"
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
NULL
|
|
823
|
19
|
54
|
2026-04-11T12:23:27.586697+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775910207586_m1.jpg...
|
iTerm2
|
-zsh
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ORDER BY elements DESC;"
|24604|206
Dia|2884|1 ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?
sqlite3 ~/.screenpipe/db.sqlite "SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;"
# What are those 24k elements with no app_name?
sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, COUNT(*) as cnt
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name IS NULL AND e.text IS NOT NULL
GROUP BY f.window_name
ORDER BY cnt DESC
LIMIT 10;"
# iTerm2 elements with any role
sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.role, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL
LIMIT 20;"
zsh: no matches found: elements?
block|25522
AXStaticText|4681
AXButton|1364
AXLink|1123
AXRadioButton|1017
AXTextField|607
AXCell|297
AXHeading|166
AXTextArea|151
AXPopUpButton|83
AXCheckBox|59
AXComboBox|7
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?\nsqlite3 ~/.screenpipe/db.sqlite \"SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;\"\n\n# What are those 24k elements with no app_name?\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, COUNT(*) as cnt\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name IS NULL AND e.text IS NOT NULL\nGROUP BY f.window_name\nORDER BY cnt DESC\nLIMIT 10;\"\n\n# iTerm2 elements with any role\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.role, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL\nLIMIT 20;\"\nzsh: no matches found: elements?\nblock|25522\nAXStaticText|4681\nAXButton|1364\nAXLink|1123\nAXRadioButton|1017\nAXTextField|607\nAXCell|297\nAXHeading|166\nAXTextArea|151\nAXPopUpButton|83\nAXCheckBox|59\nAXComboBox|7","depth":4,"value":"ORDER BY elements DESC;\"\n|24604|206\nDia|2884|17\niTerm2|2087|136\nClaude|2040|8\nSafari|1248|10\nFirefox|454|1\nActivity Monitor|380|2\nSlack|234|1\nControl Centre|178|1\nUserNotificationCenter|20|4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL\nLIMIT 30;\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'Safari' AND e.text IS NOT NULL\nLIMIT 20;\"\nOrder Room Service • HBO Max|Back\nOrder Room Service • HBO Max|Search\nOrder Room Service • HBO Max|Ukončiť prehrávanie\nOrder Room Service • HBO Max|Rozbaliť Epizód, 1 z 2\nOrder Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2\nOrder Room Service • HBO Max|Preskočiť dozadu o 10 s\nOrder Room Service • HBO Max|Pozastaviť\nOrder Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd\nOrder Room Service • HBO Max|Hlasitosť 100 %\nOrder Room Service • HBO Max|Nastavenia zvuku a titulkov\nOrder Room Service • HBO Max|Celá obrazovka\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|close tab\nOrder Room Service • HBO Max|Favourites\nOrder Room Service • HBO Max|Tab Group Favourites\nOrder Room Service • HBO Max|NAS\nOrder Room Service • HBO Max|Home\nOrder Room Service • HBO Max|Portainer\nOrder Room Service • HBO Max|Nginx Proxy Manager\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?\nsqlite3 ~/.screenpipe/db.sqlite \"SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;\"\n\n# What are those 24k elements with no app_name?\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT f.window_name, COUNT(*) as cnt\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name IS NULL AND e.text IS NOT NULL\nGROUP BY f.window_name\nORDER BY cnt DESC\nLIMIT 10;\"\n\n# iTerm2 elements with any role\nsqlite3 ~/.screenpipe/db.sqlite \"\nSELECT e.role, e.text\nFROM elements e\nJOIN frames f ON e.frame_id = f.id\nWHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL\nLIMIT 20;\"\nzsh: no matches found: elements?\nblock|25522\nAXStaticText|4681\nAXButton|1364\nAXLink|1123\nAXRadioButton|1017\nAXTextField|607\nAXCell|297\nAXHeading|166\nAXTextArea|151\nAXPopUpButton|83\nAXCheckBox|59\nAXComboBox|7","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.140625,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14479166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28125,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28541666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.421875,"top":0.05888889,"width":0.140625,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42604166,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5625,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56666666,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7027778,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70694447,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.84305555,"top":0.05888889,"width":0.14027777,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.8472222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"-zsh","depth":1,"bounds":{"left":0.48819444,"top":0.033333335,"width":0.022916667,"height":0.017777778},"role_description":"text"}]...
|
-5907118204318333059
|
5694749881180760553
|
visual_change
|
accessibility
|
NULL
|
ORDER BY elements DESC;"
|24604|206
Dia|2884|1 ORDER BY elements DESC;"
|24604|206
Dia|2884|17
iTerm2|2087|136
Claude|2040|8
Safari|1248|10
Firefox|454|1
Activity Monitor|380|2
Slack|234|1
Control Centre|178|1
UserNotificationCenter|20|4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.role = 'block' AND e.text NOT NULL
LIMIT 30;"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'Safari' AND e.text IS NOT NULL
LIMIT 20;"
Order Room Service • HBO Max|Back
Order Room Service • HBO Max|Search
Order Room Service • HBO Max|Ukončiť prehrávanie
Order Room Service • HBO Max|Rozbaliť Epizód, 1 z 2
Order Room Service • HBO Max|Rozbaliť Tiež by sa vám mohlo páčiť, 2 z 2
Order Room Service • HBO Max|Preskočiť dozadu o 10 s
Order Room Service • HBO Max|Pozastaviť
Order Room Service • HBO Max|Preskočiť dopredu o 10 sekúnd
Order Room Service • HBO Max|Hlasitosť 100 %
Order Room Service • HBO Max|Nastavenia zvuku a titulkov
Order Room Service • HBO Max|Celá obrazovka
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|close tab
Order Room Service • HBO Max|Favourites
Order Room Service • HBO Max|Tab Group Favourites
Order Room Service • HBO Max|NAS
Order Room Service • HBO Max|Home
Order Room Service • HBO Max|Portainer
Order Room Service • HBO Max|Nginx Proxy Manager
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ # What roles exist in elements?
sqlite3 ~/.screenpipe/db.sqlite "SELECT role, COUNT(*) FROM elements GROUP BY role ORDER BY COUNT(*) DESC;"
# What are those 24k elements with no app_name?
sqlite3 ~/.screenpipe/db.sqlite "
SELECT f.window_name, COUNT(*) as cnt
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name IS NULL AND e.text IS NOT NULL
GROUP BY f.window_name
ORDER BY cnt DESC
LIMIT 10;"
# iTerm2 elements with any role
sqlite3 ~/.screenpipe/db.sqlite "
SELECT e.role, e.text
FROM elements e
JOIN frames f ON e.frame_id = f.id
WHERE f.app_name = 'iTerm2' AND e.text IS NOT NULL
LIMIT 20;"
zsh: no matches found: elements?
block|25522
AXStaticText|4681
AXButton|1364
AXLink|1123
AXRadioButton|1017
AXTextField|607
AXCell|297
AXHeading|166
AXTextArea|151
AXPopUpButton|83
AXCheckBox|59
AXComboBox|7
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
822
|