|
1551
|
34
|
22
|
2026-04-11T17:39:26.465256+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929166465_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:26-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-4307802758647221233
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:26-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1552
|
34
|
23
|
2026-04-11T17:39:30.301051+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929170301_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:30-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
5860855315057077504
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:30-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1551
|
|
1553
|
34
|
24
|
2026-04-11T17:39:31.026566+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929171026_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:30-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
5860855315057077504
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:30-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1554
|
34
|
25
|
2026-04-11T17:39:32.015502+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929172015_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:31-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-9064663974991335539
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:31-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1553
|
|
1555
|
34
|
26
|
2026-04-11T17:39:37.999871+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929177999_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Desktop 1Desktop 2+-zshDOCKER• x12026-04-11T20:26: Desktop 1Desktop 2+-zshDOCKER• x12026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.992688Z2026-04-11T20:26:57.33177122026-84-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZAPP (-zsh)• х3• *4-zsh• *5-zsh-zsh• x7-zsh• х8INFO screenpipe_engine::retention: retention: initialized with 14d retentionINFO screenpipe: local retention auto-enabled (14 days)INFO screenpipe_engine::event,driven_capture:content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFO screenpipe_engine::event_driven_capture:content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=S606118560581161138, trigger=click)INFO screenpipe_engine::snapshot_compaction:snapshot compaction:found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB + 3.3MB (2.8x), 61 JPEGs deletedINFO screenpipe_engine::server: api_usage_Smin: 1 requestsINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -Lah ~/.screenpipe/data/data/ | head -20du -sh ~/.screenpipe/data/data/*total24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--elukasstaff8.0K9 Apr 20:43DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:53 2026-04-09drwxr-xr-x98lukasstaff3.1K 11 Apr 20:322026-04-1139M60М/Users/lukas/.screenpipe/data/data/2026-04-09/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K99M/Users/lukas/.screenpipe/config.json/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K132K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.1oglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture:content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFO screenpipe_engine::event_driven_capture:contentdedup: skipping capturefor monitor 1 (hash=9017845113719419888,trigger-click)2026-04-11T20:34:58.704027ZINFO screenpipe_engine::eventdriven_2026-04-11T20:36:40.376312Zcontent dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger-click)INFO screenpipe_engine::retention:cleaning up data before2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_contentdedup: skipping capturefor monitor 1 (hash=1247300013418283538,trigger-click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven.2026-04-11T20:37:09.670722Zcontent dedup: skipping capture for monitor 1 (hash-1247300013418283538,trigger-click)INFO screenpipe_engine::snapshot_compaction:snapshot compaction:found 24 eligibleframes2026-04-11T20:37:11.207501ZINFO screenpipe_engine::snapshot_compaction:snapshot compaction:24 frames,2026-04-11T20:37:44.461189Z5.3MB → 1.2MB (4.5x), 24 JPEGs deletedINFO screenpipe_engine::event_driven_capture:content dedup:skipping capturefor monitor 1 (hash=-259750597993296433,trigger-click)2026-04-11T20:37:58.408608ZINFO screenpipe_engine::event_driven_capture:contentdedup: skippingcapturefor monitor 1 (hash-4847561377089731380,trigger-click)N$1...
|
NULL
|
-7985711355898074430
|
NULL
|
visual_change
|
ocr
|
NULL
|
Desktop 1Desktop 2+-zshDOCKER• x12026-04-11T20:26: Desktop 1Desktop 2+-zshDOCKER• x12026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.992688Z2026-04-11T20:26:57.33177122026-84-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZAPP (-zsh)• х3• *4-zsh• *5-zsh-zsh• x7-zsh• х8INFO screenpipe_engine::retention: retention: initialized with 14d retentionINFO screenpipe: local retention auto-enabled (14 days)INFO screenpipe_engine::event,driven_capture:content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFO screenpipe_engine::event_driven_capture:content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=S606118560581161138, trigger=click)INFO screenpipe_engine::snapshot_compaction:snapshot compaction:found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB + 3.3MB (2.8x), 61 JPEGs deletedINFO screenpipe_engine::server: api_usage_Smin: 1 requestsINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -Lah ~/.screenpipe/data/data/ | head -20du -sh ~/.screenpipe/data/data/*total24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--elukasstaff8.0K9 Apr 20:43DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:53 2026-04-09drwxr-xr-x98lukasstaff3.1K 11 Apr 20:322026-04-1139M60М/Users/lukas/.screenpipe/data/data/2026-04-09/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K99M/Users/lukas/.screenpipe/config.json/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K132K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.1oglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture:content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFO screenpipe_engine::event_driven_capture:contentdedup: skipping capturefor monitor 1 (hash=9017845113719419888,trigger-click)2026-04-11T20:34:58.704027ZINFO screenpipe_engine::eventdriven_2026-04-11T20:36:40.376312Zcontent dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger-click)INFO screenpipe_engine::retention:cleaning up data before2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_contentdedup: skipping capturefor monitor 1 (hash=1247300013418283538,trigger-click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven.2026-04-11T20:37:09.670722Zcontent dedup: skipping capture for monitor 1 (hash-1247300013418283538,trigger-click)INFO screenpipe_engine::snapshot_compaction:snapshot compaction:found 24 eligibleframes2026-04-11T20:37:11.207501ZINFO screenpipe_engine::snapshot_compaction:snapshot compaction:24 frames,2026-04-11T20:37:44.461189Z5.3MB → 1.2MB (4.5x), 24 JPEGs deletedINFO screenpipe_engine::event_driven_capture:content dedup:skipping capturefor monitor 1 (hash=-259750597993296433,trigger-click)2026-04-11T20:37:58.408608ZINFO screenpipe_engine::event_driven_capture:contentdedup: skippingcapturefor monitor 1 (hash-4847561377089731380,trigger-click)N$1...
|
NULL
|
|
1556
|
34
|
27
|
2026-04-11T17:39:41.025212+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929181025_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:40-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
3199420099148802517
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:40-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1555
|
|
1557
|
34
|
28
|
2026-04-11T17:39:43.597932+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929183597_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:43-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
3292456628517700442
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:43-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1558
|
34
|
29
|
2026-04-11T17:39:47.095926+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929187095_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:46-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
7920703004082048960
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpall100% CSat 11 Apr 20:39:46-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• *4-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1557
|
|
1559
|
34
|
30
|
2026-04-11T17:39:50.639971+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929190639_m1.jpg...
|
Firefox
|
Welcome to Firefox — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Back
Work
Work
Edit profile
Other profiles
Other p Back
Work
Work
Edit profile
Other profiles
Other profiles
Personal
New profile
Copy this profile
Manage profiles
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Back","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Work","depth":3,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Work","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Edit profile","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Other profiles","depth":3,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Other profiles","depth":4,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Personal","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New profile","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Copy this profile","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Manage profiles","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"You’re in safe paws","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"You’re in safe paws","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Keep Firefox in Dock","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Keep Firefox in Dock","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Import from previous browser","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Import from previous browser","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save and continue","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Skip this step","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
-3818228579046630860
|
2450152513075682034
|
click
|
accessibility
|
NULL
|
Back
Work
Work
Edit profile
Other profiles
Other p Back
Work
Work
Edit profile
Other profiles
Other profiles
Personal
New profile
Copy this profile
Manage profiles
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
NULL
|
|
1560
|
34
|
31
|
2026-04-11T17:39:53.150921+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929193150_m1.jpg...
|
Firefox
|
Firefox - Choose a profile
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Choose a Firefox profile
Choose a Firefox profile
Choose a Firefox profile
Choose a Firefox profile
Keep your work and personal browsing, including things like passwords and bookmarks, totally separate. Or create profiles for everyone who uses this device.
Open Personal
Personal
Personal
Edit profile
Delete profile
Open Work
Work
Work
Edit profile
Delete profile
Create a profile
Create a profile
Create a profile
Choose a profile when Firefox opens
Choose a profile when Firefox opens...
|
[{"role":"AXHeading","text" [{"role":"AXHeading","text":"Choose a Firefox profile","depth":2,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Choose a Firefox profile","depth":3,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Keep your work and personal browsing, including things like passwords and bookmarks, totally separate. Or create profiles for everyone who uses this device.","depth":3,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open Personal","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Personal","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Personal","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Edit profile","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Delete profile","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Open Work","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Work","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Work","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Edit profile","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Delete profile","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Create a profile","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Create a profile","depth":5,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Create a profile","depth":6,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Choose a profile when Firefox opens","depth":6,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Choose a profile when Firefox opens","depth":6,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
5798553087892232859
|
4227107507678606510
|
click
|
accessibility
|
NULL
|
Choose a Firefox profile
Choose a Firefox profile
Choose a Firefox profile
Choose a Firefox profile
Keep your work and personal browsing, including things like passwords and bookmarks, totally separate. Or create profiles for everyone who uses this device.
Open Personal
Personal
Personal
Edit profile
Delete profile
Open Work
Work
Work
Edit profile
Delete profile
Create a profile
Create a profile
Create a profile
Choose a profile when Firefox opens
Choose a profile when Firefox opens...
|
1559
|
|
1561
|
34
|
32
|
2026-04-11T17:39:57.750447+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929197750_m1.jpg...
|
Firefox
|
Welcome to Firefox — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
[{"role":"AXCheckBox","text [{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Sign in","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"You’re in safe paws","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"You’re in safe paws","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Keep Firefox in Dock","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Keep Firefox in Dock","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Import from previous browser","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Import from previous browser","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save and continue","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Skip this step","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
-3158124838968152546
|
2450155259680004848
|
click
|
accessibility
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
NULL
|
|
1562
|
34
|
33
|
2026-04-11T17:39:59.908783+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929199908_m1.jpg...
|
Firefox
|
Welcome to Firefox — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Sync and save data
Sign In
Sign In
Work
New tab
Ne Sync and save data
Sign In
Sign In
Work
New tab
New window
New private window
Bookmarks
History
Downloads
Passwords
Extensions and themes
Print…
Save page as…
Find in page…
Translate page…
Zoom
Zoom out
100%
Zoom in
Full screen
Settings
More tools
Report broken site
Help
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
[{"role":"AXStaticText","text& [{"role":"AXStaticText","text":"Sync and save data","depth":4,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Sign In","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sign In","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Work","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New tab","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New window","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New private window","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Bookmarks","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"History","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"Downloads","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Passwords","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Extensions and themes","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Print…","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Save page as…","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Find in page…","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Translate page…","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Zoom","depth":4,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Zoom out","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"100%","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Zoom in","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Full screen","depth":3,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Settings","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More tools","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Report broken site","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Help","depth":3,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Sign in","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"You’re in safe paws","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"You’re in safe paws","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Keep Firefox in Dock","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Keep Firefox in Dock","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Import from previous browser","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Import from previous browser","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save and continue","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Skip this step","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
-7650168564972462085
|
4467908463095208690
|
click
|
accessibility
|
NULL
|
Sync and save data
Sign In
Sign In
Work
New tab
Ne Sync and save data
Sign In
Sign In
Work
New tab
New window
New private window
Bookmarks
History
Downloads
Passwords
Extensions and themes
Print…
Save page as…
Find in page…
Translate page…
Zoom
Zoom out
100%
Zoom in
Full screen
Settings
More tools
Report broken site
Help
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
1561
|
|
1563
|
34
|
34
|
2026-04-11T17:40:01.452539+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929201452_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:01-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-5898472802752283590
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:01-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1564
|
34
|
35
|
2026-04-11T17:40:03.408122+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929203408_m1.jpg...
|
Firefox
|
Welcome to Firefox — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Welcome to Firefox
about:welcome
Open AI chatbot ( Welcome to Firefox
about:welcome
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
[{"role":"AXStaticText","text& [{"role":"AXStaticText","text":"Welcome to Firefox","depth":4,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"about:welcome","depth":4,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Sign in","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"You’re in safe paws","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"You’re in safe paws","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"We protect your data and block companies from spying on your clicks — automatically.","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Keep Firefox in Dock","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Keep Firefox in Dock","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Import from previous browser","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Import from previous browser","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save and continue","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Skip this step","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
4037876362500501693
|
2450436734656715504
|
click
|
accessibility
|
NULL
|
Welcome to Firefox
about:welcome
Open AI chatbot ( Welcome to Firefox
about:welcome
Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Sign in
You’re in safe paws
You’re in safe paws
We protect your data and block companies from spying on your clicks — automatically.
We protect your data and block companies from spying on your clicks — automatically.
Keep Firefox in Dock
Keep Firefox in Dock
Import from previous browser
Import from previous browser
Save and continue
Skip this step...
|
1563
|
|
1565
|
34
|
36
|
2026-04-11T17:40:04.526317+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929204526_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:04-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
7904968092315483007
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:04-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1566
|
34
|
37
|
2026-04-11T17:40:18.267678+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929218267_m1.jpg...
|
Firefox
|
New Tab — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Close
Give your browsing a boost
Give your browsin Close
Give your browsing a boost
Give your browsing a boost
Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!
Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!
Explore add-ons
Close AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Choose an AI chatbot to use in the Firefox sidebar
Choose an AI chatbot to use in the Firefox sidebar
Switch anytime. For help choosing, learn more about each chatbot .
Switch anytime. For help choosing,
learn more about each chatbot
learn more about each chatbot
.
Anthropic Claude
Anthropic Claude
ChatGPT
ChatGPT
Copilot
Copilot
Google Gemini
Google Gemini
Le Chat Mistral
Le Chat Mistral
Continue
Close
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Close","depth":6,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Give your browsing a boost","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Give your browsing a boost","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Explore add-ons","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Close AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Choose an AI chatbot to use in the Firefox sidebar","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Choose an AI chatbot to use in the Firefox sidebar","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Switch anytime. For help choosing, learn more about each chatbot .","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Switch anytime. For help choosing,","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"learn more about each chatbot","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"learn more about each chatbot","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":".","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Anthropic Claude","depth":13,"help_text":"","role_description":"radio button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Anthropic Claude","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"ChatGPT","depth":13,"help_text":"","role_description":"radio button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ChatGPT","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Copilot","depth":13,"help_text":"","role_description":"radio button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Copilot","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Google Gemini","depth":13,"help_text":"","role_description":"radio button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Google Gemini","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Le Chat Mistral","depth":13,"help_text":"","role_description":"radio button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Le Chat Mistral","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Continue","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Close","depth":11,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"22°","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"C","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"New York City","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Open menu","depth":7,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Do you want to see the weather for your location?","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Do you want to see the weather for your location?","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Not now","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Not now","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Yes","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Yes","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Mozilla Firefox","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXButton","text":"Search with Google or enter address","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search with Google or enter address","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Wikipedia","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Wikipedia","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Wikipedia","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"YouTube","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"YouTube","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for YouTube","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Reddit","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Reddit","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Reddit","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add-ons for Firefox","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Add-ons for Firefox","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add Shortcut","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add Shortcut","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Customize","depth":8,"help_text":"Customize this page","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Customize","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-2250292163328768914
|
-4782594157879810748
|
click
|
accessibility
|
NULL
|
Close
Give your browsing a boost
Give your browsin Close
Give your browsing a boost
Give your browsing a boost
Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!
Make browsing faster, safer, or just plain fun with Firefox add-ons. See what our staff recommends!
Explore add-ons
Close AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Choose an AI chatbot to use in the Firefox sidebar
Choose an AI chatbot to use in the Firefox sidebar
Switch anytime. For help choosing, learn more about each chatbot .
Switch anytime. For help choosing,
learn more about each chatbot
learn more about each chatbot
.
Anthropic Claude
Anthropic Claude
ChatGPT
ChatGPT
Copilot
Copilot
Google Gemini
Google Gemini
Le Chat Mistral
Le Chat Mistral
Continue
Close
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
1565
|
|
1567
|
34
|
38
|
2026-04-11T17:40:19.595861+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929219595_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:19-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-5078357234849539763
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:19-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1568
|
34
|
39
|
2026-04-11T17:40:21.056524+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929221056_m1.jpg...
|
Firefox
|
New Tab — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Tabs from other devices
Tabs from other devices
Close
Search tabs
Your Firefox on all your devices
Your Firefox on all your devices
To see tabs you have open on your phone and other devices, sign in or sign up for an account. With an account, you can also sync your passwords, history, and more.
Sign in
Sign in
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
[{"role":"AXCheckBox","text [{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Tabs from other devices","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Tabs from other devices","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Search tabs","depth":9,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXHeading","text":"Your Firefox on all your devices","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Your Firefox on all your devices","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To see tabs you have open on your phone and other devices, sign in or sign up for an account. With an account, you can also sync your passwords, history, and more.","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Sign in","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sign in","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"22°","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"C","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"New York City","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Open menu","depth":7,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Do you want to see the weather for your location?","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Do you want to see the weather for your location?","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Not now","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Not now","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Yes","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Yes","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Mozilla Firefox","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXButton","text":"Search with Google or enter address","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search with Google or enter address","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Wikipedia","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Wikipedia","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Wikipedia","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"YouTube","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"YouTube","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for YouTube","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Reddit","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Reddit","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Reddit","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add-ons for Firefox","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Add-ons for Firefox","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add Shortcut","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add Shortcut","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Customize","depth":8,"help_text":"Customize this page","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Customize","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
7959674232759182435
|
-4816443848381472186
|
click
|
accessibility
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Tabs from other devices
Tabs from other devices
Close
Search tabs
Your Firefox on all your devices
Your Firefox on all your devices
To see tabs you have open on your phone and other devices, sign in or sign up for an account. With an account, you can also sync your passwords, history, and more.
Sign in
Sign in
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
1567
|
|
1569
|
34
|
40
|
2026-04-11T17:40:21.859572+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929221859_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:21-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
136024372373339145
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:21-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1570
|
34
|
41
|
2026-04-11T17:40:23.708118+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929223708_m1.jpg...
|
Firefox
|
New Tab — Work
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Close bookmarks (⌘B)
Customize sidebar
Bookmarks
Bookmarks
Close sidebar
Search bookmarks
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
[{"role":"AXCheckBox","text [{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Close bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Bookmarks","depth":5,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Bookmarks","depth":6,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close sidebar","depth":6,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Search bookmarks","depth":7,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"22°","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"C","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"New York City","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Open menu","depth":7,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Do you want to see the weather for your location?","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Do you want to see the weather for your location?","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Not now","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Not now","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Yes","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Yes","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Mozilla Firefox","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXButton","text":"Search with Google or enter address","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search with Google or enter address","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Wikipedia","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Wikipedia","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Wikipedia","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"YouTube","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"YouTube","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for YouTube","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Reddit","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Reddit","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Reddit","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add-ons for Firefox","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open context menu for Add-ons for Firefox","depth":12,"help_text":"Open menu","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Add Shortcut","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add Shortcut","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Customize","depth":8,"help_text":"Customize this page","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Customize","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-5147557345252322122
|
-4816443706746453690
|
click
|
accessibility
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Close bookmarks (⌘B)
Customize sidebar
Bookmarks
Bookmarks
Close sidebar
Search bookmarks
22°
C
New York City
Open menu
Do you want to see the weather for your location?
Do you want to see the weather for your location?
Not now
Not now
Yes
Yes
Mozilla Firefox
Search with Google or enter address
Search with Google or enter address
Wikipedia
Wikipedia
Open context menu for Wikipedia
YouTube
YouTube
Open context menu for YouTube
Reddit
Reddit
Open context menu for Reddit
Add-ons for Firefox
Add-ons for Firefox
Open context menu for Add-ons for Firefox
Add Shortcut
Add Shortcut
Customize
Customize...
|
1569
|
|
1571
|
34
|
42
|
2026-04-11T17:40:34.269003+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929234269_m1.jpg...
|
Firefox
|
Problem loading page — Work
|
True
|
app.dev.jiminny.com
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Close bookmarks (⌘B)
Customize sidebar
Bookmarks
Bookmarks
Close sidebar
Search bookmarks
Looks like there’s a problem with this site
Looks like there’s a problem with this site
Firefox can’t connect to the server at
app.dev.jiminny.com
What can you do about it?
What can you do about it?
Try connecting on a different device. Check your modem or router. Disconnect and reconnect to Wi-Fi.
Try Again
Try Again...
|
[{"role":"AXCheckBox","text [{"role":"AXCheckBox","text":"Open AI chatbot (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Close bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Bookmarks","depth":5,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Bookmarks","depth":6,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close sidebar","depth":6,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Search bookmarks","depth":7,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Looks like there’s a problem with this site","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Looks like there’s a problem with this site","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox can’t connect to the server at","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"app.dev.jiminny.com","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"What can you do about it?","depth":8,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"What can you do about it?","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Try connecting on a different device. Check your modem or router. Disconnect and reconnect to Wi-Fi.","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Try Again","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Try Again","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3706728630941710938
|
-1563218222308097149
|
click
|
accessibility
|
NULL
|
Open AI chatbot (⌃X)
Tabs from other devices
Open Open AI chatbot (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Close bookmarks (⌘B)
Customize sidebar
Bookmarks
Bookmarks
Close sidebar
Search bookmarks
Looks like there’s a problem with this site
Looks like there’s a problem with this site
Firefox can’t connect to the server at
app.dev.jiminny.com
What can you do about it?
What can you do about it?
Try connecting on a different device. Check your modem or router. Disconnect and reconnect to Wi-Fi.
Try Again
Try Again...
|
NULL
|
|
1572
|
34
|
43
|
2026-04-11T17:40:39.796730+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929239796_m1.jpg...
|
Code
|
Build screenpipe data UI… — screenpipe [SSH: 100.7 Build screenpipe data UI… — screenpipe [SSH: 100.73.206.126]...
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Explorer (⇧⌘E) - 1 unsaved file","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":true},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"1","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Search (⇧⌘F)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Source Control (⌃⇧G)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Run and Debug (⇧⌘D)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Remote Explorer","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Extensions (⇧⌘X) - 2 require update, 1 requires restart","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"}]...
|
-1436295580526379973
|
-2415875585651735238
|
visual_change
|
hybrid
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
iTerm2ShelllEditViewSessionScriptsProfilesWindowHelpallA100% 78-zshDOCKER• ₴812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• ×4-zsh• 285-zsh86-zshO 87INFOscreenpipe_engine::retention: retention: initialized with 14d retentionINFOscreenpipe:local retention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1eligible framesls -lah ~/.screenpipe/data/data/ | head -20du-sh ~/.screenpipe/data/data/*total 24drwxr-xr-xdrwxr-xr-x-rw-r-5lukaslukaslukasstaffstaffstaff160B 11 Apr 14:52160B 11Apr 15:038.0K9Apr 20:43DS_StoreSat 11 Apr 20:40:39-zsh181• *8$1NVisual Studio Code4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.10g132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 Chash=-259750597993296433,2026-04-11T20:37:58.4086082INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1571
|
|
1573
|
34
|
44
|
2026-04-11T17:40:41.265499+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929241265_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:41-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-4353399127787374814
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:41-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1574
|
34
|
45
|
2026-04-11T17:40:49.788647+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929249788_m1.jpg...
|
Code
|
Build screenpipe data UI… — screenpipe [SSH: 100.7 Build screenpipe data UI… — screenpipe [SSH: 100.73.206.126]...
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
3
Claude Code
Containers
EXPLORER
EXPLORER
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
SCREENPIPE [SSH: [IP_ADDRESS]]
#recycle
app
consumers
__init__.py
activity.py
audio.py
elements.py
interactions.py
ocr.py
report.py
summary.py
static
.env
cli.py
db.py
docker-compose.yml
Dockerfile
main.py
requirements.txt
data
pipes
db.sqlite
Outline Section
OUTLINE
OUTLINE
Timeline Section
TIMELINE
TIMELINE
pipe.md, Editor Group 1
#!/bin/bash • Untitled-1, Editor Group 1
report.py, preview, Editor Group 1
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
Build screenpipe data UI…, Editor Group 2
Problems (⇧⌘M)
PROBLEMS
Output (⇧⌘U)
OUTPUT
Debug Console (⇧⌘Y)
DEBUG CONSOLE
Terminal (⌃`)
TERMINAL
Ports
PORTS
remote SSH: [IP_ADDRESS]
SSH: [IP_ADDRESS]
No Problems
0
0
No Ports Forwarded
0
Update is ready, click to restart.
Update is ready, click to restart.
Notifications
Sign In
Sign In
Screen Reader Optimized
Diff editor
Build screenpipe data UI and summary app
Session history
New session
Message actions
lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.
Thinking
Thinking
Let me explore the screenpipe directory to understand what we're working with.
Bash
List screenpipe directory contents
IN
ls /volume1/screenpipe/
Copy code to clipboard
OUT
data
db.sqlite
pipes
#recycle
[rerun: b1]
Bash
List data and pipes directories
IN
ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/
Copy code to clipboard
OUT
2026-04-09
2026-04-11
ai-habits
day-recap
meeting-summary
standup-update
time-breakdown
video-export
[rerun: b2]
Bash
List tables in screenpipe SQLite database
IN
sqlite3 /volume1/screenpipe/db.sqlite ".tables"
Copy code to clipboard
OUT
_sqlx_migrations meetings
audio_chunks memories
audio_tags memories_fts
audio_transcriptions memories_fts_config
audio_transcriptions_fts memories_fts_data
audio_transcriptions_fts_config memories_fts_docsize
audio_transcriptions_fts_data memories_fts_idx
audio_transcriptions_fts_docsize ocr_text
audio_transcriptions_fts_idx pipe_executions
elements pipe_scheduler_state
elements_fts speaker_embeddings
elements_fts_config speakers
elements_fts_data tags
elements_fts_docsize ui_events
elements_fts_idx ui_events_fts
frames ui_events_fts_config
frames_fts ui_events_fts_data
frames_fts_config ui_events_fts_docsize
frames_fts_content ui_events_fts_idx
frames_fts_data video_chunks
frames_fts_docsize vision_tags
frames_fts_idx
[rerun: b3]
Bash
Get ocr_text table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(ocr_text);"
Copy code to clipboard
OUT
0|frame_id|INTEGER|1||0
1|text|TEXT|1||0
2|text_json|TEXT|0||0
3|app_name|TEXT|1|''|0
4|ocr_engine|TEXT|1|'unknown'|0
5|window_name|TEXT|0||0
6|focused|BOOLEAN|0|FALSE|0
7|text_length|INTEGER|0||0
8|sync_id|TEXT|0||0
9|synced_at|DATETIME|0||0
[rerun: b4]
Bash
Get audio_transcriptions table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(audio_transcriptions);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|audio_chunk_id|INTEGER|1||0
2|offset_index|INTEGER|1||0
3|timestamp|TIMESTAMP|1||0
4|transcription|TEXT|1||0
5|device|TEXT|1|''|0
6|is_input_device|BOOLEAN|1|TRUE|0
7|speaker_id|INTEGER|0||0
8|transcription_engine|TEXT|1|'Whisper'|0
9|start_time|REAL|0||0
10|end_time|REAL|0||0
11|text_length|INTEGER|0||0
12|sync_id|TEXT|0||0
13|synced_at|DATETIME|0||0
[rerun: b5]
Bash
Get frames, ui_events, video_chunks schemas
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|video_chunk_id|INTEGER|0|NULL|0
2|offset_index|INTEGER|1|0|0
3|timestamp|TIMESTAMP|1||0
4|name|TEXT|0||0
5|app_name|TEXT|0|NULL|0
6|window_name|TEXT|0|NULL|0
7|focused|BOOLEAN|0|NULL|0
8|browser_url|TEXT|0|NULL|0
9|device_name|TEXT|1|''|0
10|sync_id|TEXT|0||0
11|machine_id|TEXT|0||0
12|synced_at|DATETIME|0||0
13|snapshot_path|TEXT|0|NULL|0
14|accessibility_text|TEXT|0|NULL|0
15|accessibility_tree_json|TEXT|0|NULL|0
16|content_hash|INTEGER|0|NULL|0
17|simhash|INTEGER|0|NULL|0
18|capture_trigger|TEXT|0|NULL|0
19|text_source|TEXT|0|NULL|0
20|cloud_blob_id|TEXT|0|NULL|0
21|full_text|TEXT|0|NULL|0
22|elements_ref_frame_id|INTEGER|0|NULL|0
0|id|INTEGER|0||1
1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0
2|session_id|TEXT|0||0
3|relative_ms|INTEGER|1|0|0
4|event_type|TEXT|1||0
5|x|INTEGER|0||0
6|y|INTEGER|0||0
7|delta_x|INTEGER|0||0
8|delta_y|INTEGER|0||0
9|button|INTEGER|0||0
10|click_count|INTEGER|0||0
11|key_code|INTEGER|0||0
12|modifiers|INTEGER|0||0
13|text_content|TEXT|0||0
14|text_length|INTEGER|0||0
15|app_name|TEXT|0||0
16|app_pid|INTEGER|0||0
17|window_title|TEXT|0||0
18|browser_url|TEXT|0||0
19|element_role|TEXT|0||0
20|element_name|TEXT|0||0
21|element_value|TEXT|0||0
22|element_description|TEXT|0||0
23|element_automation_id|TEXT|0||0
24|element_bounds|TEXT|0||0
25|frame_id|INTEGER|0||0
26|sync_id|TEXT|0||0
27|machine_id|TEXT|0||0
28|synced_at|DATETIME|0||0
0|id|INTEGER|0||1
1|file_path|TEXT|1||0
2|device_name|TEXT|1|''|0
3|sync_id|TEXT|0||0
4|machine_id|TEXT|0||0
5|synced_at|DATETIME|0||0
6|fps|REAL|1|0.5|0
7|cloud_blob_id|TEXT|0|NULL|0
[rerun: b6]
Bash
Check data counts and date ranges
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*) FROM ocr_text;" 2>/dev/null
Copy code to clipboard
OUT
1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00
3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00
666
[rerun: b7]
Bash
Explore existing pipes for patterns
IN
ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50
Copy code to clipboard
OUT
pipe.md
[rerun: b8]
Bash
Read day-recap pipe documentation
IN
cat /volume1/screenpipe/pipes/day-recap/pipe.md
Copy code to clipboard
OUT
---
schedule: manual
enabled: true
template: true
title: Day Recap
description: "Today's accomplishments, key moments, and unfinished work"
icon: "📋"
featured: true
---
Analyze my screen and audio recordings from today (last 16 hours only).
Read screenpipe skill first.
Use this exact format:
## Summary
One sentence: what I mainly did today.
## Accomplishments
- Top 3 things I finished, with timestamps (e.g. "2:30 PM")
- Name specific apps, files, or projects
## Key Moments
- Important things I saw, said, or heard — with timestamps
## Unfinished Work
- What I should continue tomorrow — name the app/file/task
## Patterns
- Apps I used most, topics that came up repeatedly
Only report what you can verify from the data. End with: "**Next step:** [most important thing to continue]"
[rerun: b9]
Bash
Sample app names from frames
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;"
Copy code to clipboard
OUT
Safari
Activity Monitor
Dia
iTerm2
Control Centre
UserNotificationCenter
Finder
Claude
Slack
Firefox
Raycast
NetAuthAgent
QuickTime Player
[rerun: b10]
Bash
Sample joined frame+ocr data for today
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;"
Copy code to clipboard
OUT
2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE
2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER
2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p
2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p
2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi
[rerun: b11]
Bash
Sample recent audio transcriptions
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;"
Copy code to clipboard
OUT
2026-04-09T17:02:52+00:00|.|System Audio
2026-04-09T16:59:22+00:00|Class is technically...|System Audio
2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio
[rerun: b12]
Thinking
Thinking
Good data to work with. Here's what we have:
frames
+
ocr_text
: Screen captures with OCR text, app name, window name (1135 frames so far)
audio_transcriptions
: Voice/system audio transcripts
ui_events
: Mouse/keyboard events with app context
video_chunks
: Raw video files
Before I start building, a few quick questions:
Tech stack
— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)
AI summaries
— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?
What summaries matter most?
Day recap (what apps/windows you used, key text seen)
App time breakdown (time per app)
Audio/conversation recap
Custom searchable timeline
Here's the architecture I'm thinking:
Copy code to clipboard
/volume1/screenpipe/app/
├── main.py # FastAPI web UI
├── cli.py # Click CLI: `python cli.py day-recap`
├── db.py # Read-only queries against db.sqlite
├── consumers/
│ ├── activity.py # App usage, time per window
│ ├── ocr.py # OCR text aggregation + search
│ ├── audio.py # Transcription queries
│ └── summary.py # AI summary builder
└── static/
└── index.html # Single-page UI
CLI commands would look like:
Copy code to clipboard
python cli.py day-recap # EOD summary
python cli.py activity --date today # App time breakdown
python cli.py search "docker" # Search OCR/audio text
python cli.py serve # Launch web UI
Does this direction work? Any preferences on the stack or which summaries to prioritize?
Message actions
seesm ok
Thinking
Thinking
Bash
Check Python and available packages
IN
python3 --version && pip3 list 2>/dev/null | grep -E "fastapi|uvicorn|click|anthropic|httpx|jinja"
Copy code to clipboard
OUT
Python 3.11.2
[rerun: b1]
Bash
Verify join works for today's data
IN
sqlite3 /volume1/screenpipe/db.sqlite "
SELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len
FROM frames f JOIN ocr_text o ON f.id = o.frame_id
WHERE DATE(f.timestamp) = '2026-04-11'
ORDER BY f.timestamp DESC LIMIT 3;
"
Copy code to clipboard
OUT
2026-04-11T12:54:42.597794+00:00|||2111
2026-04-11T12:54:41.915916+00:00|||2110
2026-04-11T12:54:39.912712+00:00|||2111
[rerun: b2]
Bash
Install required packages...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Explorer (⇧⌘E) - 1 unsaved file","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":true},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"1","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Search (⇧⌘F)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Source Control (⌃⇧G)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Run and Debug (⇧⌘D)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Remote Explorer","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Extensions (⇧⌘X) - 2 require update, 1 requires restart","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"3","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Claude Code","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Containers","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"EXPLORER","depth":17,"role_description":"heading"},{"role":"AXStaticText","text":"EXPLORER","depth":18,"role_description":"text"},{"role":"AXButton","text":"Explorer Section: screenpipe [SSH: 100.73.206.126]","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"Explorer Section: screenpipe [SSH: 100.73.206.126]","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"SCREENPIPE [SSH: 100.73.206.126]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"#recycle","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"app","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"consumers","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"__init__.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"activity.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"audio.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"elements.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"interactions.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"ocr.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"report.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"summary.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"static","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":".env","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"cli.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"db.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"docker-compose.yml","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"Dockerfile","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"main.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"requirements.txt","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"data","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"pipes","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"db.sqlite","depth":27,"role_description":"text"},{"role":"AXButton","text":"Outline Section","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"OUTLINE","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"OUTLINE","depth":23,"role_description":"text"},{"role":"AXButton","text":"Timeline Section","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"TIMELINE","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"TIMELINE","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"pipe.md, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"#!/bin/bash • Untitled-1, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"report.py, preview, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"","depth":29,"role_description":"text"},{"role":"AXStaticText","text":"","depth":29,"role_description":"text"},{"role":"AXTextArea","text":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","depth":28,"value":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","role_description":"editor","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","depth":29,"role_description":"text"},{"role":"AXRadioButton","text":"Build screenpipe data UI…, Editor Group 2","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Problems (⇧⌘M)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"PROBLEMS","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Output (⇧⌘U)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUTPUT","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Debug Console (⇧⌘Y)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DEBUG CONSOLE","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Terminal (⌃`)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":true},{"role":"AXStaticText","text":"TERMINAL","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Ports","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"PORTS","depth":24,"role_description":"text"},{"role":"AXButton","text":"remote SSH: 100.73.206.126","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"SSH: 100.73.206.126","depth":17,"role_description":"text"},{"role":"AXButton","text":"No Problems","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXButton","text":"No Ports Forwarded","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXButton","text":"Update is ready, click to restart.","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Update is ready, click to restart.","depth":17,"role_description":"text"},{"role":"AXButton","text":"Notifications","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sign In","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Sign In","depth":17,"role_description":"text"},{"role":"AXButton","text":"Screen Reader Optimized","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Diff editor","depth":12,"role_description":"text"},{"role":"AXButton","text":"Build screenpipe data UI and summary app","depth":18,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Session history","depth":18,"help_text":"Session history","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New session","depth":18,"help_text":"New session","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Message actions","depth":23,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Let me explore the screenpipe directory to understand what we're working with.","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List screenpipe directory contents","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"data\ndb.sqlite\npipes\n#recycle\n[rerun: b1]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List data and pipes directories","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-09\n2026-04-11\nai-habits\nday-recap\nmeeting-summary\nstandup-update\ntime-breakdown\nvideo-export\n[rerun: b2]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List tables in screenpipe SQLite database","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \".tables\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"_sqlx_migrations meetings \naudio_chunks memories \naudio_tags memories_fts \naudio_transcriptions memories_fts_config \naudio_transcriptions_fts memories_fts_data \naudio_transcriptions_fts_config memories_fts_docsize \naudio_transcriptions_fts_data memories_fts_idx \naudio_transcriptions_fts_docsize ocr_text \naudio_transcriptions_fts_idx pipe_executions \nelements pipe_scheduler_state \nelements_fts speaker_embeddings \nelements_fts_config speakers \nelements_fts_data tags \nelements_fts_docsize ui_events \nelements_fts_idx ui_events_fts \nframes ui_events_fts_config \nframes_fts ui_events_fts_data \nframes_fts_config ui_events_fts_docsize \nframes_fts_content ui_events_fts_idx \nframes_fts_data video_chunks \nframes_fts_docsize vision_tags \nframes_fts_idx\n[rerun: b3]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get ocr_text table schema","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(ocr_text);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|frame_id|INTEGER|1||0\n1|text|TEXT|1||0\n2|text_json|TEXT|0||0\n3|app_name|TEXT|1|''|0\n4|ocr_engine|TEXT|1|'unknown'|0\n5|window_name|TEXT|0||0\n6|focused|BOOLEAN|0|FALSE|0\n7|text_length|INTEGER|0||0\n8|sync_id|TEXT|0||0\n9|synced_at|DATETIME|0||0\n[rerun: b4]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get audio_transcriptions table schema","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(audio_transcriptions);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|id|INTEGER|0||1\n1|audio_chunk_id|INTEGER|1||0\n2|offset_index|INTEGER|1||0\n3|timestamp|TIMESTAMP|1||0\n4|transcription|TEXT|1||0\n5|device|TEXT|1|''|0\n6|is_input_device|BOOLEAN|1|TRUE|0\n7|speaker_id|INTEGER|0||0\n8|transcription_engine|TEXT|1|'Whisper'|0\n9|start_time|REAL|0||0\n10|end_time|REAL|0||0\n11|text_length|INTEGER|0||0\n12|sync_id|TEXT|0||0\n13|synced_at|DATETIME|0||0\n[rerun: b5]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get frames, ui_events, video_chunks schemas","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|id|INTEGER|0||1\n1|video_chunk_id|INTEGER|0|NULL|0\n2|offset_index|INTEGER|1|0|0\n3|timestamp|TIMESTAMP|1||0\n4|name|TEXT|0||0\n5|app_name|TEXT|0|NULL|0\n6|window_name|TEXT|0|NULL|0\n7|focused|BOOLEAN|0|NULL|0\n8|browser_url|TEXT|0|NULL|0\n9|device_name|TEXT|1|''|0\n10|sync_id|TEXT|0||0\n11|machine_id|TEXT|0||0\n12|synced_at|DATETIME|0||0\n13|snapshot_path|TEXT|0|NULL|0\n14|accessibility_text|TEXT|0|NULL|0\n15|accessibility_tree_json|TEXT|0|NULL|0\n16|content_hash|INTEGER|0|NULL|0\n17|simhash|INTEGER|0|NULL|0\n18|capture_trigger|TEXT|0|NULL|0\n19|text_source|TEXT|0|NULL|0\n20|cloud_blob_id|TEXT|0|NULL|0\n21|full_text|TEXT|0|NULL|0\n22|elements_ref_frame_id|INTEGER|0|NULL|0\n0|id|INTEGER|0||1\n1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0\n2|session_id|TEXT|0||0\n3|relative_ms|INTEGER|1|0|0\n4|event_type|TEXT|1||0\n5|x|INTEGER|0||0\n6|y|INTEGER|0||0\n7|delta_x|INTEGER|0||0\n8|delta_y|INTEGER|0||0\n9|button|INTEGER|0||0\n10|click_count|INTEGER|0||0\n11|key_code|INTEGER|0||0\n12|modifiers|INTEGER|0||0\n13|text_content|TEXT|0||0\n14|text_length|INTEGER|0||0\n15|app_name|TEXT|0||0\n16|app_pid|INTEGER|0||0\n17|window_title|TEXT|0||0\n18|browser_url|TEXT|0||0\n19|element_role|TEXT|0||0\n20|element_name|TEXT|0||0\n21|element_value|TEXT|0||0\n22|element_description|TEXT|0||0\n23|element_automation_id|TEXT|0||0\n24|element_bounds|TEXT|0||0\n25|frame_id|INTEGER|0||0\n26|sync_id|TEXT|0||0\n27|machine_id|TEXT|0||0\n28|synced_at|DATETIME|0||0\n0|id|INTEGER|0||1\n1|file_path|TEXT|1||0\n2|device_name|TEXT|1|''|0\n3|sync_id|TEXT|0||0\n4|machine_id|TEXT|0||0\n5|synced_at|DATETIME|0||0\n6|fps|REAL|1|0.5|0\n7|cloud_blob_id|TEXT|0|NULL|0\n[rerun: b6]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Check data counts and date ranges","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;\" 2>/dev/null\nsqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;\" 2>/dev/null\nsqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*) FROM ocr_text;\" 2>/dev/null","depth":25,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00\n3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00\n666\n[rerun: b7]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Explore existing pipes for patterns","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"pipe.md\n[rerun: b8]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Read day-recap pipe documentation","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"cat /volume1/screenpipe/pipes/day-recap/pipe.md","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"---\nschedule: manual\nenabled: true\ntemplate: true\ntitle: Day Recap\ndescription: \"Today's accomplishments, key moments, and unfinished work\"\nicon: \"📋\"\nfeatured: true\n---\n\nAnalyze my screen and audio recordings from today (last 16 hours only). \n\nRead screenpipe skill first.\n\nUse this exact format:\n\n## Summary\nOne sentence: what I mainly did today.\n\n## Accomplishments\n- Top 3 things I finished, with timestamps (e.g. \"2:30 PM\")\n- Name specific apps, files, or projects\n\n## Key Moments\n- Important things I saw, said, or heard — with timestamps\n\n## Unfinished Work\n- What I should continue tomorrow — name the app/file/task\n\n## Patterns\n- Apps I used most, topics that came up repeatedly\n\nOnly report what you can verify from the data. End with: \"**Next step:** [most important thing to continue]\"\n[rerun: b9]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample app names from frames","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Safari\nActivity Monitor\nDia\niTerm2\nControl Centre\nUserNotificationCenter\nFinder\nClaude\nSlack\nFirefox\nRaycast\nNetAuthAgent\nQuickTime Player\n[rerun: b10]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample joined frame+ocr data for today","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE\n2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER\n2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p\n2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p\n2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi\n[rerun: b11]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample recent audio transcriptions","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-09T17:02:52+00:00|.|System Audio\n2026-04-09T16:59:22+00:00|Class is technically...|System Audio\n2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio\n[rerun: b12]","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Good data to work with. Here's what we have:","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"frames","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"+","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ocr_text","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Screen captures with OCR text, app name, window name (1135 frames so far)","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"audio_transcriptions","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Voice/system audio transcripts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ui_events","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Mouse/keyboard events with app context","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"video_chunks","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Raw video files","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Before I start building, a few quick questions:","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"Tech stack","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"AI summaries","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"What summaries matter most?","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Day recap (what apps/windows you used, key text seen)","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"App time breakdown (time per app)","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Audio/conversation recap","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Custom searchable timeline","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Here's the architecture I'm thinking:","depth":22,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":22,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"/volume1/screenpipe/app/\n├── main.py # FastAPI web UI\n├── cli.py # Click CLI: `python cli.py day-recap`\n├── db.py # Read-only queries against db.sqlite\n├── consumers/\n│ ├── activity.py # App usage, time per window\n│ ├── ocr.py # OCR text aggregation + search\n│ ├── audio.py # Transcription queries\n│ └── summary.py # AI summary builder\n└── static/\n └── index.html # Single-page UI","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"CLI commands would look like:","depth":22,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":22,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"python cli.py day-recap # EOD summary\npython cli.py activity --date today # App time breakdown\npython cli.py search \"docker\" # Search OCR/audio text\npython cli.py serve # Launch web UI","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Does this direction work? Any preferences on the stack or which summaries to prioritize?","depth":22,"role_description":"text"},{"role":"AXButton","text":"Message actions","depth":23,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"seesm ok","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Check Python and available packages","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"python3 --version && pip3 list 2>/dev/null | grep -E \"fastapi|uvicorn|click|anthropic|httpx|jinja\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Python 3.11.2\n[rerun: b1]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Verify join works for today's data","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"\nSELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len\nFROM frames f JOIN ocr_text o ON f.id = o.frame_id\nWHERE DATE(f.timestamp) = '2026-04-11'\nORDER BY f.timestamp DESC LIMIT 3;\n\"","depth":25,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-11T12:54:42.597794+00:00|||2111\n2026-04-11T12:54:41.915916+00:00|||2110\n2026-04-11T12:54:39.912712+00:00|||2111\n[rerun: b2]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Install required packages","depth":23,"role_description":"text"}]...
|
1579793813643720126
|
-8789922368575108586
|
click
|
accessibility
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
3
Claude Code
Containers
EXPLORER
EXPLORER
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
SCREENPIPE [SSH: [IP_ADDRESS]]
#recycle
app
consumers
__init__.py
activity.py
audio.py
elements.py
interactions.py
ocr.py
report.py
summary.py
static
.env
cli.py
db.py
docker-compose.yml
Dockerfile
main.py
requirements.txt
data
pipes
db.sqlite
Outline Section
OUTLINE
OUTLINE
Timeline Section
TIMELINE
TIMELINE
pipe.md, Editor Group 1
#!/bin/bash • Untitled-1, Editor Group 1
report.py, preview, Editor Group 1
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
Build screenpipe data UI…, Editor Group 2
Problems (⇧⌘M)
PROBLEMS
Output (⇧⌘U)
OUTPUT
Debug Console (⇧⌘Y)
DEBUG CONSOLE
Terminal (⌃`)
TERMINAL
Ports
PORTS
remote SSH: [IP_ADDRESS]
SSH: [IP_ADDRESS]
No Problems
0
0
No Ports Forwarded
0
Update is ready, click to restart.
Update is ready, click to restart.
Notifications
Sign In
Sign In
Screen Reader Optimized
Diff editor
Build screenpipe data UI and summary app
Session history
New session
Message actions
lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.
Thinking
Thinking
Let me explore the screenpipe directory to understand what we're working with.
Bash
List screenpipe directory contents
IN
ls /volume1/screenpipe/
Copy code to clipboard
OUT
data
db.sqlite
pipes
#recycle
[rerun: b1]
Bash
List data and pipes directories
IN
ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/
Copy code to clipboard
OUT
2026-04-09
2026-04-11
ai-habits
day-recap
meeting-summary
standup-update
time-breakdown
video-export
[rerun: b2]
Bash
List tables in screenpipe SQLite database
IN
sqlite3 /volume1/screenpipe/db.sqlite ".tables"
Copy code to clipboard
OUT
_sqlx_migrations meetings
audio_chunks memories
audio_tags memories_fts
audio_transcriptions memories_fts_config
audio_transcriptions_fts memories_fts_data
audio_transcriptions_fts_config memories_fts_docsize
audio_transcriptions_fts_data memories_fts_idx
audio_transcriptions_fts_docsize ocr_text
audio_transcriptions_fts_idx pipe_executions
elements pipe_scheduler_state
elements_fts speaker_embeddings
elements_fts_config speakers
elements_fts_data tags
elements_fts_docsize ui_events
elements_fts_idx ui_events_fts
frames ui_events_fts_config
frames_fts ui_events_fts_data
frames_fts_config ui_events_fts_docsize
frames_fts_content ui_events_fts_idx
frames_fts_data video_chunks
frames_fts_docsize vision_tags
frames_fts_idx
[rerun: b3]
Bash
Get ocr_text table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(ocr_text);"
Copy code to clipboard
OUT
0|frame_id|INTEGER|1||0
1|text|TEXT|1||0
2|text_json|TEXT|0||0
3|app_name|TEXT|1|''|0
4|ocr_engine|TEXT|1|'unknown'|0
5|window_name|TEXT|0||0
6|focused|BOOLEAN|0|FALSE|0
7|text_length|INTEGER|0||0
8|sync_id|TEXT|0||0
9|synced_at|DATETIME|0||0
[rerun: b4]
Bash
Get audio_transcriptions table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(audio_transcriptions);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|audio_chunk_id|INTEGER|1||0
2|offset_index|INTEGER|1||0
3|timestamp|TIMESTAMP|1||0
4|transcription|TEXT|1||0
5|device|TEXT|1|''|0
6|is_input_device|BOOLEAN|1|TRUE|0
7|speaker_id|INTEGER|0||0
8|transcription_engine|TEXT|1|'Whisper'|0
9|start_time|REAL|0||0
10|end_time|REAL|0||0
11|text_length|INTEGER|0||0
12|sync_id|TEXT|0||0
13|synced_at|DATETIME|0||0
[rerun: b5]
Bash
Get frames, ui_events, video_chunks schemas
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|video_chunk_id|INTEGER|0|NULL|0
2|offset_index|INTEGER|1|0|0
3|timestamp|TIMESTAMP|1||0
4|name|TEXT|0||0
5|app_name|TEXT|0|NULL|0
6|window_name|TEXT|0|NULL|0
7|focused|BOOLEAN|0|NULL|0
8|browser_url|TEXT|0|NULL|0
9|device_name|TEXT|1|''|0
10|sync_id|TEXT|0||0
11|machine_id|TEXT|0||0
12|synced_at|DATETIME|0||0
13|snapshot_path|TEXT|0|NULL|0
14|accessibility_text|TEXT|0|NULL|0
15|accessibility_tree_json|TEXT|0|NULL|0
16|content_hash|INTEGER|0|NULL|0
17|simhash|INTEGER|0|NULL|0
18|capture_trigger|TEXT|0|NULL|0
19|text_source|TEXT|0|NULL|0
20|cloud_blob_id|TEXT|0|NULL|0
21|full_text|TEXT|0|NULL|0
22|elements_ref_frame_id|INTEGER|0|NULL|0
0|id|INTEGER|0||1
1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0
2|session_id|TEXT|0||0
3|relative_ms|INTEGER|1|0|0
4|event_type|TEXT|1||0
5|x|INTEGER|0||0
6|y|INTEGER|0||0
7|delta_x|INTEGER|0||0
8|delta_y|INTEGER|0||0
9|button|INTEGER|0||0
10|click_count|INTEGER|0||0
11|key_code|INTEGER|0||0
12|modifiers|INTEGER|0||0
13|text_content|TEXT|0||0
14|text_length|INTEGER|0||0
15|app_name|TEXT|0||0
16|app_pid|INTEGER|0||0
17|window_title|TEXT|0||0
18|browser_url|TEXT|0||0
19|element_role|TEXT|0||0
20|element_name|TEXT|0||0
21|element_value|TEXT|0||0
22|element_description|TEXT|0||0
23|element_automation_id|TEXT|0||0
24|element_bounds|TEXT|0||0
25|frame_id|INTEGER|0||0
26|sync_id|TEXT|0||0
27|machine_id|TEXT|0||0
28|synced_at|DATETIME|0||0
0|id|INTEGER|0||1
1|file_path|TEXT|1||0
2|device_name|TEXT|1|''|0
3|sync_id|TEXT|0||0
4|machine_id|TEXT|0||0
5|synced_at|DATETIME|0||0
6|fps|REAL|1|0.5|0
7|cloud_blob_id|TEXT|0|NULL|0
[rerun: b6]
Bash
Check data counts and date ranges
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*) FROM ocr_text;" 2>/dev/null
Copy code to clipboard
OUT
1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00
3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00
666
[rerun: b7]
Bash
Explore existing pipes for patterns
IN
ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50
Copy code to clipboard
OUT
pipe.md
[rerun: b8]
Bash
Read day-recap pipe documentation
IN
cat /volume1/screenpipe/pipes/day-recap/pipe.md
Copy code to clipboard
OUT
---
schedule: manual
enabled: true
template: true
title: Day Recap
description: "Today's accomplishments, key moments, and unfinished work"
icon: "📋"
featured: true
---
Analyze my screen and audio recordings from today (last 16 hours only).
Read screenpipe skill first.
Use this exact format:
## Summary
One sentence: what I mainly did today.
## Accomplishments
- Top 3 things I finished, with timestamps (e.g. "2:30 PM")
- Name specific apps, files, or projects
## Key Moments
- Important things I saw, said, or heard — with timestamps
## Unfinished Work
- What I should continue tomorrow — name the app/file/task
## Patterns
- Apps I used most, topics that came up repeatedly
Only report what you can verify from the data. End with: "**Next step:** [most important thing to continue]"
[rerun: b9]
Bash
Sample app names from frames
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;"
Copy code to clipboard
OUT
Safari
Activity Monitor
Dia
iTerm2
Control Centre
UserNotificationCenter
Finder
Claude
Slack
Firefox
Raycast
NetAuthAgent
QuickTime Player
[rerun: b10]
Bash
Sample joined frame+ocr data for today
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;"
Copy code to clipboard
OUT
2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE
2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER
2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p
2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p
2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi
[rerun: b11]
Bash
Sample recent audio transcriptions
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;"
Copy code to clipboard
OUT
2026-04-09T17:02:52+00:00|.|System Audio
2026-04-09T16:59:22+00:00|Class is technically...|System Audio
2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio
[rerun: b12]
Thinking
Thinking
Good data to work with. Here's what we have:
frames
+
ocr_text
: Screen captures with OCR text, app name, window name (1135 frames so far)
audio_transcriptions
: Voice/system audio transcripts
ui_events
: Mouse/keyboard events with app context
video_chunks
: Raw video files
Before I start building, a few quick questions:
Tech stack
— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)
AI summaries
— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?
What summaries matter most?
Day recap (what apps/windows you used, key text seen)
App time breakdown (time per app)
Audio/conversation recap
Custom searchable timeline
Here's the architecture I'm thinking:
Copy code to clipboard
/volume1/screenpipe/app/
├── main.py # FastAPI web UI
├── cli.py # Click CLI: `python cli.py day-recap`
├── db.py # Read-only queries against db.sqlite
├── consumers/
│ ├── activity.py # App usage, time per window
│ ├── ocr.py # OCR text aggregation + search
│ ├── audio.py # Transcription queries
│ └── summary.py # AI summary builder
└── static/
└── index.html # Single-page UI
CLI commands would look like:
Copy code to clipboard
python cli.py day-recap # EOD summary
python cli.py activity --date today # App time breakdown
python cli.py search "docker" # Search OCR/audio text
python cli.py serve # Launch web UI
Does this direction work? Any preferences on the stack or which summaries to prioritize?
Message actions
seesm ok
Thinking
Thinking
Bash
Check Python and available packages
IN
python3 --version && pip3 list 2>/dev/null | grep -E "fastapi|uvicorn|click|anthropic|httpx|jinja"
Copy code to clipboard
OUT
Python 3.11.2
[rerun: b1]
Bash
Verify join works for today's data
IN
sqlite3 /volume1/screenpipe/db.sqlite "
SELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len
FROM frames f JOIN ocr_text o ON f.id = o.frame_id
WHERE DATE(f.timestamp) = '2026-04-11'
ORDER BY f.timestamp DESC LIMIT 3;
"
Copy code to clipboard
OUT
2026-04-11T12:54:42.597794+00:00|||2111
2026-04-11T12:54:41.915916+00:00|||2110
2026-04-11T12:54:39.912712+00:00|||2111
[rerun: b2]
Bash
Install required packages...
|
1573
|
|
1575
|
34
|
46
|
2026-04-11T17:40:51.704472+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929251704_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:51-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
5121430364334479611
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:51-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1576
|
34
|
47
|
2026-04-11T17:40:53.803469+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929253803_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:53-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-9153977448983901970
|
NULL
|
clipboard
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:40:53-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1575
|
|
1577
|
34
|
48
|
2026-04-11T17:41:04.686357+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929264686_m1.jpg...
|
Code
|
Build screenpipe data UI… — screenpipe [SSH: 100.7 Build screenpipe data UI… — screenpipe [SSH: 100.73.206.126]...
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
3
Claude Code
Containers
EXPLORER
EXPLORER
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
SCREENPIPE [SSH: [IP_ADDRESS]]
#recycle
app
consumers
__init__.py
activity.py
audio.py
elements.py
interactions.py
ocr.py
report.py
summary.py
static
.env
cli.py
db.py
docker-compose.yml
Dockerfile
main.py
requirements.txt
data
pipes
db.sqlite
Outline Section
OUTLINE
OUTLINE
Timeline Section
TIMELINE
TIMELINE
pipe.md, Editor Group 1
#!/bin/bash • Untitled-1, Editor Group 1
report.py, preview, Editor Group 1
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
Build screenpipe data UI…, Editor Group 2
Problems (⇧⌘M)
PROBLEMS
Output (⇧⌘U)
OUTPUT
Debug Console (⇧⌘Y)
DEBUG CONSOLE
Terminal (⌃`)
TERMINAL
Ports
PORTS
remote SSH: [IP_ADDRESS]
SSH: [IP_ADDRESS]
No Problems
0
0
No Ports Forwarded
0
Update is ready, click to restart.
Update is ready, click to restart.
Notifications
Sign In
Sign In
Screen Reader Optimized
Diff editor
Command Succeeded
Build screenpipe data UI and summary app
Session history
New session
Message actions
lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.
Thinking
Thinking
Let me explore the screenpipe directory to understand what we're working with.
Bash
List screenpipe directory contents
IN
ls /volume1/screenpipe/
Copy code to clipboard
OUT
data
db.sqlite
pipes
#recycle
[rerun: b1]
Bash
List data and pipes directories
IN
ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/
Copy code to clipboard
OUT
2026-04-09
2026-04-11
ai-habits
day-recap
meeting-summary
standup-update
time-breakdown
video-export
[rerun: b2]
Bash
List tables in screenpipe SQLite database
IN
sqlite3 /volume1/screenpipe/db.sqlite ".tables"
Copy code to clipboard
OUT
_sqlx_migrations meetings
audio_chunks memories
audio_tags memories_fts
audio_transcriptions memories_fts_config
audio_transcriptions_fts memories_fts_data
audio_transcriptions_fts_config memories_fts_docsize
audio_transcriptions_fts_data memories_fts_idx
audio_transcriptions_fts_docsize ocr_text
audio_transcriptions_fts_idx pipe_executions
elements pipe_scheduler_state
elements_fts speaker_embeddings
elements_fts_config speakers
elements_fts_data tags
elements_fts_docsize ui_events
elements_fts_idx ui_events_fts
frames ui_events_fts_config
frames_fts ui_events_fts_data
frames_fts_config ui_events_fts_docsize
frames_fts_content ui_events_fts_idx
frames_fts_data video_chunks
frames_fts_docsize vision_tags
frames_fts_idx
[rerun: b3]
Bash
Get ocr_text table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(ocr_text);"
Copy code to clipboard
OUT
0|frame_id|INTEGER|1||0
1|text|TEXT|1||0
2|text_json|TEXT|0||0
3|app_name|TEXT|1|''|0
4|ocr_engine|TEXT|1|'unknown'|0
5|window_name|TEXT|0||0
6|focused|BOOLEAN|0|FALSE|0
7|text_length|INTEGER|0||0
8|sync_id|TEXT|0||0
9|synced_at|DATETIME|0||0
[rerun: b4]
Bash
Get audio_transcriptions table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(audio_transcriptions);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|audio_chunk_id|INTEGER|1||0
2|offset_index|INTEGER|1||0
3|timestamp|TIMESTAMP|1||0
4|transcription|TEXT|1||0
5|device|TEXT|1|''|0
6|is_input_device|BOOLEAN|1|TRUE|0
7|speaker_id|INTEGER|0||0
8|transcription_engine|TEXT|1|'Whisper'|0
9|start_time|REAL|0||0
10|end_time|REAL|0||0
11|text_length|INTEGER|0||0
12|sync_id|TEXT|0||0
13|synced_at|DATETIME|0||0
[rerun: b5]
Bash
Get frames, ui_events, video_chunks schemas
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|video_chunk_id|INTEGER|0|NULL|0
2|offset_index|INTEGER|1|0|0
3|timestamp|TIMESTAMP|1||0
4|name|TEXT|0||0
5|app_name|TEXT|0|NULL|0
6|window_name|TEXT|0|NULL|0
7|focused|BOOLEAN|0|NULL|0
8|browser_url|TEXT|0|NULL|0
9|device_name|TEXT|1|''|0
10|sync_id|TEXT|0||0
11|machine_id|TEXT|0||0
12|synced_at|DATETIME|0||0
13|snapshot_path|TEXT|0|NULL|0
14|accessibility_text|TEXT|0|NULL|0
15|accessibility_tree_json|TEXT|0|NULL|0
16|content_hash|INTEGER|0|NULL|0
17|simhash|INTEGER|0|NULL|0
18|capture_trigger|TEXT|0|NULL|0
19|text_source|TEXT|0|NULL|0
20|cloud_blob_id|TEXT|0|NULL|0
21|full_text|TEXT|0|NULL|0
22|elements_ref_frame_id|INTEGER|0|NULL|0
0|id|INTEGER|0||1
1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0
2|session_id|TEXT|0||0
3|relative_ms|INTEGER|1|0|0
4|event_type|TEXT|1||0
5|x|INTEGER|0||0
6|y|INTEGER|0||0
7|delta_x|INTEGER|0||0
8|delta_y|INTEGER|0||0
9|button|INTEGER|0||0
10|click_count|INTEGER|0||0
11|key_code|INTEGER|0||0
12|modifiers|INTEGER|0||0
13|text_content|TEXT|0||0
14|text_length|INTEGER|0||0
15|app_name|TEXT|0||0
16|app_pid|INTEGER|0||0
17|window_title|TEXT|0||0
18|browser_url|TEXT|0||0
19|element_role|TEXT|0||0
20|element_name|TEXT|0||0
21|element_value|TEXT|0||0
22|element_description|TEXT|0||0
23|element_automation_id|TEXT|0||0
24|element_bounds|TEXT|0||0
25|frame_id|INTEGER|0||0
26|sync_id|TEXT|0||0
27|machine_id|TEXT|0||0
28|synced_at|DATETIME|0||0
0|id|INTEGER|0||1
1|file_path|TEXT|1||0
2|device_name|TEXT|1|''|0
3|sync_id|TEXT|0||0
4|machine_id|TEXT|0||0
5|synced_at|DATETIME|0||0
6|fps|REAL|1|0.5|0
7|cloud_blob_id|TEXT|0|NULL|0
[rerun: b6]
Bash
Check data counts and date ranges
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*) FROM ocr_text;" 2>/dev/null
Copy code to clipboard
OUT
1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00
3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00
666
[rerun: b7]
Bash
Explore existing pipes for patterns
IN
ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50
Copy code to clipboard
OUT
pipe.md
[rerun: b8]
Bash
Read day-recap pipe documentation
IN
cat /volume1/screenpipe/pipes/day-recap/pipe.md
Copy code to clipboard
OUT
---
schedule: manual
enabled: true
template: true
title: Day Recap
description: "Today's accomplishments, key moments, and unfinished work"
icon: "📋"
featured: true
---
Analyze my screen and audio recordings from today (last 16 hours only).
Read screenpipe skill first.
Use this exact format:
## Summary
One sentence: what I mainly did today.
## Accomplishments
- Top 3 things I finished, with timestamps (e.g. "2:30 PM")
- Name specific apps, files, or projects
## Key Moments
- Important things I saw, said, or heard — with timestamps
## Unfinished Work
- What I should continue tomorrow — name the app/file/task
## Patterns
- Apps I used most, topics that came up repeatedly
Only report what you can verify from the data. End with: "**Next step:** [most important thing to continue]"
[rerun: b9]
Bash
Sample app names from frames
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;"
Copy code to clipboard
OUT
Safari
Activity Monitor
Dia
iTerm2
Control Centre
UserNotificationCenter
Finder
Claude
Slack
Firefox
Raycast
NetAuthAgent
QuickTime Player
[rerun: b10]
Bash
Sample joined frame+ocr data for today
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;"
Copy code to clipboard
OUT
2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE
2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER
2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p
2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p
2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi
[rerun: b11]
Bash
Sample recent audio transcriptions
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;"
Copy code to clipboard
OUT
2026-04-09T17:02:52+00:00|.|System Audio
2026-04-09T16:59:22+00:00|Class is technically...|System Audio
2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio
[rerun: b12]
Thinking
Thinking
Good data to work with. Here's what we have:
frames
+
ocr_text
: Screen captures with OCR text, app name, window name (1135 frames so far)
audio_transcriptions
: Voice/system audio transcripts
ui_events
: Mouse/keyboard events with app context
video_chunks
: Raw video files
Before I start building, a few quick questions:
Tech stack
— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)
AI summaries
— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?
What summaries matter most?
Day recap (what apps/windows you used, key text seen)
App time breakdown (time per app)
Audio/conversation recap
Custom searchable timeline
Here's the architecture I'm thinking:
Copy code to clipboard
/volume1/screenpipe/app/
├── main.py # FastAPI web UI
├── cli.py # Click CLI: `python cli.py day-recap`
├── db.py # Read-only queries against db.sqlite
├── consumers/
│ ├── activity.py # App usage, time per window
│ ├── ocr.py # OCR text aggregation + search
│ ├── audio.py # Transcription queries
│ └── summary.py # AI summary builder
└── static/
└── index.html # Single-page UI
CLI commands would look like:
Copy code to clipboard
python cli.py day-recap # EOD summary
python cli.py activity --date today # App time breakdown
python cli.py search "docker" # Search OCR/audio text
python cli.py serve # Launch web UI
Does this direction work? Any preferences on the stack or which summaries to prioritize?
Message actions
seesm ok
Thinking
Thinking
Bash
Check Python and available packages
IN
python3 --version && pip3 list 2>/dev/null | grep -E "fastapi|uvicorn|click|anthropic|httpx|jinja"
Copy code to clipboard
OUT
Python 3.11.2
[rerun: b1]
Bash
Verify join works for today's data
IN
sqlite3 /volume1/screenpipe/db.sqlite "
SELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len
FROM frames f JOIN ocr_text o ON f.id = o.frame_id
WHERE DATE(f.timestamp) = '2026-04-11'
ORDER BY f.timestamp DESC LIMIT 3;
"
Copy code to clipboard
OUT
2026-04-11T12:54:42.597794+00:00|||2111
2026-04-11T12:54:41.915916+00:00|||2110
2026-04-11T12:54:39.912712+00:00|||2111
[rerun: b2]
Bash
Install required packages
IN
pip3 install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -5
Copy code to clipboard
OUT
/bin/bash: line 1: pip3: command not found
[rerun: b3]
Bash
Find pip
IN
which pip || which pip3 || python3 -m pip --version 2>/dev/null
Copy code to clipboard
OUT
Exit code 1
[rerun: b4]
Bash
Bootstrap pip then install packages
IN
python3 -m ensurepip --upgrade 2>&1 && python3 -m pip install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -10
Copy code to clipboard...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Explorer (⇧⌘E) - 1 unsaved file","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":true},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"1","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Search (⇧⌘F)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Source Control (⌃⇧G)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Run and Debug (⇧⌘D)","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Remote Explorer","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Extensions (⇧⌘X) - 2 require update, 1 requires restart","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"3","depth":22,"role_description":"text"},{"role":"AXRadioButton","text":"Claude Code","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Containers","depth":19,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"EXPLORER","depth":17,"role_description":"heading"},{"role":"AXStaticText","text":"EXPLORER","depth":18,"role_description":"text"},{"role":"AXButton","text":"Explorer Section: screenpipe [SSH: 100.73.206.126]","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"Explorer Section: screenpipe [SSH: 100.73.206.126]","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"SCREENPIPE [SSH: 100.73.206.126]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"#recycle","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"app","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"consumers","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"__init__.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"activity.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"audio.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"elements.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"interactions.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"ocr.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"report.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"summary.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"static","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":".env","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"cli.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"db.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"docker-compose.yml","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"Dockerfile","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"main.py","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"requirements.txt","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"data","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":26,"role_description":"text"},{"role":"AXStaticText","text":"pipes","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"","depth":27,"role_description":"text"},{"role":"AXStaticText","text":"db.sqlite","depth":27,"role_description":"text"},{"role":"AXButton","text":"Outline Section","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"OUTLINE","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"OUTLINE","depth":23,"role_description":"text"},{"role":"AXButton","text":"Timeline Section","depth":21,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":23,"role_description":"text"},{"role":"AXHeading","text":"TIMELINE","depth":22,"role_description":"heading"},{"role":"AXStaticText","text":"TIMELINE","depth":23,"role_description":"text"},{"role":"AXRadioButton","text":"pipe.md, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"#!/bin/bash • Untitled-1, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"report.py, preview, Editor Group 1","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXStaticText","text":"","depth":29,"role_description":"text"},{"role":"AXStaticText","text":"","depth":29,"role_description":"text"},{"role":"AXTextArea","text":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","depth":28,"value":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","role_description":"editor","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"\"\"\"Structured work report — no LLM needed.\"\"\"\nfrom datetime import date, datetime, timezone, timedelta\nfrom typing import Any\nfrom urllib.parse import urlparse\n\nfrom db import get_conn, date_range, today as _today\n\nBREAK_THRESHOLD_MIN = 10 # gap > 10 min = break\nWORK_APPS = {\n \"code\": {\"iTerm2\", \"Terminal\", \"Code\", \"Visual Studio Code\", \"PyCharm\", \"Xcode\", \"Cursor\"},\n \"browser\": {\"Firefox\", \"Safari\", \"Chrome\", \"Arc\", \"Dia\"},\n \"comms\": {\"Slack\", \"Teams\", \"Discord\", \"Zoom\", \"Telegram\", \"WhatsApp\"},\n \"docs\": {\"Word\", \"Pages\", \"Notion\", \"Obsidian\", \"Bear\", \"Typora\"},\n \"ai\": {\"Claude\", \"ChatGPT\"},\n \"design\": {\"Figma\", \"Sketch\", \"Photoshop\", \"Illustrator\"},\n \"media\": {\"QuickTime Player\", \"VLC\", \"Spotify\"},\n \"system\": {\"Finder\", \"Activity Monitor\", \"System Preferences\", \"System Settings\",\n \"Raycast\", \"Control Centre\", \"UserNotificationCenter\", \"NetAuthAgent\"},\n}\n\ndef _categorize(app_name: str) -> str:\n for cat, apps in WORK_APPS.items():\n if app_name in apps:\n return cat\n return \"other\"\n\ndef _extract_domain(url: str) -> str:\n try:\n h = urlparse(url).netloc\n return h.removeprefix(\"www.\") if h else url[:40]\n except Exception:\n return url[:40]\n\ndef _parse_ts(ts: str) -> datetime:\n ts = ts.replace(\"+00:00\", \"+00:00\") # already UTC\n try:\n return datetime.fromisoformat(ts)\n except ValueError:\n return datetime.fromisoformat(ts[:26] + \"+00:00\")\n\n\ndef session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:\n \"\"\"\n Detect work sessions and breaks from frame timestamps.\n Returns sessions, breaks, and totals.\n \"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp\",\n (start, end),\n ).fetchall()\n\n if not rows:\n return {\"sessions\": [], \"breaks\": [], \"total_active_min\": 0, \"total_break_min\": 0, \"date\": str(d)}\n\n timestamps = [_parse_ts(r[\"timestamp\"]) for r in rows]\n threshold = timedelta(minutes=break_min)\n\n sessions: list[dict] = []\n breaks: list[dict] = []\n sess_start = timestamps[0]\n prev = timestamps[0]\n\n for ts in timestamps[1:]:\n gap = ts - prev\n if gap > threshold:\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n breaks.append({\n \"start\": prev.isoformat(),\n \"end\": ts.isoformat(),\n \"duration_min\": round(gap.total_seconds() / 60, 1),\n })\n sess_start = ts\n prev = ts\n\n dur = (prev - sess_start).total_seconds() / 60\n sessions.append({\n \"start\": sess_start.isoformat(),\n \"end\": prev.isoformat(),\n \"duration_min\": round(dur, 1),\n })\n\n total_active = sum(s[\"duration_min\"] for s in sessions)\n total_break = sum(b[\"duration_min\"] for b in breaks)\n total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60\n\n return {\n \"date\": str(d),\n \"day_start\": timestamps[0].isoformat(),\n \"day_end\": timestamps[-1].isoformat(),\n \"total_span_min\": round(total_span, 1),\n \"total_active_min\": round(total_active, 1),\n \"total_break_min\": round(total_break, 1),\n \"sessions\": sessions,\n \"breaks\": breaks,\n }\n\n\ndef domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:\n \"\"\"Browser time grouped by domain.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n rows = conn.execute(\n \"\"\"\n SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ?\n AND browser_url IS NOT NULL AND browser_url != ''\n GROUP BY browser_url\n ORDER BY frames DESC\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Group by domain\n domains: dict[str, dict] = {}\n for r in rows:\n domain = _extract_domain(r[\"browser_url\"])\n if domain not in domains:\n domains[domain] = {\"domain\": domain, \"minutes\": 0, \"urls\": []}\n domains[domain][\"minutes\"] = round(domains[domain][\"minutes\"] + r[\"minutes\"], 1)\n domains[domain][\"urls\"].append({\"url\": r[\"browser_url\"], \"minutes\": r[\"minutes\"]})\n\n return sorted(domains.values(), key=lambda x: x[\"minutes\"], reverse=True)\n\n\ndef slack_activity(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Slack-specific: time, channels, message activity.\"\"\"\n d = for_date or _today()\n start, end = date_range(d)\n\n with get_conn() as conn:\n # Time in Slack\n time_row = conn.execute(\n \"\"\"\n SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n # Channels from window names\n channels = conn.execute(\n \"\"\"\n SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes\n FROM frames\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n AND window_name IS NOT NULL AND window_name != ''\n GROUP BY window_name ORDER BY frames DESC LIMIT 20\n \"\"\",\n (start, end),\n ).fetchall()\n\n # Keystrokes in Slack (proxy for messages sent)\n events = conn.execute(\n \"\"\"\n SELECT\n SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,\n SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks\n FROM ui_events\n WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'\n \"\"\",\n (start, end),\n ).fetchone()\n\n return {\n \"minutes\": time_row[\"minutes\"] if time_row else 0,\n \"frames\": time_row[\"frames\"] if time_row else 0,\n \"keystrokes\": events[\"keystrokes\"] if events else 0,\n \"clicks\": events[\"clicks\"] if events else 0,\n \"channels\": [dict(r) for r in channels],\n }\n\n\ndef work_report(for_date: date | None = None) -> dict[str, Any]:\n \"\"\"Full structured work report — no AI needed.\"\"\"\n from consumers.activity import app_time, ui_event_summary\n\n d = for_date or _today()\n\n apps = app_time(d)\n # Annotate with category\n categorized: dict[str, list] = {}\n for a in apps:\n cat = _categorize(a[\"app_name\"])\n categorized.setdefault(cat, []).append(a)\n\n return {\n \"date\": str(d),\n \"sessions\": session_breakdown(d),\n \"apps_by_category\": categorized,\n \"domains\": domain_breakdown(d),\n \"slack\": slack_activity(d),\n \"ui_events\": ui_event_summary(d),\n }","depth":29,"role_description":"text"},{"role":"AXRadioButton","text":"Build screenpipe data UI…, Editor Group 2","depth":28,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":false},{"role":"AXRadioButton","text":"Problems (⇧⌘M)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"PROBLEMS","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Output (⇧⌘U)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUTPUT","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Debug Console (⇧⌘Y)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"DEBUG CONSOLE","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Terminal (⌃`)","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true,"is_expanded":true},{"role":"AXStaticText","text":"TERMINAL","depth":24,"role_description":"text"},{"role":"AXRadioButton","text":"Ports","depth":22,"role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"PORTS","depth":24,"role_description":"text"},{"role":"AXButton","text":"remote SSH: 100.73.206.126","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"SSH: 100.73.206.126","depth":17,"role_description":"text"},{"role":"AXButton","text":"No Problems","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXButton","text":"No Ports Forwarded","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0","depth":17,"role_description":"text"},{"role":"AXButton","text":"Update is ready, click to restart.","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Update is ready, click to restart.","depth":17,"role_description":"text"},{"role":"AXButton","text":"Notifications","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sign In","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"Sign In","depth":17,"role_description":"text"},{"role":"AXButton","text":"Screen Reader Optimized","depth":16,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Diff editor","depth":12,"role_description":"text"},{"role":"AXStaticText","text":"Command Succeeded","depth":12,"role_description":"text"},{"role":"AXButton","text":"Build screenpipe data UI and summary app","depth":18,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Session history","depth":18,"help_text":"Session history","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New session","depth":18,"help_text":"New session","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Message actions","depth":23,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Let me explore the screenpipe directory to understand what we're working with.","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List screenpipe directory contents","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"data\ndb.sqlite\npipes\n#recycle\n[rerun: b1]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List data and pipes directories","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-09\n2026-04-11\nai-habits\nday-recap\nmeeting-summary\nstandup-update\ntime-breakdown\nvideo-export\n[rerun: b2]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"List tables in screenpipe SQLite database","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \".tables\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"_sqlx_migrations meetings \naudio_chunks memories \naudio_tags memories_fts \naudio_transcriptions memories_fts_config \naudio_transcriptions_fts memories_fts_data \naudio_transcriptions_fts_config memories_fts_docsize \naudio_transcriptions_fts_data memories_fts_idx \naudio_transcriptions_fts_docsize ocr_text \naudio_transcriptions_fts_idx pipe_executions \nelements pipe_scheduler_state \nelements_fts speaker_embeddings \nelements_fts_config speakers \nelements_fts_data tags \nelements_fts_docsize ui_events \nelements_fts_idx ui_events_fts \nframes ui_events_fts_config \nframes_fts ui_events_fts_data \nframes_fts_config ui_events_fts_docsize \nframes_fts_content ui_events_fts_idx \nframes_fts_data video_chunks \nframes_fts_docsize vision_tags \nframes_fts_idx\n[rerun: b3]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get ocr_text table schema","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(ocr_text);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|frame_id|INTEGER|1||0\n1|text|TEXT|1||0\n2|text_json|TEXT|0||0\n3|app_name|TEXT|1|''|0\n4|ocr_engine|TEXT|1|'unknown'|0\n5|window_name|TEXT|0||0\n6|focused|BOOLEAN|0|FALSE|0\n7|text_length|INTEGER|0||0\n8|sync_id|TEXT|0||0\n9|synced_at|DATETIME|0||0\n[rerun: b4]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get audio_transcriptions table schema","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(audio_transcriptions);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|id|INTEGER|0||1\n1|audio_chunk_id|INTEGER|1||0\n2|offset_index|INTEGER|1||0\n3|timestamp|TIMESTAMP|1||0\n4|transcription|TEXT|1||0\n5|device|TEXT|1|''|0\n6|is_input_device|BOOLEAN|1|TRUE|0\n7|speaker_id|INTEGER|0||0\n8|transcription_engine|TEXT|1|'Whisper'|0\n9|start_time|REAL|0||0\n10|end_time|REAL|0||0\n11|text_length|INTEGER|0||0\n12|sync_id|TEXT|0||0\n13|synced_at|DATETIME|0||0\n[rerun: b5]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Get frames, ui_events, video_chunks schemas","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"0|id|INTEGER|0||1\n1|video_chunk_id|INTEGER|0|NULL|0\n2|offset_index|INTEGER|1|0|0\n3|timestamp|TIMESTAMP|1||0\n4|name|TEXT|0||0\n5|app_name|TEXT|0|NULL|0\n6|window_name|TEXT|0|NULL|0\n7|focused|BOOLEAN|0|NULL|0\n8|browser_url|TEXT|0|NULL|0\n9|device_name|TEXT|1|''|0\n10|sync_id|TEXT|0||0\n11|machine_id|TEXT|0||0\n12|synced_at|DATETIME|0||0\n13|snapshot_path|TEXT|0|NULL|0\n14|accessibility_text|TEXT|0|NULL|0\n15|accessibility_tree_json|TEXT|0|NULL|0\n16|content_hash|INTEGER|0|NULL|0\n17|simhash|INTEGER|0|NULL|0\n18|capture_trigger|TEXT|0|NULL|0\n19|text_source|TEXT|0|NULL|0\n20|cloud_blob_id|TEXT|0|NULL|0\n21|full_text|TEXT|0|NULL|0\n22|elements_ref_frame_id|INTEGER|0|NULL|0\n0|id|INTEGER|0||1\n1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0\n2|session_id|TEXT|0||0\n3|relative_ms|INTEGER|1|0|0\n4|event_type|TEXT|1||0\n5|x|INTEGER|0||0\n6|y|INTEGER|0||0\n7|delta_x|INTEGER|0||0\n8|delta_y|INTEGER|0||0\n9|button|INTEGER|0||0\n10|click_count|INTEGER|0||0\n11|key_code|INTEGER|0||0\n12|modifiers|INTEGER|0||0\n13|text_content|TEXT|0||0\n14|text_length|INTEGER|0||0\n15|app_name|TEXT|0||0\n16|app_pid|INTEGER|0||0\n17|window_title|TEXT|0||0\n18|browser_url|TEXT|0||0\n19|element_role|TEXT|0||0\n20|element_name|TEXT|0||0\n21|element_value|TEXT|0||0\n22|element_description|TEXT|0||0\n23|element_automation_id|TEXT|0||0\n24|element_bounds|TEXT|0||0\n25|frame_id|INTEGER|0||0\n26|sync_id|TEXT|0||0\n27|machine_id|TEXT|0||0\n28|synced_at|DATETIME|0||0\n0|id|INTEGER|0||1\n1|file_path|TEXT|1||0\n2|device_name|TEXT|1|''|0\n3|sync_id|TEXT|0||0\n4|machine_id|TEXT|0||0\n5|synced_at|DATETIME|0||0\n6|fps|REAL|1|0.5|0\n7|cloud_blob_id|TEXT|0|NULL|0\n[rerun: b6]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Check data counts and date ranges","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;\" 2>/dev/null\nsqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;\" 2>/dev/null\nsqlite3 /volume1/screenpipe/db.sqlite \"SELECT COUNT(*) FROM ocr_text;\" 2>/dev/null","depth":25,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00\n3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00\n666\n[rerun: b7]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Explore existing pipes for patterns","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"pipe.md\n[rerun: b8]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Read day-recap pipe documentation","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"cat /volume1/screenpipe/pipes/day-recap/pipe.md","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"---\nschedule: manual\nenabled: true\ntemplate: true\ntitle: Day Recap\ndescription: \"Today's accomplishments, key moments, and unfinished work\"\nicon: \"📋\"\nfeatured: true\n---\n\nAnalyze my screen and audio recordings from today (last 16 hours only). \n\nRead screenpipe skill first.\n\nUse this exact format:\n\n## Summary\nOne sentence: what I mainly did today.\n\n## Accomplishments\n- Top 3 things I finished, with timestamps (e.g. \"2:30 PM\")\n- Name specific apps, files, or projects\n\n## Key Moments\n- Important things I saw, said, or heard — with timestamps\n\n## Unfinished Work\n- What I should continue tomorrow — name the app/file/task\n\n## Patterns\n- Apps I used most, topics that came up repeatedly\n\nOnly report what you can verify from the data. End with: \"**Next step:** [most important thing to continue]\"\n[rerun: b9]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample app names from frames","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Safari\nActivity Monitor\nDia\niTerm2\nControl Centre\nUserNotificationCenter\nFinder\nClaude\nSlack\nFirefox\nRaycast\nNetAuthAgent\nQuickTime Player\n[rerun: b10]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample joined frame+ocr data for today","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE\n2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER\n2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p\n2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p\n2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi\n[rerun: b11]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Sample recent audio transcriptions","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-09T17:02:52+00:00|.|System Audio\n2026-04-09T16:59:22+00:00|Class is technically...|System Audio\n2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio\n[rerun: b12]","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Good data to work with. Here's what we have:","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"frames","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"+","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ocr_text","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Screen captures with OCR text, app name, window name (1135 frames so far)","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"audio_transcriptions","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Voice/system audio transcripts","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"ui_events","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Mouse/keyboard events with app context","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"video_chunks","depth":24,"role_description":"text"},{"role":"AXStaticText","text":": Raw video files","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Before I start building, a few quick questions:","depth":22,"role_description":"text"},{"role":"AXStaticText","text":"Tech stack","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"AI summaries","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"What summaries matter most?","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Day recap (what apps/windows you used, key text seen)","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"App time breakdown (time per app)","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Audio/conversation recap","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Custom searchable timeline","depth":25,"role_description":"text"},{"role":"AXStaticText","text":"Here's the architecture I'm thinking:","depth":22,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":22,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"/volume1/screenpipe/app/\n├── main.py # FastAPI web UI\n├── cli.py # Click CLI: `python cli.py day-recap`\n├── db.py # Read-only queries against db.sqlite\n├── consumers/\n│ ├── activity.py # App usage, time per window\n│ ├── ocr.py # OCR text aggregation + search\n│ ├── audio.py # Transcription queries\n│ └── summary.py # AI summary builder\n└── static/\n └── index.html # Single-page UI","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"CLI commands would look like:","depth":22,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":22,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"python cli.py day-recap # EOD summary\npython cli.py activity --date today # App time breakdown\npython cli.py search \"docker\" # Search OCR/audio text\npython cli.py serve # Launch web UI","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Does this direction work? Any preferences on the stack or which summaries to prioritize?","depth":22,"role_description":"text"},{"role":"AXButton","text":"Message actions","depth":23,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"seesm ok","depth":24,"role_description":"text"},{"role":"AXButton","text":"Thinking","depth":22,"role_description":"disclosure triangle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Thinking","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Check Python and available packages","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"python3 --version && pip3 list 2>/dev/null | grep -E \"fastapi|uvicorn|click|anthropic|httpx|jinja\"","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Python 3.11.2\n[rerun: b1]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Verify join works for today's data","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"sqlite3 /volume1/screenpipe/db.sqlite \"\nSELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len\nFROM frames f JOIN ocr_text o ON f.id = o.frame_id\nWHERE DATE(f.timestamp) = '2026-04-11'\nORDER BY f.timestamp DESC LIMIT 3;\n\"","depth":25,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"2026-04-11T12:54:42.597794+00:00|||2111\n2026-04-11T12:54:41.915916+00:00|||2110\n2026-04-11T12:54:39.912712+00:00|||2111\n[rerun: b2]","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Install required packages","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"pip3 install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -5","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"/bin/bash: line 1: pip3: command not found\n[rerun: b3]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Find pip","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"which pip || which pip3 || python3 -m pip --version 2>/dev/null","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"OUT","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Exit code 1\n[rerun: b4]","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bash","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"Bootstrap pip then install packages","depth":23,"role_description":"text"},{"role":"AXStaticText","text":"IN","depth":24,"role_description":"text"},{"role":"AXStaticText","text":"python3 -m ensurepip --upgrade 2>&1 && python3 -m pip install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -10","depth":24,"role_description":"text"},{"role":"AXButton","text":"Copy code to clipboard","depth":23,"help_text":"Copy code","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-662634412454582797
|
-8717864774268745706
|
visual_change
|
accessibility
|
NULL
|
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Explorer (⇧⌘E) - 1 unsaved file
1
Search (⇧⌘F)
Source Control (⌃⇧G)
Run and Debug (⇧⌘D)
Remote Explorer
Extensions (⇧⌘X) - 2 require update, 1 requires restart
3
Claude Code
Containers
EXPLORER
EXPLORER
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
Explorer Section: screenpipe [SSH: [IP_ADDRESS]]
SCREENPIPE [SSH: [IP_ADDRESS]]
#recycle
app
consumers
__init__.py
activity.py
audio.py
elements.py
interactions.py
ocr.py
report.py
summary.py
static
.env
cli.py
db.py
docker-compose.yml
Dockerfile
main.py
requirements.txt
data
pipes
db.sqlite
Outline Section
OUTLINE
OUTLINE
Timeline Section
TIMELINE
TIMELINE
pipe.md, Editor Group 1
#!/bin/bash • Untitled-1, Editor Group 1
report.py, preview, Editor Group 1
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
"""Structured work report — no LLM needed."""
from datetime import date, datetime, timezone, timedelta
from typing import Any
from urllib.parse import urlparse
from db import get_conn, date_range, today as _today
BREAK_THRESHOLD_MIN = 10 # gap > 10 min = break
WORK_APPS = {
"code": {"iTerm2", "Terminal", "Code", "Visual Studio Code", "PyCharm", "Xcode", "Cursor"},
"browser": {"Firefox", "Safari", "Chrome", "Arc", "Dia"},
"comms": {"Slack", "Teams", "Discord", "Zoom", "Telegram", "WhatsApp"},
"docs": {"Word", "Pages", "Notion", "Obsidian", "Bear", "Typora"},
"ai": {"Claude", "ChatGPT"},
"design": {"Figma", "Sketch", "Photoshop", "Illustrator"},
"media": {"QuickTime Player", "VLC", "Spotify"},
"system": {"Finder", "Activity Monitor", "System Preferences", "System Settings",
"Raycast", "Control Centre", "UserNotificationCenter", "NetAuthAgent"},
}
def _categorize(app_name: str) -> str:
for cat, apps in WORK_APPS.items():
if app_name in apps:
return cat
return "other"
def _extract_domain(url: str) -> str:
try:
h = urlparse(url).netloc
return h.removeprefix("www.") if h else url[:40]
except Exception:
return url[:40]
def _parse_ts(ts: str) -> datetime:
ts = ts.replace("+00:00", "+00:00") # already UTC
try:
return datetime.fromisoformat(ts)
except ValueError:
return datetime.fromisoformat(ts[:26] + "+00:00")
def session_breakdown(for_date: date | None = None, break_min: int = BREAK_THRESHOLD_MIN) -> dict[str, Any]:
"""
Detect work sessions and breaks from frame timestamps.
Returns sessions, breaks, and totals.
"""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"SELECT timestamp FROM frames WHERE timestamp >= ? AND timestamp < ? ORDER BY timestamp",
(start, end),
).fetchall()
if not rows:
return {"sessions": [], "breaks": [], "total_active_min": 0, "total_break_min": 0, "date": str(d)}
timestamps = [_parse_ts(r["timestamp"]) for r in rows]
threshold = timedelta(minutes=break_min)
sessions: list[dict] = []
breaks: list[dict] = []
sess_start = timestamps[0]
prev = timestamps[0]
for ts in timestamps[1:]:
gap = ts - prev
if gap > threshold:
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
breaks.append({
"start": prev.isoformat(),
"end": ts.isoformat(),
"duration_min": round(gap.total_seconds() / 60, 1),
})
sess_start = ts
prev = ts
dur = (prev - sess_start).total_seconds() / 60
sessions.append({
"start": sess_start.isoformat(),
"end": prev.isoformat(),
"duration_min": round(dur, 1),
})
total_active = sum(s["duration_min"] for s in sessions)
total_break = sum(b["duration_min"] for b in breaks)
total_span = (timestamps[-1] - timestamps[0]).total_seconds() / 60
return {
"date": str(d),
"day_start": timestamps[0].isoformat(),
"day_end": timestamps[-1].isoformat(),
"total_span_min": round(total_span, 1),
"total_active_min": round(total_active, 1),
"total_break_min": round(total_break, 1),
"sessions": sessions,
"breaks": breaks,
}
def domain_breakdown(for_date: date | None = None) -> list[dict[str, Any]]:
"""Browser time grouped by domain."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
rows = conn.execute(
"""
SELECT browser_url, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ?
AND browser_url IS NOT NULL AND browser_url != ''
GROUP BY browser_url
ORDER BY frames DESC
""",
(start, end),
).fetchall()
# Group by domain
domains: dict[str, dict] = {}
for r in rows:
domain = _extract_domain(r["browser_url"])
if domain not in domains:
domains[domain] = {"domain": domain, "minutes": 0, "urls": []}
domains[domain]["minutes"] = round(domains[domain]["minutes"] + r["minutes"], 1)
domains[domain]["urls"].append({"url": r["browser_url"], "minutes": r["minutes"]})
return sorted(domains.values(), key=lambda x: x["minutes"], reverse=True)
def slack_activity(for_date: date | None = None) -> dict[str, Any]:
"""Slack-specific: time, channels, message activity."""
d = for_date or _today()
start, end = date_range(d)
with get_conn() as conn:
# Time in Slack
time_row = conn.execute(
"""
SELECT COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
# Channels from window names
channels = conn.execute(
"""
SELECT window_name, COUNT(*) as frames, ROUND(COUNT(*)*2.0/60,1) as minutes
FROM frames
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
AND window_name IS NOT NULL AND window_name != ''
GROUP BY window_name ORDER BY frames DESC LIMIT 20
""",
(start, end),
).fetchall()
# Keystrokes in Slack (proxy for messages sent)
events = conn.execute(
"""
SELECT
SUM(CASE WHEN event_type='key' THEN 1 ELSE 0 END) as keystrokes,
SUM(CASE WHEN event_type='click' THEN 1 ELSE 0 END) as clicks
FROM ui_events
WHERE timestamp >= ? AND timestamp < ? AND app_name = 'Slack'
""",
(start, end),
).fetchone()
return {
"minutes": time_row["minutes"] if time_row else 0,
"frames": time_row["frames"] if time_row else 0,
"keystrokes": events["keystrokes"] if events else 0,
"clicks": events["clicks"] if events else 0,
"channels": [dict(r) for r in channels],
}
def work_report(for_date: date | None = None) -> dict[str, Any]:
"""Full structured work report — no AI needed."""
from consumers.activity import app_time, ui_event_summary
d = for_date or _today()
apps = app_time(d)
# Annotate with category
categorized: dict[str, list] = {}
for a in apps:
cat = _categorize(a["app_name"])
categorized.setdefault(cat, []).append(a)
return {
"date": str(d),
"sessions": session_breakdown(d),
"apps_by_category": categorized,
"domains": domain_breakdown(d),
"slack": slack_activity(d),
"ui_events": ui_event_summary(d),
}
Build screenpipe data UI…, Editor Group 2
Problems (⇧⌘M)
PROBLEMS
Output (⇧⌘U)
OUTPUT
Debug Console (⇧⌘Y)
DEBUG CONSOLE
Terminal (⌃`)
TERMINAL
Ports
PORTS
remote SSH: [IP_ADDRESS]
SSH: [IP_ADDRESS]
No Problems
0
0
No Ports Forwarded
0
Update is ready, click to restart.
Update is ready, click to restart.
Notifications
Sign In
Sign In
Screen Reader Optimized
Diff editor
Command Succeeded
Build screenpipe data UI and summary app
Session history
New session
Message actions
lets build app around screenpipe data and db. THe idea is to have ui and data consumers. So I can run regular commands at the end ot the day (or on demand) and create soem summary.
Thinking
Thinking
Let me explore the screenpipe directory to understand what we're working with.
Bash
List screenpipe directory contents
IN
ls /volume1/screenpipe/
Copy code to clipboard
OUT
data
db.sqlite
pipes
#recycle
[rerun: b1]
Bash
List data and pipes directories
IN
ls /volume1/screenpipe/data/ | head -20 && ls /volume1/screenpipe/pipes/
Copy code to clipboard
OUT
2026-04-09
2026-04-11
ai-habits
day-recap
meeting-summary
standup-update
time-breakdown
video-export
[rerun: b2]
Bash
List tables in screenpipe SQLite database
IN
sqlite3 /volume1/screenpipe/db.sqlite ".tables"
Copy code to clipboard
OUT
_sqlx_migrations meetings
audio_chunks memories
audio_tags memories_fts
audio_transcriptions memories_fts_config
audio_transcriptions_fts memories_fts_data
audio_transcriptions_fts_config memories_fts_docsize
audio_transcriptions_fts_data memories_fts_idx
audio_transcriptions_fts_docsize ocr_text
audio_transcriptions_fts_idx pipe_executions
elements pipe_scheduler_state
elements_fts speaker_embeddings
elements_fts_config speakers
elements_fts_data tags
elements_fts_docsize ui_events
elements_fts_idx ui_events_fts
frames ui_events_fts_config
frames_fts ui_events_fts_data
frames_fts_config ui_events_fts_docsize
frames_fts_content ui_events_fts_idx
frames_fts_data video_chunks
frames_fts_docsize vision_tags
frames_fts_idx
[rerun: b3]
Bash
Get ocr_text table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(ocr_text);"
Copy code to clipboard
OUT
0|frame_id|INTEGER|1||0
1|text|TEXT|1||0
2|text_json|TEXT|0||0
3|app_name|TEXT|1|''|0
4|ocr_engine|TEXT|1|'unknown'|0
5|window_name|TEXT|0||0
6|focused|BOOLEAN|0|FALSE|0
7|text_length|INTEGER|0||0
8|sync_id|TEXT|0||0
9|synced_at|DATETIME|0||0
[rerun: b4]
Bash
Get audio_transcriptions table schema
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(audio_transcriptions);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|audio_chunk_id|INTEGER|1||0
2|offset_index|INTEGER|1||0
3|timestamp|TIMESTAMP|1||0
4|transcription|TEXT|1||0
5|device|TEXT|1|''|0
6|is_input_device|BOOLEAN|1|TRUE|0
7|speaker_id|INTEGER|0||0
8|transcription_engine|TEXT|1|'Whisper'|0
9|start_time|REAL|0||0
10|end_time|REAL|0||0
11|text_length|INTEGER|0||0
12|sync_id|TEXT|0||0
13|synced_at|DATETIME|0||0
[rerun: b5]
Bash
Get frames, ui_events, video_chunks schemas
IN
sqlite3 /volume1/screenpipe/db.sqlite "PRAGMA table_info(frames); PRAGMA table_info(ui_events); PRAGMA table_info(video_chunks);"
Copy code to clipboard
OUT
0|id|INTEGER|0||1
1|video_chunk_id|INTEGER|0|NULL|0
2|offset_index|INTEGER|1|0|0
3|timestamp|TIMESTAMP|1||0
4|name|TEXT|0||0
5|app_name|TEXT|0|NULL|0
6|window_name|TEXT|0|NULL|0
7|focused|BOOLEAN|0|NULL|0
8|browser_url|TEXT|0|NULL|0
9|device_name|TEXT|1|''|0
10|sync_id|TEXT|0||0
11|machine_id|TEXT|0||0
12|synced_at|DATETIME|0||0
13|snapshot_path|TEXT|0|NULL|0
14|accessibility_text|TEXT|0|NULL|0
15|accessibility_tree_json|TEXT|0|NULL|0
16|content_hash|INTEGER|0|NULL|0
17|simhash|INTEGER|0|NULL|0
18|capture_trigger|TEXT|0|NULL|0
19|text_source|TEXT|0|NULL|0
20|cloud_blob_id|TEXT|0|NULL|0
21|full_text|TEXT|0|NULL|0
22|elements_ref_frame_id|INTEGER|0|NULL|0
0|id|INTEGER|0||1
1|timestamp|DATETIME|1|CURRENT_TIMESTAMP|0
2|session_id|TEXT|0||0
3|relative_ms|INTEGER|1|0|0
4|event_type|TEXT|1||0
5|x|INTEGER|0||0
6|y|INTEGER|0||0
7|delta_x|INTEGER|0||0
8|delta_y|INTEGER|0||0
9|button|INTEGER|0||0
10|click_count|INTEGER|0||0
11|key_code|INTEGER|0||0
12|modifiers|INTEGER|0||0
13|text_content|TEXT|0||0
14|text_length|INTEGER|0||0
15|app_name|TEXT|0||0
16|app_pid|INTEGER|0||0
17|window_title|TEXT|0||0
18|browser_url|TEXT|0||0
19|element_role|TEXT|0||0
20|element_name|TEXT|0||0
21|element_value|TEXT|0||0
22|element_description|TEXT|0||0
23|element_automation_id|TEXT|0||0
24|element_bounds|TEXT|0||0
25|frame_id|INTEGER|0||0
26|sync_id|TEXT|0||0
27|machine_id|TEXT|0||0
28|synced_at|DATETIME|0||0
0|id|INTEGER|0||1
1|file_path|TEXT|1||0
2|device_name|TEXT|1|''|0
3|sync_id|TEXT|0||0
4|machine_id|TEXT|0||0
5|synced_at|DATETIME|0||0
6|fps|REAL|1|0.5|0
7|cloud_blob_id|TEXT|0|NULL|0
[rerun: b6]
Bash
Check data counts and date ranges
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM frames;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*), MIN(timestamp), MAX(timestamp) FROM audio_transcriptions;" 2>/dev/null
sqlite3 /volume1/screenpipe/db.sqlite "SELECT COUNT(*) FROM ocr_text;" 2>/dev/null
Copy code to clipboard
OUT
1135|2026-04-09T16:53:09.043761+00:00|2026-04-11T12:54:42.597794+00:00
3|2026-04-09T16:53:20+00:00|2026-04-09T17:02:52+00:00
666
[rerun: b7]
Bash
Explore existing pipes for patterns
IN
ls /volume1/screenpipe/pipes/day-recap/ 2>/dev/null && cat /volume1/screenpipe/pipes/day-recap/*.js 2>/dev/null | head -50
Copy code to clipboard
OUT
pipe.md
[rerun: b8]
Bash
Read day-recap pipe documentation
IN
cat /volume1/screenpipe/pipes/day-recap/pipe.md
Copy code to clipboard
OUT
---
schedule: manual
enabled: true
template: true
title: Day Recap
description: "Today's accomplishments, key moments, and unfinished work"
icon: "📋"
featured: true
---
Analyze my screen and audio recordings from today (last 16 hours only).
Read screenpipe skill first.
Use this exact format:
## Summary
One sentence: what I mainly did today.
## Accomplishments
- Top 3 things I finished, with timestamps (e.g. "2:30 PM")
- Name specific apps, files, or projects
## Key Moments
- Important things I saw, said, or heard — with timestamps
## Unfinished Work
- What I should continue tomorrow — name the app/file/task
## Patterns
- Apps I used most, topics that came up repeatedly
Only report what you can verify from the data. End with: "**Next step:** [most important thing to continue]"
[rerun: b9]
Bash
Sample app names from frames
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT DISTINCT app_name FROM frames WHERE app_name != '' LIMIT 20;"
Copy code to clipboard
OUT
Safari
Activity Monitor
Dia
iTerm2
Control Centre
UserNotificationCenter
Finder
Claude
Slack
Firefox
Raycast
NetAuthAgent
QuickTime Player
[rerun: b10]
Bash
Sample joined frame+ocr data for today
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT f.timestamp, o.app_name, o.window_name, substr(o.text, 1, 100) as text FROM frames f JOIN ocr_text o ON f.id = o.frame_id WHERE DATE(f.timestamp) = '2026-04-11' LIMIT 5;"
Copy code to clipboard
OUT
2026-04-11T11:53:00.627698+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <47H5Sat 11 Apr 14:53:00-zshDOCKE
2026-04-11T11:53:02.005967+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA-zsh100% <7H5Sat 11 Apr 14:53:01-zshDOCKER
2026-04-11T11:53:03.627468+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:03-zshDOCKERuse p
2026-04-11T11:53:05.528794+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <47Sat 11 Apr 14:53:05-zshDOCKERuse p
2026-04-11T11:53:07.662098+00:00|||iTerm2ShellEditViewSessionScriptsProfilesWindowHelp$0(ahlA100% <7Sat 11 Apr 14:53:07-zshDOCKERuse pi
[rerun: b11]
Bash
Sample recent audio transcriptions
IN
sqlite3 /volume1/screenpipe/db.sqlite "SELECT timestamp, substr(transcription,1,100) as text, device FROM audio_transcriptions ORDER BY timestamp DESC LIMIT 5;"
Copy code to clipboard
OUT
2026-04-09T17:02:52+00:00|.|System Audio
2026-04-09T16:59:22+00:00|Class is technically...|System Audio
2026-04-09T16:53:20+00:00|I do for you. Run the credit check. Deal apartment. Okay.|System Audio
[rerun: b12]
Thinking
Thinking
Good data to work with. Here's what we have:
frames
+
ocr_text
: Screen captures with OCR text, app name, window name (1135 frames so far)
audio_transcriptions
: Voice/system audio transcripts
ui_events
: Mouse/keyboard events with app context
video_chunks
: Raw video files
Before I start building, a few quick questions:
Tech stack
— Python OK? (FastAPI for the web UI backend, Click for CLI commands, HTMX for the frontend to keep it simple)
AI summaries
— Do you have a Claude API key to use for generating the actual summaries? Or should I integrate with a local model / skip AI for now?
What summaries matter most?
Day recap (what apps/windows you used, key text seen)
App time breakdown (time per app)
Audio/conversation recap
Custom searchable timeline
Here's the architecture I'm thinking:
Copy code to clipboard
/volume1/screenpipe/app/
├── main.py # FastAPI web UI
├── cli.py # Click CLI: `python cli.py day-recap`
├── db.py # Read-only queries against db.sqlite
├── consumers/
│ ├── activity.py # App usage, time per window
│ ├── ocr.py # OCR text aggregation + search
│ ├── audio.py # Transcription queries
│ └── summary.py # AI summary builder
└── static/
└── index.html # Single-page UI
CLI commands would look like:
Copy code to clipboard
python cli.py day-recap # EOD summary
python cli.py activity --date today # App time breakdown
python cli.py search "docker" # Search OCR/audio text
python cli.py serve # Launch web UI
Does this direction work? Any preferences on the stack or which summaries to prioritize?
Message actions
seesm ok
Thinking
Thinking
Bash
Check Python and available packages
IN
python3 --version && pip3 list 2>/dev/null | grep -E "fastapi|uvicorn|click|anthropic|httpx|jinja"
Copy code to clipboard
OUT
Python 3.11.2
[rerun: b1]
Bash
Verify join works for today's data
IN
sqlite3 /volume1/screenpipe/db.sqlite "
SELECT f.timestamp, o.app_name, o.window_name, length(o.text) as txt_len
FROM frames f JOIN ocr_text o ON f.id = o.frame_id
WHERE DATE(f.timestamp) = '2026-04-11'
ORDER BY f.timestamp DESC LIMIT 3;
"
Copy code to clipboard
OUT
2026-04-11T12:54:42.597794+00:00|||2111
2026-04-11T12:54:41.915916+00:00|||2110
2026-04-11T12:54:39.912712+00:00|||2111
[rerun: b2]
Bash
Install required packages
IN
pip3 install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -5
Copy code to clipboard
OUT
/bin/bash: line 1: pip3: command not found
[rerun: b3]
Bash
Find pip
IN
which pip || which pip3 || python3 -m pip --version 2>/dev/null
Copy code to clipboard
OUT
Exit code 1
[rerun: b4]
Bash
Bootstrap pip then install packages
IN
python3 -m ensurepip --upgrade 2>&1 && python3 -m pip install fastapi uvicorn click anthropic python-dotenv 2>&1 | tail -10
Copy code to clipboard...
|
NULL
|
|
1578
|
34
|
49
|
2026-04-11T17:41:07.481729+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929267481_m1.jpg...
|
Firefox
|
Settings — Personal
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
Close tab
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Customize sidebar
Customize sidebar
Close
Sidebar settings
Vertical tabs
Vertical tabs
Expand sidebar on hover
Expand sidebar on hover
Hide tabs and sidebar
Hide tabs and sidebar
Move sidebar to the right
Move sidebar to the right
Firefox tools
AI chatbot
AI chatbot
Tabs from other devices
Tabs from other devices
History
History
Bookmarks
Bookmarks
Passwords
Passwords
Sidebar extensions
Sidebar extensions
Bitwarden
Bitwarden
Manage Extensions
Manage Extensions
Manage Firefox settings
Manage Firefox settings
General
Home
Search
Privacy & Security
Sync
AI Controls
Firefox Labs
More from Mozilla
Extensions & Themes
Extensions & Themes
Firefox Support
Firefox Support
Your browser is being managed by your organization.
Your browser is being managed by your organization.
Find in Settings
General
General
Default browser
Default browser
Psst, Firefox isn’t your default.
Make default
Make default...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Customize sidebar","depth":6,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Customize sidebar","depth":7,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sidebar settings","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Vertical tabs","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vertical tabs","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Expand sidebar on hover","depth":14,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Expand sidebar on hover","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Hide tabs and sidebar","depth":14,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Hide tabs and sidebar","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Move sidebar to the right","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Move sidebar to the right","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox tools","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"AI chatbot","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"AI chatbot","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Tabs from other devices","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Tabs from other devices","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"History","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"History","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Bookmarks","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bookmarks","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Passwords","depth":13,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Passwords","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Sidebar extensions","depth":6,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Sidebar extensions","depth":7,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Bitwarden","depth":11,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Manage Extensions","depth":7,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Manage Extensions","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Manage Firefox settings","depth":7,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Manage Firefox settings","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"General","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Home","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Search","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Privacy & Security","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Sync","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI Controls","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox Labs","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More from Mozilla","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Extensions & Themes","depth":7,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions & Themes","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Firefox Support","depth":7,"bounds":{"left":0.19861111,"top":0.0,"width":0.17083333,"height":0.04222222},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Firefox Support","depth":9,"bounds":{"left":0.22916667,"top":0.0,"width":0.06736111,"height":0.018888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Your browser is being managed by your organization.","depth":7,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Your browser is being managed by your organization.","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Find in Settings","depth":9,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"General","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"General","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Default browser","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Default browser","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Psst, Firefox isn’t your default.","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Make default","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Make default","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
8582807571644243026
|
3890586094280788638
|
app_switch
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
Close tab
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Customize sidebar
Customize sidebar
Close
Sidebar settings
Vertical tabs
Vertical tabs
Expand sidebar on hover
Expand sidebar on hover
Hide tabs and sidebar
Hide tabs and sidebar
Move sidebar to the right
Move sidebar to the right
Firefox tools
AI chatbot
AI chatbot
Tabs from other devices
Tabs from other devices
History
History
Bookmarks
Bookmarks
Passwords
Passwords
Sidebar extensions
Sidebar extensions
Bitwarden
Bitwarden
Manage Extensions
Manage Extensions
Manage Firefox settings
Manage Firefox settings
General
Home
Search
Privacy & Security
Sync
AI Controls
Firefox Labs
More from Mozilla
Extensions & Themes
Extensions & Themes
Firefox Support
Firefox Support
Your browser is being managed by your organization.
Your browser is being managed by your organization.
Find in Settings
General
General
Default browser
Default browser
Psst, Firefox isn’t your default.
Make default
Make default...
|
NULL
|
|
1579
|
34
|
50
|
2026-04-11T17:41:07.958035+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929267958_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:41:07-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
-1934000567440555753
|
NULL
|
visual_change
|
ocr
|
NULL
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:41:07-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
1578
|
|
1580
|
34
|
51
|
2026-04-11T17:41:24.866426+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929284866_m1.jpg...
|
Code
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShelllEditViewSessionScriptsProfilesWindowHe iTerm2ShelllEditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:41:24-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
782738495924341858
|
NULL
|
app_switch
|
ocr
|
NULL
|
iTerm2ShelllEditViewSessionScriptsProfilesWindowHe iTerm2ShelllEditViewSessionScriptsProfilesWindowHelpall100% CSat 11 Apr 20:41:24-zsh181DOCKER• 8812026-04-11T20:26:10.383131Z2026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)O 82APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh86-zshO 87-zshINFOscreenpipe_engine::retention:retention: initialized with 14d retentionINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head-20• *8du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B 11 Apr 14:52drwxr-xr-xlukasstaff160B 11 Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B 11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFO2026-04-11T20:34:58.704027Zscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.5494672INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)2026-04-11T20:37:58.4086082INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)...
|
NULL
|
|
1581
|
34
|
52
|
2026-04-11T17:41:53.712775+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929313712_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
TOTAL SPAN
1.0h
14:52 → 15:54
ACTIVE
1.0h
BREAKS
0 breaks · 0.0h
SESSIONS
1
62m
FRAMES
612
APPS
6
UI EVENTS
1344
AUDIO
0
ACTIVE PERIOD
14:52 → 15:54
TIME PER APP
— CLICK TO FILTER RIGHT PANEL
iTerm2
5.2m
Firefox
1.5m
Finder
0.6m
QuickTime Player
0.5m
NetAuthAgent
0.1m
Raycast
0.1m
Websites
Windows
UI Events
nas.lakylak.xyz/desktop/#/
0.7m
play.hbomax.com/video/watch/6b742798-e5fa-4f90-8beb-74c328dc5028/65d19c63-e85e-4392-8594-f0f2e0a1dc2d
0.1m
nas.lakylak.xyz/desktop/#/login/account
0.1m
login.tailscale.com/login?next_url=%2Fadmin
0.1m
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamatat-na-misii-artemis-ii/
0.1m
http://localhost:3030
0m
addons.mozilla.org/en-US/firefox/addon/vimium-ff/?utm_source=addons.mozilla.org&utm_medium=referral&utm_content=search
0m
accounts.google.com/v3/signin/accountchooser?access_type=offline&client_id=674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com&prompt=select_account&redirect_uri=https%3A%2F%2Flogin.tailscale.com%2Fa%2Foauth_response&response_type=code&scope=openid+email+profile&state=tc-ftYwP8oB0urJfQZeh42KPfA&dsh=S1949714251%3A1775911302074699&o2v=2&service=lso&flowName=GeneralOAuthFlow&opparams=%253F&continue=https%3A%2F%2Faccounts.google.com%2Fsignin%2Foauth%2Fconsent%3Fauthuser%3Dunknown%26part%3DAJi8hAOOoeMJ9h1ZWE-Aau2rWQdjwJ-4Enpv6Ci-0hiDSq5jW9TsVTl1btOELm96_EZaQdgfRwBdj1zZGB_CYauRC0fkTqY_cZ35H_NcJOU2_4Ax0Gtto-fKf-nDgh4daUIBqdTh68bjSxOce25-KnK0XYdHV8mzb69bNhDZHVDj_gb42yLS6CaLOtRfvBqDUDqR3SzLMQPfBkXHhJz6IM_7wq52TLTL563ihzeGQBECsxCnD1Yk27REW5r_eZ0TNXkkAX7P1hB8gAkBKuZVXHltsgP7jvfc8R1fsuXURwjdV8kBOMOg3Reld6-0t5nB9qwgvuYCJsuo0Q7IMz9o-t41651a_Wsc0FnlTxFC_0DA-eKXtSlPZHRy9BW_O_UgliMh8Y9cnLpKZ4r9A_LwCm6flXHR1tZWe_NA_YGhQ9EYSdByTuW1hMcIXXh1Alssc0Sb9BtxZ5mPnlLjTXaWd8LEtCrsHv1HQQ%26flowName%3DGeneralOAuthFlow%26as%3DS1949714251%253A1775911302074699%26client_id%3D674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com%26requestPath%3D%252Fsignin%252Foauth%252Fconsent%23&app_domain=https%3A%2F%2Flogin.tailscale.com
0m...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"TOTAL SPAN","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.0h","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 → 15:54","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"ACTIVE","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.0h","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"BREAKS","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0 breaks · 0.0h","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"SESSIONS","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"62m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"FRAMES","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"612","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"APPS","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"6","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UI EVENTS","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1344","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AUDIO","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"ACTIVE PERIOD","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 → 15:54","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"TIME PER APP","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— CLICK TO FILTER RIGHT PANEL","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"iTerm2","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5.2m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.5m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Finder","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.6m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"QuickTime Player","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.5m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"NetAuthAgent","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Raycast","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Websites","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Windows","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"UI Events","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nas.lakylak.xyz/desktop/#/","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.7m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"play.hbomax.com/video/watch/6b742798-e5fa-4f90-8beb-74c328dc5028/65d19c63-e85e-4392-8594-f0f2e0a1dc2d","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"nas.lakylak.xyz/desktop/#/login/account","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"login.tailscale.com/login?next_url=%2Fadmin","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamatat-na-misii-artemis-ii/","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.1m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"http://localhost:3030","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"addons.mozilla.org/en-US/firefox/addon/vimium-ff/?utm_source=addons.mozilla.org&utm_medium=referral&utm_content=search","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"accounts.google.com/v3/signin/accountchooser?access_type=offline&client_id=674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com&prompt=select_account&redirect_uri=https%3A%2F%2Flogin.tailscale.com%2Fa%2Foauth_response&response_type=code&scope=openid+email+profile&state=tc-ftYwP8oB0urJfQZeh42KPfA&dsh=S1949714251%3A1775911302074699&o2v=2&service=lso&flowName=GeneralOAuthFlow&opparams=%253F&continue=https%3A%2F%2Faccounts.google.com%2Fsignin%2Foauth%2Fconsent%3Fauthuser%3Dunknown%26part%3DAJi8hAOOoeMJ9h1ZWE-Aau2rWQdjwJ-4Enpv6Ci-0hiDSq5jW9TsVTl1btOELm96_EZaQdgfRwBdj1zZGB_CYauRC0fkTqY_cZ35H_NcJOU2_4Ax0Gtto-fKf-nDgh4daUIBqdTh68bjSxOce25-KnK0XYdHV8mzb69bNhDZHVDj_gb42yLS6CaLOtRfvBqDUDqR3SzLMQPfBkXHhJz6IM_7wq52TLTL563ihzeGQBECsxCnD1Yk27REW5r_eZ0TNXkkAX7P1hB8gAkBKuZVXHltsgP7jvfc8R1fsuXURwjdV8kBOMOg3Reld6-0t5nB9qwgvuYCJsuo0Q7IMz9o-t41651a_Wsc0FnlTxFC_0DA-eKXtSlPZHRy9BW_O_UgliMh8Y9cnLpKZ4r9A_LwCm6flXHR1tZWe_NA_YGhQ9EYSdByTuW1hMcIXXh1Alssc0Sb9BtxZ5mPnlLjTXaWd8LEtCrsHv1HQQ%26flowName%3DGeneralOAuthFlow%26as%3DS1949714251%253A1775911302074699%26client_id%3D674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com%26requestPath%3D%252Fsignin%252Foauth%252Fconsent%23&app_domain=https%3A%2F%2Flogin.tailscale.com","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0m","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3091908115894725819
|
-5356150684892378036
|
app_switch
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
TOTAL SPAN
1.0h
14:52 → 15:54
ACTIVE
1.0h
BREAKS
0 breaks · 0.0h
SESSIONS
1
62m
FRAMES
612
APPS
6
UI EVENTS
1344
AUDIO
0
ACTIVE PERIOD
14:52 → 15:54
TIME PER APP
— CLICK TO FILTER RIGHT PANEL
iTerm2
5.2m
Firefox
1.5m
Finder
0.6m
QuickTime Player
0.5m
NetAuthAgent
0.1m
Raycast
0.1m
Websites
Windows
UI Events
nas.lakylak.xyz/desktop/#/
0.7m
play.hbomax.com/video/watch/6b742798-e5fa-4f90-8beb-74c328dc5028/65d19c63-e85e-4392-8594-f0f2e0a1dc2d
0.1m
nas.lakylak.xyz/desktop/#/login/account
0.1m
login.tailscale.com/login?next_url=%2Fadmin
0.1m
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamatat-na-misii-artemis-ii/
0.1m
http://localhost:3030
0m
addons.mozilla.org/en-US/firefox/addon/vimium-ff/?utm_source=addons.mozilla.org&utm_medium=referral&utm_content=search
0m
accounts.google.com/v3/signin/accountchooser?access_type=offline&client_id=674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com&prompt=select_account&redirect_uri=https%3A%2F%2Flogin.tailscale.com%2Fa%2Foauth_response&response_type=code&scope=openid+email+profile&state=tc-ftYwP8oB0urJfQZeh42KPfA&dsh=S1949714251%3A1775911302074699&o2v=2&service=lso&flowName=GeneralOAuthFlow&opparams=%253F&continue=https%3A%2F%2Faccounts.google.com%2Fsignin%2Foauth%2Fconsent%3Fauthuser%3Dunknown%26part%3DAJi8hAOOoeMJ9h1ZWE-Aau2rWQdjwJ-4Enpv6Ci-0hiDSq5jW9TsVTl1btOELm96_EZaQdgfRwBdj1zZGB_CYauRC0fkTqY_cZ35H_NcJOU2_4Ax0Gtto-fKf-nDgh4daUIBqdTh68bjSxOce25-KnK0XYdHV8mzb69bNhDZHVDj_gb42yLS6CaLOtRfvBqDUDqR3SzLMQPfBkXHhJz6IM_7wq52TLTL563ihzeGQBECsxCnD1Yk27REW5r_eZ0TNXkkAX7P1hB8gAkBKuZVXHltsgP7jvfc8R1fsuXURwjdV8kBOMOg3Reld6-0t5nB9qwgvuYCJsuo0Q7IMz9o-t41651a_Wsc0FnlTxFC_0DA-eKXtSlPZHRy9BW_O_UgliMh8Y9cnLpKZ4r9A_LwCm6flXHR1tZWe_NA_YGhQ9EYSdByTuW1hMcIXXh1Alssc0Sb9BtxZ5mPnlLjTXaWd8LEtCrsHv1HQQ%26flowName%3DGeneralOAuthFlow%26as%3DS1949714251%253A1775911302074699%26client_id%3D674241127656-lmq9su4p8ni1tcpuh6eqidoornqtvmvi.apps.googleusercontent.com%26requestPath%3D%252Fsignin%252Foauth%252Fconsent%23&app_domain=https%3A%2F%2Flogin.tailscale.com
0m...
|
NULL
|
|
1582
|
34
|
53
|
2026-04-11T17:41:56.327446+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929316327_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Search…
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
Enter a query and press Enter.
FTS tip: single words work best · "exact phrase" · OR between terms...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Search…","depth":8,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Source","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"App","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"any","depth":8,"help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"From","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Enter a query and press Enter.","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"FTS tip: single words work best · \"exact phrase\" · OR between terms","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-5357516925589902745
|
-5338695937532457378
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Search…
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
Enter a query and press Enter.
FTS tip: single words work best · "exact phrase" · OR between terms...
|
1581
|
|
1583
|
34
|
54
|
2026-04-11T17:41:57.572108+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929317572_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:41:57-zsh181DOCKER• 8812026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• *4-zsh• 85-zsh886-zsh0 87-zshINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20• *8|du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B11Apr 14:52drwxr-xr-x5lukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~S du-sh ~/.screenpipe/*4.0K99M/Users/lukas/.screenpipe/config.json/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.379684ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.6707222INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFO2026-04-11T20:37:44.461189Zscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 Chash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)2026-04-11T20:41:40.3598832INFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)...
|
NULL
|
-7710191276955867316
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:41:57-zsh181DOCKER• 8812026-04-11T20:26:10.383762Z2026-04-11T20:26:38.337011Z2026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• *4-zsh• 85-zsh886-zsh0 87-zshINFOscreenpipe:localretention auto-enabled (14 days)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20• *8|du-sh~/.screenpipe/data/data/*total24drwxr-xr-x5lukasstaff160B11Apr 14:52drwxr-xr-x5lukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0K9 Apr20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~S du-sh ~/.screenpipe/*4.0K99M/Users/lukas/.screenpipe/config.json/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.379684ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:36:40.376312ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.6707222INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFO2026-04-11T20:37:44.461189Zscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 Chash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)2026-04-11T20:41:40.3598832INFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)...
|
NULL
|
|
1584
|
34
|
55
|
2026-04-11T17:42:13.180990+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929333180_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"DennikN","depth":8,"value":"DennikN","help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Source","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"App","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"any","depth":8,"help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"From","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:54 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3056445541898805660
|
-5338062575361913250
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
1583
|
|
1585
|
34
|
56
|
2026-04-11T17:42:13.619592+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929333619_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:42:13-zsh181DOCKER• 8812026-04-11T20:26:38.33701122026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.40869122026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.38061022026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• хз-zsh• x4|-zsh• 85-zsh886-zshO 87INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capturefor monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5lukasstaff160B11 Apr 14:52drwxr-xr-xlukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0KApr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO2026-04-11T20:37:58.408608ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)2026-04-11T20:41:40.359883ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames...
|
NULL
|
4662614756189030925
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:42:13-zsh181DOCKER• 8812026-04-11T20:26:38.33701122026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.40869122026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.38061022026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• хз-zsh• x4|-zsh• 85-zsh886-zshO 87INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capturefor monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5lukasstaff160B11 Apr 14:52drwxr-xr-xlukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0KApr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO2026-04-11T20:37:58.408608ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)2026-04-11T20:41:40.359883ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames...
|
NULL
|
|
1586
|
34
|
57
|
2026-04-11T17:42:14.324452+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929334324_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:42:13-zsh181DOCKER• 8812026-04-11T20:26:38.33701122026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.40869122026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.38061022026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• хз-zsh• x4|-zsh• 85-zsh886-zsh0 87INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capturefor monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5lukasstaff160B11 Apr 14:52drwxr-xr-xlukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0KApr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO2026-04-11T20:37:58.408608ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)2026-04-11T20:41:40.359883ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames...
|
NULL
|
4658956818280875139
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpall100% <47Sat 11 Apr 20:42:13-zsh181DOCKER• 8812026-04-11T20:26:38.33701122026-04-11T20:26:55.992688Z2026-04-11T20:26:57.331771Z2026-04-11T20:27:05.40869122026-04-11T20:27:09.664908Z2026-04-11T20:31:05.374969Z2026-04-11T20:31:40.38061022026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• хз-zsh• x4|-zsh• 85-zsh886-zsh0 87INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capturefor monitor 1 (hash=-9215443531147982391, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB 3.3MB (2.8x), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5lukasstaff160B11 Apr 14:52drwxr-xr-xlukasstaff160B11Apr 15:03-rw-r--r--@lukasstaff8.0KApr 20:43.DS_Storedrwxr-xr-x14lukasstaff448B11 Apr 14:532026-04-09drwxr-xr-x98lukasstaff3.1K 11Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960M/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M/Users/lukas/.screenpipe/db.sqlite32K/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.loglukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:56.3796842INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.704027ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB 1.2MB (4.5x), 24 JPEGs deleted2026-04-11T20:37:44.461189ZINFO2026-04-11T20:37:58.408608ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433, trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380, trigger=click)2026-04-11T20:41:40.359883ZINFO screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames...
|
1585
|
|
1587
|
NULL
|
0
|
2026-04-11T17:42:16.134952+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929336134_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"DennikN","depth":8,"value":"DennikN","help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Source","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"App","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"any","depth":8,"help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"From","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:54 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3056445541898805660
|
-5338062575361913250
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
NULL
|
|
1588
|
35
|
0
|
2026-04-11T17:42:17.563090+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929337563_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% CSat 11 Apr 20:42:17-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
7002803678175646852
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% CSat 11 Apr 20:42:17-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
1587
|
|
1589
|
35
|
1
|
2026-04-11T17:42:22.869338+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929342869_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"DennikN","depth":8,"value":"DennikN","help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Source","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"App","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"any","depth":8,"help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"From","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:54 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3056445541898805660
|
-5338062575361913250
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
NULL
|
|
1590
|
35
|
2
|
2026-04-11T17:42:23.645608+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929343645_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% CSat 11 Apr 20:42:23-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
9215900862159602769
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% CSat 11 Apr 20:42:23-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
1589
|
|
1591
|
35
|
3
|
2026-04-11T17:42:24.522202+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929344522_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <47Sat 11 Apr 20:42:24-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
-8909264663739724184
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% <47Sat 11 Apr 20:42:24-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
|
1592
|
35
|
4
|
2026-04-11T17:42:25.749123+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929345749_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"DennikN","depth":8,"value":"DennikN","help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Source","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"App","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"any","depth":8,"help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"From","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"To","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"--","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:54 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52 ·","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"UGREEN NAS Inbox (1) -","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EMAIL","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
3056445541898805660
|
-5338062575361913250
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
DennikN
Search
Source
App
any
Date
11
/
04
/
2026
Calendar
From
--
:
--
To
--
:
--
Searches full_text, app_name, window_name, browser_url in frames (1,135 rows)
14:54 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings...
14:52 ·
Firefox
/ Loď Orion úspešne pristála na Zemi. Desať vecí, kt
dennikn.sk/5263377/lod-orion-uspesne-pristala-na-zemi-desat-veci-ktore-si-pamata
UGREEN NAS Inbox (1) -
EMAIL
- Gmail How to Get Through the Product Management Bottleneck How to Get Through the Product Management Bottleneck Shameless • HBO Max Shameless • HBO Max Settings Settings......
|
1591
|
|
1593
|
35
|
5
|
2026-04-11T17:42:26.344707+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929346344_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% CSat 11 Apr 20:42:25-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
-7457550737268932187
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahl100% CSat 11 Apr 20:42:25-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
|
1594
|
35
|
6
|
2026-04-11T17:42:27.810115+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929347810_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
AUDIO TRANSCRIPTIONS
No audio for this date....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"AUDIO TRANSCRIPTIONS","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"No audio for this date.","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-5624204200654863363
|
-5335883386922824106
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
AUDIO TRANSCRIPTIONS
No audio for this date....
|
1593
|
|
1595
|
35
|
7
|
2026-04-11T17:42:29.896399+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929349896_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate Report
No AI needed — pure data
Click Generate Report to build a structured work summary for the selected date....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Generate Report","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"No AI needed — pure data","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Click Generate Report to build a structured work summary for the selected date.","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-7122515222436027688
|
3888615649216171614
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate Report
No AI needed — pure data
Click Generate Report to build a structured work summary for the selected date....
|
NULL
|
|
1596
|
35
|
8
|
2026-04-11T17:42:40.356021+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929360356_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate Report
No AI needed — pure data
📅 SESSION — 2026-04-11
📅 SESSION — 2026-04-11
14:52
START
15:54
END
1.0h
TOTAL SPAN
1.0h
ACTIVE
0.0h
BREAKS (0)
🖥️ APP TIME BY CATEGORY
🖥️ APP TIME BY CATEGORY
💻 code
5.2m total
iTerm2
5.2m
🌐 browser
1.5m total
Firefox
1.5m
🎬 media...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Generate Report","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"No AI needed — pure data","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"📅 SESSION — 2026-04-11","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"📅 SESSION — 2026-04-11","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"14:52","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"START","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"15:54","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"END","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.0h","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"TOTAL SPAN","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.0h","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"ACTIVE","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0.0h","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"BREAKS (0)","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"🖥️ APP TIME BY CATEGORY","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"🖥️ APP TIME BY CATEGORY","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"💻 code","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5.2m total","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"iTerm2","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"5.2m","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"🌐 browser","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.5m total","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Firefox","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1.5m","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"🎬 media","depth":9,"subrole":"AXUnknown"}]...
|
8832597274193248725
|
-5337292926604669884
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate Report
No AI needed — pure data
📅 SESSION — 2026-04-11
📅 SESSION — 2026-04-11
14:52
START
15:54
END
1.0h
TOTAL SPAN
1.0h
ACTIVE
0.0h
BREAKS (0)
🖥️ APP TIME BY CATEGORY
🖥️ APP TIME BY CATEGORY
💻 code
5.2m total
iTerm2
5.2m
🌐 browser
1.5m total
Firefox
1.5m
🎬 media...
|
1595
|
|
1597
|
35
|
9
|
2026-04-11T17:42:42.547180+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929362547_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate
Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env
Select a summary type and click Generate....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Generate","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Select a summary type and click Generate.","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
4478918766039565278
|
-5332787162179006892
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate
Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env
Select a summary type and click Generate....
|
NULL
|
|
1598
|
35
|
10
|
2026-04-11T17:42:43.765001+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929363765_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% <47Sat 11 Apr 20:42:43-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
1005967475204829886
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% <47Sat 11 Apr 20:42:43-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
1597
|
|
1599
|
35
|
11
|
2026-04-11T17:42:44.927096+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929364927_m1.jpg...
|
Firefox
|
Screenpipe Dashboard — Personal
|
True
|
http://100.73.206.126:8766
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate
Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env
Error: Error code: 401 - {'type': 'error', 'error': {'type': 'authentication_error', 'message': 'invalid x-api-key'}, 'request_id': 'req_011CZxPyxrBXxUcgcsdX39Vu'}...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"DXP4800PLUS-B5F8","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox - kovaliklukas@gmail.com - Gmail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Shameless • HBO Max","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Shameless • HBO Max","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Settings","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"firefox sidebar - Google Search","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"firefox sidebar - Google Search","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"How to use AI-enhanced tab groups | Firefox Help","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"How to use AI-enhanced tab groups | Firefox Help","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Add-ons Manager","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons Manager","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Irán – Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Irán – Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Vimium Options","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Vimium Options","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Machines - Tailscale","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Machines - Tailscale","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Screenpipe Dashboard","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Screenpipe Dashboard","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Browser Extension Getting Started | Bitwarden","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Browser Extension Getting Started | Bitwarden","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Extensions – Add-ons for Firefox (en-US)","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Extensions – Add-ons for Firefox (en-US)","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Bitwarden","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Screenpipe","depth":7,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Screenpipe","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Activity","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Search","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Audio","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Work Report","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"AI Summary","depth":7,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Date","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"04","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2026","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Calendar","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Generate","depth":8,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env","depth":9,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Error: Error code: 401 - {'type': 'error', 'error': {'type': 'authentication_error', 'message': 'invalid x-api-key'}, 'request_id': 'req_011CZxPyxrBXxUcgcsdX39Vu'}","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-6522442641000217596
|
-5340670660013273506
|
click
|
accessibility
|
NULL
|
DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameles DXP4800PLUS-B5F8
Inbox - [EMAIL] - Gmail
Shameless • HBO Max
Shameless • HBO Max
Settings
Settings
firefox sidebar - Google Search
firefox sidebar - Google Search
How to use AI-enhanced tab groups | Firefox Help
How to use AI-enhanced tab groups | Firefox Help
Add-ons Manager
Add-ons Manager
Vimium – Get this Extension for 🦊 Firefox (en-US)
Vimium – Get this Extension for 🦊 Firefox (en-US)
Irán – Denník N
Irán – Denník N
Vimium Options
Vimium Options
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Loď Orion úspešne pristála na Zemi. Desať vecí, ktoré si pamätať o misii Artemis II — Denník N
Machines - Tailscale
Machines - Tailscale
Screenpipe Dashboard
Screenpipe Dashboard
Close tab
Add-ons for Firefox (en-US)
Add-ons for Firefox (en-US)
New Tab
New Tab
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Bitwarden Password Manager – Get this Extension for 🦊 Firefox (en-US)
Browser Extension Getting Started | Bitwarden
Browser Extension Getting Started | Bitwarden
Extensions – Add-ons for Firefox (en-US)
Extensions – Add-ons for Firefox (en-US)
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Open history (⇧⌘H)
Open bookmarks (⌘B)
Bitwarden
Screenpipe
Screenpipe
Activity
Search
Audio
Work Report
AI Summary
Date
11
/
04
/
2026
Calendar
Generate
Requires ANTHROPIC_API_KEY in .env — edit /volume1/screenpipe/app/.env
Error: Error code: 401 - {'type': 'error', 'error': {'type': 'authentication_error', 'message': 'invalid x-api-key'}, 'request_id': 'req_011CZxPyxrBXxUcgcsdX39Vu'}...
|
NULL
|
|
1600
|
35
|
12
|
2026-04-11T17:42:46.152956+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-11/1775 /Users/lukas/.screenpipe/data/data/2026-04-11/1775929366152_m1.jpg...
|
NULL
|
NULL
|
True
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% <47Sat 11 Apr 20:42:45-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
NULL
|
2340230908276801097
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelp(ahlA100% <47Sat 11 Apr 20:42:45-zsh181DOCKER• 8812026-04-11T20:26:55.99268822026-04-11T20:26:57.331771Z2026-04-11T20:27:05.408691Z2026-04-11T20:27:09.66490822026-04-11T20:31:05.374969Z2026-04-11T20:31:40.380610Z2026-04-11T20:32:09.668412ZDEV (-zsh)О ₴2APP (-zsh)• *3-zsh• x4|-zsh• 85-zsh886-zshO 87INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5606118560581161138,trigger=click)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1(hash=5606118560581161138, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFO screenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 9.4MB → 3.3MB (2.8X), 61 JPEGs deletedINFOscreenpipe_engine::server: api_usage_5min: 1 requestsINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:31:40.380594+00:00 (14d retention)INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 1 eligible framesls -lah ~/.screenpipe/data/data/ | head -20-zsh• *8du-sh~/.screenpipe/data/data/*total 24drwxr-xr-x5 lukasstaff160B 11 Apr 14:52drwxr-xr-x5lukasstaff160B-rw-r--r--@lukasstaff11Apr 15:038.0K9Apr 20:43.DS_Storedrwxr-xr-x14 lukasstaff448B 11Apr 14:532026-04-09drwxr-xr-x98 lukasstaff3.1K 11 Apr 20:322026-04-1139M/Users/lukas/.screenpipe/data/data/2026-04-0960М/Users/lukas/.screenpipe/data/data/2026-04-11lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe234M/Users/lukas/.screenpipelukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $du -sh ~/.screenpipe/234M/Users/lukas/.screenpipe/lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ S du-sh ~/.screenpipe/*4.0K/Users/lukas/.screenpipe/config.json99M/Users/lukas/.screenpipe/data126M32K/Users/lukas/.screenpipe/db.sqlite/Users/lukas/.screenpipe/db.sqlite-shm8.0M/Users/lukas/.screenpipe/db.sqlite-wal24K/Users/lukas/.screenpipe/pipes132K/Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log132K/Users/lukas/.screenpipe/screenpipe.2026-04-11.0.10glukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-04-11T20:34:53.551967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888,trigger=click)2026-04-11T20:34:56.379684ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:34:58.7040272INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9017845113719419888, trigger=click)2026-04-11T20:36:40.376312ZINFOscreenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:36:40.376264+00:00 (14d retention)2026-04-11T20:36:53.215520ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538,trigger=click)2026-04-11T20:37:03.549467ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1247300013418283538, trigger=click)2026-04-11T20:37:09.670722ZINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 24 eligible frames2026-04-11T20:37:11.207501ZINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.3MB → 1.2MB (4.5x), 24 JPEGSdeleted2026-04-11T20:37:44.461189ZINFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-259750597993296433,trigger=click)2026-04-11T20:37:58.408608ZINFO2026-04-11T20:41:40.359883ZINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4847561377089731380,trigger=click)screenpipe_engine::retention: retention: cleaning up data before 2026-03-28T17:41:40.359820+00:00 (14d retention)2026-04-11T20:42:11.201085ZINFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames2026-04-11T20:42:14.0920742INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 11.5MB → 1.3MB (8.9X), 47 JPEGs deleted...
|
1599
|